专用于 Java Spring Boot 后端开发的专业技能。当用户提出以下需求时,应调用此技能:构建 REST API、创建 Spring Boot 项目、编写 Java 后端服务、配置数据库访问(JPA / MyBatis)、处理认证与授权(Spring Security / JWT)、实现微服务架构(Spring Cloud)、排查 Spring Boot 相关错误、审查 Java 代码质量,或执行任何与 Spring Boot / Java 后端相关的任务。
Java Spring Boot 后端开发是一项面向实际任务的技能,主要用于A 用于构建生产级 Java Spring Boot 后端服务的专业技能;Trigger 条件;
使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
一项专注于构建生产级 Java Spring Boot 后端服务的专业技能。
当用户意图涉及以下场景时,启用该技能:
spring-boot-starter-parent 作为父 POM| 场景 | Starter |
|---|---|
| Web / REST API | spring-boot-starter-web |
| 数据库(JPA) | spring-boot-starter-data-jpa |
| 数据库(MyBatis) | mybatis-spring-boot-starter |
| 校验 | spring-boot-starter-validation |
| 安全 | spring-boot-starter-security |
| Redis | spring-boot-starter-data-redis |
| RabbitMQ / Kafka | spring-boot-starter-amqp / spring-kafka |
| 定时任务 | spring-boot-starter-quartz |
| 监控端点(Actuator) | spring-boot-starter-actuator |
| 测试 | spring-boot-starter-test |
| Lombok | lombok(scope: provided) |
| MapStruct | mapstruct(scope: provided) |
| Swagger / OpenAPI | springdoc-openapi-starter-webmvc-ui |
@Query采用清晰关注点分离的分层架构:
src/main/java/com/example/project/ ├── controller/ # REST 端点,请求/响应 DTO ├── service/ # 业务逻辑接口 │ └── impl/ # Service 实现类 ├── mapper/ # 数据访问层(MyBatis)或 repository/(JPA) ├── entity/ # 数据库实体类 ├── dto/ # 数据传输对象 │ ├── request/ # 入参 DTO │ └── response/ # 出参 DTO ├── config/ # 配置类 ├── common/ # 公共工具、常量、枚举 │ ├── exception/ # 自定义异常及全局异常处理器 │ ├── result/ # 统一 API 响应包装器 │ └── util/ # 工具类 └── Application.java
@Service 注入。XxxControllerXxxServiceXxxServiceImplXxxMapperXxx(单数名词,对应数据库表名,使用 snake_case)XxxRequest、XxxResponse、XxxDTO@Valid 进行校验{ "code": 200, "message": "success", "data": { ... } }
@RestControllerAdvice + @ExceptionHandler 实现全局异常处理Pageable 或自定义分页 DTORuntimeException 的自定义业务异常@Slf4j 使用 SLF4Jserver:
port: 8080
spring:
profiles:
active: dev
datasource:
url: jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
username: ${DB_USERNAME}
password: ${DB_PASSWORD}
driver-class-name: com.mysql.cj.jdbc.Driver
hikari:
maximum-pool-size: 20
minimum-idle: 5
jpa:
hibernate:
ddl-auto: validate
show-sql: false
open-in-view: false
mybatis-plus:
mapper-locations: classpath*:mapper/**/*.xml
configuration:
map-underscore-to-camel-case: true
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
logging:
level:
com.example.project: info
application-dev.yml — 本地开发环境(使用 H2 或本地 MySQL)application-test.yml — 测试环境application-prod.yml — 生产环境(外部化配置,禁止硬编码密钥)@WebMvcTest 或 MockMvc@DataJpaTest 搭配 H2 内存数据库methodName_stateUnderTest_expectedBehavior(例如:createUser_withValidInput_returnsCreatedUser)@Lazy 或重构依赖关系@Transactional 注解作用于 public 方法@EntityGraph 或 JOIN FETCH;MyBatis 中使用 标签spring.jpa.open-in-view,并主动预加载所需关联数据serverTimezone=Asia/Shanghai;优先使用 Instant/LocalDateTime,避免使用 Date详细参考资料存放于 references/ 目录下:
references/spring-boot-common-patterns.md — 常见编码模式与实践方案references/troubleshooting.md — 高频报错及其解决方案在当前任务涉及调试或实现特定模式时,请加载对应参考文件。
相关专题
热门下载
相关下载
精品课程
共0课时 | 0人学习
共0课时 | 0人学习
共0课时 | 0人学习