Mybatis的mapper文件引起模块划分的思考

 

起因:

项目中将公用的代码抽离到单独一个项目 cms-common.jar (注:公用的代码不只是工具类代码,包含service和dao等)

 

构建:

每次构建项目 cms.war 的时候,需要引入cms-common.jar,还需要Maven拷贝cms-common下的Mapper.xml文件

 

疑惑点:

每次修改cms-common下mapper文件,都需要重新clean,删除old的mapper文件,给开发带来不便

 

思考:

从模块上区分,假如dao单独成为一个模块 cms-common-dao.jar

我们要引入dao模块,就需要引入cms-common-dao.jar 和 *Mapper.xml

从java上看,模块的最小单元为jar,xml 单独成模块 有点牵强,但从概念上说的过去。

 

拆分思考,本质上是把

cms-common-dao 模块 拆分为 cms-common-dao 和 cms-common-mapper 两个模块。

给开发带来的不便,是模块的过度拆分引起复杂度提升。

 

解决方案:

Mapper文件集成到jar中,修改Spring扫描xml文件的路径,即可

 

posted @ 2017-05-18 19:51  图生  阅读(1637)  评论(0编辑  收藏  举报