mybatis最佳实践

栏目: Java · 发布时间: 7年前

内容简介:原则:1. sql和代码分离,sql易于维护和 检查评审。2. 高度的自动化和封装,减少开发工作量。

原则:

1. sql和代码分离,sql易于维护和 检查评审。

2. 高度的自动化和封装,减少开发工作量。

从原则上讲:

  • 要避免像hibernate那样过度封装,形成很多新的语法(HSQL),

  • 也不能像jdbc那样,SQL和代码混写,不方便检查和审核。

  • Mybatis的Example用法,其实不过是 sql 拼接的语法糖,和sql与代码混写没多少区别,故不推荐使用,

  • 同样,类似于hibernate那样的对象操作方式,其实也是sql拼接的语法糖,不建议使用。

我们建议的是,直接写sql,但是确保sql与代码分离,这样比较纯粹,就是直接通过sql去取数据,借助Mybatis完成数据的自动封装和自动生成基础代码罢了。

另外,进一步增强mybatis的 代码生成和自动封装 功能:( 通用Mapper 是一个榜样)

目前标准mapper有11个方法,除掉前面所说的Example,是否够用,是否还能再添加一些常用的接口?这是一个改进方向。另外,标准的mapper都是独立的,没有一个统一的父类,不方便在某些动态注入mapper的场景下使用,这一点局限性很大,是一个改进方向。

还有,加入通用分页方法,PageHelper这种方法很好用,让sql只专注于业务,分页交给框架去处理。

另外,id自动生成,insert和update部分数据没设置值时自动填充(比如 updateTime createTime)。

补充:列是否为null的原则

如果列不会用于查询,那么默认为null没关系,

反之,如果列有可能会用于查询,那么最好是not null 大不了为了方面在设一个默认值。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。

HTML5与CSS3基础教程(第7版)

HTML5与CSS3基础教程(第7版)

[美] Elizabeth Castro、[美] Bruce Hyslop / 望以文 / 人民邮电出版社 / 2013-1 / 59.00元

代表下一代网页编写技术的HTML5,为网页提供布局和格式的CSS3,这两者构成了Web开发的基石,也是Web程序员和设计师必须熟练掌握的最基本技能。 本书是风靡全球的HTML和CSS最佳入门教程的最新版,上一版单单英文版的销量就超过100万册,被翻译为十多种语言,并长期雄踞亚马逊书店计算机图书排行榜榜首。 最新的第7版秉承前一版直观、透彻、全面、循序渐进的讲授特色,仍然采用独特的双栏图......一起来看看 《HTML5与CSS3基础教程(第7版)》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试