java

  1. 对于持久层的实体,使用包装类型,不使用基本类型,也不要设置默认值。
    答:有些ORM框架中使用实体去更新字段,会将默认值更新到数据库中。然而数据库中是有有效值的。
  2. 设计中类尽量采用单一职责原则,比如一个接口不应该用于多个功能,情愿多写一些接口,也不要共用。持久层也是一样的,更新就做单独的更操作,语义明确,简单明了。
  3. 尽量使用spring中自带的工具类,这样统一维护和升级比较方便。
  4. 代码中应该禁止使用魔数,使用枚举和常量池类来统一管理数字和字符串。

数据库

  1. 数据库中字段类型设计尽量使用满足的字段,不要使用过大的类型。
    答:大类型对于到实体代码中的类型可能有冲突,而且浪费mysql空间和性能,没有必要。
  2. 数据表中凡是设计到上下级的这种结构的,在表中务必加上表唯一单建的路径的字段 (例如:主键为id,加要给id_path字段,所有上级的id逗号隔开存进去) ,并为其建立索引。
    答:这样的好处是方便查询下级所有数据,用 id_path 右like 就可以进行查询。例如:
id parent_id name id_path
1 0 四川省 1
2 1 成都市 1,2
3 2 高新区 1,2,3
*** *** *** ***
46 23 顺庆区 1,23,46

这样查询成都市的数据就直接 where id_path like ‘1,2,%’,最后加上逗号是为了避免把顺庆区的查出来。有些场景还可以使用find_in_set。

后端开发规范(持续更新中...)相关推荐

  1. Android开发学习持续更新中

    Android开发 单个Activity界面内的操作 控件1TextView控件使用 控件2Button控件使用 1首先对于android的按键格式 2对按键监听事件进行绑定 控件3EditText文 ...

  2. Go语言开发学习笔记(持续更新中)

    Go语言开发学习笔记(持续更新中) 仅供自我学习 更好的文档请选择下方 https://studygolang.com/pkgdoc https://www.topgoer.com/go%E5%9F% ...

  3. 【Vue全家桶+SSR+Koa2全栈开发】项目搭建过程 整合 学习目录(持续更新中)

    写在开头 大家好,这里是lionLoveVue,基础知识决定了编程思维,学如逆水行舟,不进则退.金三银四,为了面试也还在慢慢积累知识,Github上面可以直接查看所有前端知识点梳理,github传送门 ...

  4. 【STM32-V6】STM32F429BIT6开发板开源, 丰富软件资源, 强劲硬件配置, 配套600多实例,21套手册持续更新中

    淘宝购买链接 从2016年1月份发布至今,软件资料更新过108次.当前标准库最新版本V2.8,HAL库最新版本V7.6 安富莱微信公共平台,欢迎大家关注(打造高质量公众号) HAL库版V7.6 STM ...

  5. 基于oAuth2.0开发属于自己的SSO授权服务 - 授权码(Authourization Code)模式 (持续更新中。。。)

    此文章篇幅较长,平日上班较少时间写作,请见谅.持续更新中... oAuth2.0系列文章目录 #mermaid-svg-AZMPq56OmFj1I7k0 {font-family:"treb ...

  6. 【STM32-V7】STM32H743XIH6开发板,丰富软件资源,强劲硬件配置,大量软件解决方案持续更新中(2020-07-22)

    [STM32-V7]STM32H743XIH6开发板,丰富软件资源,强劲硬件配置,大量软件解决方案持续更新中(2020-07-22) 参考文章: (1)[STM32-V7]STM32H743XIH6开 ...

  7. 火龙果(redpitaya)开发板常用接口C语言开发指南(九)——产生信号脉冲(持续更新中)

    火龙果(redpitaya)开发板常用接口C语言开发指南(九)--产生信号脉冲(持续更新中) --本人为<火龙果实战指南--搭建基于Zynq处理器的测量仪器与创新实践平台>一书的作者之一, ...

  8. Android开发人员不得不收集的代码(持续更新中)(http://www.jianshu.com/p/72494773aace,原链接)

    Android开发人员不得不收集的代码(持续更新中) Blankj 关注 2016.07.31 04:22* 字数 370 阅读 102644评论 479喜欢 3033赞赏 14 utilcode D ...

  9. VSTO开发入门教程[持续更新中......]

    Paragraph 01 VSTO课程学习路线图[持续更新中......] 第一阶段:熟悉 visual studio 编程环境 1.1--理解 VSTO 的概念 1.2--安装 visual stu ...

最新文章

  1. 【综述专栏】自动驾驶中可解释AI的综述和未来研究方向
  2. 用单链表实现栈及操作
  3. C++(二)——命名空间(上)
  4. 疫情退票引爆的潘多拉盒子,境外旅游商家濒临倒闭
  5. String类型的学习
  6. 用VIPER构建iOS应用
  7. RK3288_Android7.1调试以太网ethernet
  8. 《云周刊》69期:开门红利!阿里云2月活动来袭
  9. 信息系统项目管理重点:供应链管理(SCM)
  10. 汉字字符集编码查询 unicode编码查询
  11. 网络编程(含 UrlConnection 发送 HTTP 请求下载文件)
  12. 搞懂JDBC这一篇就够了!!!
  13. 怎么确定K均值聚类中的K(基于matlab)
  14. Gradle配置阿里云仓库
  15. pr不支持mov怎么办_Premiere不支持MOV怎么办?怎么快速解决?
  16. Android的数据存储之一------SharedPreferences
  17. 计组(day4) 汇编语言 第一次使用EMU8086 总结
  18. 简单的爬虫程序(详解)
  19. 无锡:严禁强制学生家长使用“校讯通”类服务
  20. 新书推荐——Windows Server 2019 网络服务器配置与管理

热门文章

  1. dms虚拟服务器,iOS UPNP之DMS具体操作,让手机成为DMS服务器
  2. 快速关闭SELinux
  3. python操作word详细操作_Python操作Word的入门教程
  4. 通过wireshark抓包对nmap一些原理分析
  5. 向日葵设置开机自启动
  6. 低功耗蓝牙芯片CH579系列开发记录
  7. Pr:导出设置之元数据
  8. 查看电脑已安装的cuda版本
  9. 9 客户端认证方式 之 PKCE
  10. 运用Python完成学生成绩判定