第2章 文件结构与配置
作者:ThinkGem
更新日期:2014-4-8
1. 文件结构
1.1. 源码目录
src/main/java
| com.thinkgem.jeesite | Jeesite平台目录 | 
| ├ common | 公共模块存放目录 | 
| │ ├ beanvalidator | 实体Bean验证相关类 | 
| │ ├ log | 日志工具相关类 | 
| │ ├ mapper | 各种Object到Xml、Object到Json的映射转换类 | 
| │ ├ persistence | 持久层相关类 | 
| │ ├ security | 安全相关类 | 
| │ ├ service | 业务层相关类 | 
| │ ├ servlet | 公共servlet相关类 | 
| │ ├ utils | 各种操作小工具类 | 
| │ └ web | 模型控制器层相关类 | 
| └ modules | JeeSite内置功能模块存放目录 | 
| ├ act | Activiti工作流引擎目录 | 
| ├ cms | 内容管理、新闻发布模块目录 | 
| ├ gen | Web版本代码生成器目录 | 
| ├ oa | 在线办公模块演示用例存放目录 | 
| └ sys | 系统核心模块存放目录 | 
| ├ dao | 数据访问层相关类 | 
| ├ entity | 实体相关类 | 
| ├ interceptor | 系统模块拦截器相关类 | 
| ├ service | 业务处相关类 | 
| ├ web | 模型控制器层相关类 | 
| └ utils | 系统模块的工具类 | 
1.2. 资源目录
src/main/resource
| act | Activiti工作流引擎相关文件(部署文件、bpmn) | 
| cache | Ehcache缓存配置存放目录 | 
| mappings | Mybatis Sql映射文件存放目录 | 
| jeesite.properties | 系统配置属性文件 | 
| spring-*.xml | Spring相关文件 | 
| log4j.properties | Log4j日志配置属性文件 | 
1.3. 发布目录
src/main/webapp
| static | 静态文件存放目录(JS、CSS、前端插件类库等) | 
| └ compressor.bat | JavaScrpt和CSS文件压缩脚本 | 
| userfiles | 用户上传文件目录 | 
| WEB-INF | WEB应用安全目录,通过映射访问相关文件。 | 
| ├ lib | 依赖jar包目录 | 
| ├ tags | Tags标签存放目录 | 
| ├ views | 视图文件目录 | 
| │ ├ reportlets | 帆软报表文件存放路径 | 
| │ ├ resources | 帆软报表配置文件存放目录 | 
| │ ├ error | 系统异常映射相关页面 | 
| │ ├ include | 视图相关包含文件 | 
| │ ├ layouts | 视图布局相关文件 | 
| │ └ modules | 内置核心功能模块视图相关文件 | 
| │ ├ act | Activiti模块视图相关文件 | 
| │ ├ cms | 内容管理模块视图相关文件 | 
| │ ├ gen | 代码生成模块视图相关文件 | 
| │ ├ oa | 在线办公模块视图相关文件 | 
| │ └ sys | 系统管理模块视图相关文件 | 
| ├ ckfinder.xml | CKfinder配置文件 | 
| ├ decorators.xml | Decorator配置文件 | 
| └ web.xml | Web配置文件 | 
1.4. 执行目录
db
| db | 数据库相关脚本、模型及执行文件 | 
| ├ act | 各模块数据初始化, Oracle建表脚本,数据初始数据脚本文件。 | 
| ├ cms | |
| ├ gen | |
| ├ oa | |
| ├ sys | |
| └ init-db.bat | 初始化数据库执行脚本(需要Maven支持) | 
bin
| clean.bat | 清理项目生成的文件脚本 | 
| eclipase.bat | 生成eclipse项目执行脚本 | 
| package.bat | 生成编译项目文件(war包) | 
| run-jetty.bat | Jetty服务器运行脚本 | 
| run-tomcat6.bat | Tomcat6服务器运行脚本 | 
| run-tomcat7.bat | Tomcat7服务器运行脚本 | 
2. jeesite.properties
2.1. 数据源配置
# 数据库驱动,连接设置。
jdbc.driver=oracle.jdbc.driver.OracleDriver
jdbc.url=jdbc:oracle:thin:@127.0.0.1:1521:orcl
jdbc.username=jeesite
jdbc.password=123456
# 连接池设置,初始大小,最小,最大连接数。
jdbc.pool.init=1
jdbc.pool.minIdle=3
jdbc.pool.maxActive=20
# 测试连接sql语句
jdbc.testSql=SELECT ‘x’ FROM DUAL
2.2. 系统配置
# 配置产品名称,版权日期和版本号
productName=JeeSite Admin
copyrightYear=2014
version=V1.1.1
# 是否是演示模式,如果是,则如下模块,无法进行保存操作
# sys: area/office/user/role/menu/dict, cms: site/category
demoMode=false
# 管理端跟路径
adminPath=/a
# 前端跟路径
frontPath=/f
# 信息发布时的URL后缀,可配置HTML后缀的页面进行缓存
urlSuffix=.html
# 分页大小,默认每页15条
page.pageSize=15
# 硕正组件是否使用Cache(一般开发阶段,关闭Cache)
supcan.useCache=false
# 设置通知间隔访问时间,单位毫秒.
oa.notify.remind.interval=60000
2.3. 框架参数配置
# 设置SESSION超时时间,web.xml里设置无效,单位毫秒.
session.sessionTimeout=120000
session.sessionTimeoutClean=120000
# 缓存设置
ehcache.configFile=cache/ehcache-local.xml
#ehcache.configFile=cache/ehcache-rmi.xml
# 首页地址
web.view.index=/a
# 视图文件配置,前缀和后缀
web.view.prefix=/WEB-INF/views/
web.view.suffix=.jsp
# 最大上传字节数 10M=10*1024*1024(B)=10485760
web.maxUploadSize=10485760
# 设置日志拦截器,拦击的URI,@RequestMapping 值
web.logInterceptExcludeUri=/, /login, /sys/menu/tree, /sys/menu/treeData, /oa/oaNotify/self/count
web.logInterceptIncludeRequestMapping=save, delete, import, updateSort
# 工作流配置
activiti.isSynActivitiIndetity=false
activiti.export.diagram.path=c:/activiti_diagram
#activiti font (windows font: \u5B8B\u4F53 linux font: simsun)
activiti.diagram.activityFontName=\u5B8B\u4F53
activiti.diagram.labelFontName=\u5B8B\u4F53
activiti.form.server.url=http://127.0.0.1:8075/xxxx
3. pom.xml
3.1. 修改项目名称
artifactId:项目名称 version:版本
修改完成后运行eclipse.bat重新生成项目文件。
3.2. 添加jar依赖包
可通过公司maven私服查询相应jar依赖包。
私服地址:http://192.168.11.36:8888/nexus/
如果公司私服上没有相应的依赖jar
- 可联系王震添加依赖jar,
 - 将jar文件拷贝项目WEB-INF下的lib目录,并配置pom,例如:
 
<dependency>
<groupId>com.test</groupId>
<artifactId>test-core</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>
${project.basedir}/src/main/webapp/WEB-INF/lib/test-core-1.0.jar
</systemPath>
</dependency>
3.3. 删除init-db插件
项目初始化完成后,一定要删除或重命名pom里面的init-db插件,防止项目进行中误操作运行了init-db.bat文件,数据库被清空。
4. 数据库设计
模型文件:/ jeesite/db/test/jeesite.erm
业务数据表必须包含以下公共字段:
5. 重要规范
- 类注释:必须包含类功能描述,作者,时间
 - 方法注释:除非常容易理解的方法如get、form、save、delete等方法外的方法必须加注释来说明用途,传递参数。
 - 按照以上命名结构进行文件分配存放。
 - 视图文件名要加模块或功能前缀,例如jsp,代表:工作流任务待办列表,不要写成list.jsp或todoList.jsp或taskTodoList.jsp。
 - Sql与定义分离:不在万不得已的情况下不要写在java文件里,分离