在java后台架构,数据库的访问,我们一般都会选择一种映射机制,主流的也就是Hibernate跟Mybatis(ibatis)。Hibernate比较方便的实现了映射关系(特别是Hibernate4采用注解的方式,显得更加简单),但是Hibernate不够灵活,当遇到复杂的SQL语句的时候Hibernate显得力不从心。Mybatis可以支撑任何的SQL语句。但是对于Mybatis我们看到大部分人还是在XML里面写大量的sql语句,包括基本的增删改成,过滤条件的处理,结果集的映射,这些都是些固定的重复的代码,导致XML文件难以维护,每次新增一个简单功能也要大张旗鼓的做很多工作。虽然mybatis官方提供自动生成实体类,映射XML文件的工具,但是生成的东西维护起来其实更加繁琐,除非我们所有的设计都基于这个工具。
基于这个目的对Mybatis做一层封装,让可以开发人员极其简单的实现基本的增删改成,过滤条件,但是不削弱Mybatis的任何功能,对于基本语句,结果集映射我们可以非常简单的实现(并且具有定制能力),对于复杂场景还可以用Mybatis原有的方式实现。
框架的理解
1.框架要简单,最简单的方式出来最简单的结果,一定要基于默认大于修改的原则。
所有的配置都有默认情况,尽可能找到最合理的配置,同时要提供开发配置修改的能力。