`
dinguangx
  • 浏览: 240437 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

[jshop]jshop目录结构说明

阅读更多

JShop简介:jshop是一套使用Java语言开发的B2C网店系统,致力于为个人和中小企业提供免费、好用的网店系统。

项目主页:http://git.oschina.net/dinguangx/jshop

在线演示:

原jeeshop目录结构:

所有java代码存放于src/main/java中

 

net.jeeshop.core
net.jeeshop.service.common  -> 存放PO,类似于hibernate中的实体类,基本是与数据库字段一对一关系

net.jeeshop.service.front -> 前端服务组件
net.jeeshop.service.front.[module] -> 前端服务模块,service接口直接存放在此 
net.jeeshop.service.front.[module].bean -> 数据交换类, 类似DTO,继承于PO
net.jeeshop.service.front.[module].dao -> dao接口
net.jeeshop.service.front.[module].dao.impl -> dao实现
net.jeeshop.service.front.[module].impl -> service实现

net.jeeshop.service.manage -> 后台服务组件
net.jeeshop.service.manage.[module] -> 后台服务模块,service接口直接存放在此 
net.jeeshop.service.manage.[module].bean -> 数据交换类 ,类似于DTO,继承于PO
net.jeeshop.service.manage.[module].dao -> dao接口
net.jeeshop.service.manage.[module].dao.impl -> dao实现
net.jeeshop.service.manage.[module].impl -> service实现

net.jeeshop.web.action.front.[module] -> 前端controller
net.jeeshop.web.action.manage.[module] -> 后台controller

 

 

所有mybatis映射文件存放于src/main/resources中

 

mapper/base -> 权限相关映射文件 
mapper/front -> 前端映射文件
mapper/manage -> 后台映射文件

 

 

 

jeeshop的代码结构组织上,除PO重用之外,将所有前端与后端的bean, dao, service,mapper全部独立开,好处是相互不影响,坏处是代码重用度太低,尤其是mapper,service, dao其实完全是可以重用的。但是使用jeeshop的这套代码结构,相当于需要同时维护两套代码。

 

jshop代码目录组织:

jshop引入mybatis generator代码生成器,可生成的代码文件包括mapper,client,model;这里的client即dao,使用的是mybatis的接口访问模式,不再对dao提供实现类。

生成的数据操作方法有:insert(), insertSelective(), selectByPrimaryKey(), selectByExample(), updateByPrimaryKey(), deleteByPrimaryKey().

 

所有生成的代码位于src/main/gen,此目录中的代码完全使用代码生成器生成,不做任何修改。

 

net.jeeshop.model -> 数据模型类,包括PO和Example
net.jeeshop.client -> client接口
mapper -> mybatis映射文件

 

 

具体业务代码目录结构src/main/java:

net.jeeshop.biz.[module].service -> service接口及实现类
net.jeeshop.biz.[module].bean -> 数据交换dto类, 可以继承生成的PO
net.jeeshop.biz.[module].client -> 扩展生成的client, 取名规范是在原生成的client接口名增加后缀Ext,继承于生成的client, 如ArticleCatalogMapperExt.java

net.jeeshop.web.action.front.[module] -> 前端controller
net.jeeshop.web.action.manage.[module] -> 后端controller

 

 

 

扩展的mybatis映射文件存放在src/main/resources中:

mapper/ext -> mybatis映射文件扩展,取名规范是在原生成的映射文件名增加后缀Ext, 如ArticleCatalogMapperExt.xml

 

 

即:controller目录组织结构不变,service/bean/client不再单独区分前后端

0
1
分享到:
评论
2 楼 kowen 2016-04-25  
顶你!!!!!!
1 楼 tjzx 2015-07-21  
没必要维护两套目录代码。支持合并

相关推荐

Global site tag (gtag.js) - Google Analytics