springboot使用建议
一、使用构造函数注入
spring依赖注入时,推荐使用构造函数注入,避免使用@Autowried,推荐在项目中使用lombok插件的 @RequiredArgsConstructor 注解来自动生成构造函数
1、构造函数代码示例
@Controller
public class UserController{
private final UserServiceImpl userService;
public UserController(UserServiceImpl userService){
this.userService = userService;
}
}
2、lombok插件代码示例
@Controller
@@RequiredArgsConstructor
public class UserController{
private final UserServiceImpl userService;
}
二、控制层不写业务层代码
建议Controller层只负责处理http请求、响应和参数校验,具体业务代码放到Service层编写
优点:便于代码复用和单元测试,针对service测试即可
三、Service异常
建议service层只返回业务结果,不返回Result,遇到问题时抛出异常
抛出异常后,可以通过 @ControllerAdvice @RestControllerAdvice注解实现全局异常管理
四、多环境配置
一个项目通常存在多个环境,例如:开发、测试、预发和生产环境等 不同环境的配置不尽相同,使用不同的环境配置有利于隔离环境差异
使用不同的命名区分环境
- applicatiion-dev.yml:开发环境
- application-test.yml:测试环境
- application-prod.yml:生产环境