【软件研发】编码规范和注意事项

原创
2019/10/12 09:54
阅读数 176

编码原则

  1. 不允许私自创建工具类,请使用hutool、

数据库定义规范

  1. 蛇形命名(S命名)【全小写】
  2. 数据表命名:前缀_模块名_实体名

注意事项

  1. 组件中不适合加入成员变量,自动注入的除外

    • 原因:所有的组件(controller,Service,Mapper,JPA等)他们默认都是单例的都是有Spring管理的,注:上下文产生的JavaBean不是单例。
    • 示例:
    	@Slf4j
    	@Api(description = "用户管理")
    	@RequestMapping("/system/userManager")
    	@Controller
    	public class UserController extends BaseController<UserDO, UserService> {
    	@Autowired
    	private RoleService roleService;
    	//不要这么写
    	private Result result;
    
    • 分析:由于controller是单例模式,所以其成员变量是非线程安全的,可能会发生脏读写。
  2. 组件禁止同级别注入

    • 原因:会导致在超类做泛型注入的时候引发循环引用(此结论适用于单实例Bean系统)
    • 分析:基于Springboot管理的Bean是默认单例注入的(如上面的问题一般)
  3. 业务逻辑尽量写在Service中

    • 原因:构造轻耦合系统,由service管理业务逻辑整合Dao层操作
    • 分析:控制器只负责页面流转和数据传递
  4. 组合或派生功能没有对应后端某个具体的实体的解决办法

    • 原因:有些功能可能涉及到了多个数据表的数据,或者是由其他数据表的数据派生而来,此种情况下适合自建Controller、Service、Dao处理
    • 分析:一切为了低耦合,松散的编码抗压能力强debug速度快
展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部