源码结构说明
Author: 江南白衣
本文档包含整个SpringSide项目的文件结构,同时也请留意每个目录下的ReadMe.txt文件。
1.项目目录结构
- /bin
可执行命令,双击即会调用ant脚本执行任务。
- /docs
文档
- /lib
全部依赖包。分目录存放,各子目录中的pom.xml定义了各自由maven管理的jar。其中core子目录存放的是核心依赖包,mavenout子目录存放不由maven管理的jar。
- /misc
杂项,详见后。
- /springside-bookstore
一个Full
Feature的书店sample,兼有有前台展示和后台管理,作为比较典型的企业应用的微缩版。包括db--使用的hsqldb的管理命令及数据库结构注释目录。resources,src,test,webapp,分别代表配置文件,java代码文件,测试代码和Web代码目录。详见后。
- /springside-core
SpringSide的核心封装代码与测试用例。
- /springside-templates
springside的代码模版,能快速复制粘贴出自己的CRUD管理后台。
包括springside-application
是基础模版,springside-plugins是features的模版,springside-generator是一个生成项目及CRUD代码的Eclipse
plugin。
- build.xml
主的ant脚本。
2.Java源码结构
源代码在/sprnigside-bookstore/src 及/springside-core/src
- /org.springside.bookstore
书店实例代码
- /org.springside.bookstore.admin
书店管理后台模块的代码
- /org.springside.bookstore.commons 书店的公共代码
- /org.springside.bookstore.plugins
书店的features演示部分
-
/org.springside.bookstore.store 书店展示前台模块的代码
-
/org.springside.bookstore.admin.domain 书店管理后台的的domain对象如Book类,以及通常和domain对象放在一起的文件如hibernate mapping,
aegis binding等
-
/org.springside.booksotre.admin.exception 书店管理后台单位的异常
- /org.springside.bookstore.admin.manager
书店管理后台的Manager逻辑类
-
/org.springside.bookstore.admin.service 书店管理后台的服务层,如webservice,email,jms 等等
- /org.springside.bookstore.admin.web 书店管理后台的Web层,包括Controller 及相关的filter,Listener
- /org.springside.core SpringSide核心代码
- /org.springside.core.commons
SpringSide中的共同基类
- /org.springside.core.test
SpringSide中各种测试的基类
- /org.springside.core.utils
SpringSide中各种Utils类
- /org.springside.core.web
SpringSide中Web层的扩展
-
/org.springside.plugins SpringSide对各Feature的封装代码
3. 配置与资源文件
配置文件在/sprnigside-bookstore/resources
目录,另有很多配置文件被下放到具体的模块之中,由resources下的配置文件进行总的include。
- /根目录 存放一些必须放在class path根目录,没有办法移动到子目录中去的配置文件
- /conf
properties及xml 配置文件
- /context SpringFramework的ApplicationContext文件
- /context/production 用于现场环境的spring配置,如现场的数据库连接配置
- /context/test 用于测试环境的spring配置,如测试环境的嵌入式数据库连接配置。
- /i18n
i18N资源文件
- /rules JBossRule的规则文件
- /org/springside/... 一些一定要和Domain Pojo
放在一起的配置文件
4.WebApp 目录结构
- admin
书店管理后台
- common 公共文件
- components web组件如富文本编辑器,日历和Tabs
- decorators
SiteMesh用的descorators
- images
图片目录
- plugin-demos
各种附加Feature的演示页面
- plugins
Eclipse BIRT的plugins目录
- scripts
JavaScript目录
- security
登陆及角色权限设定等安全模块
- store
书店前台
- styles
CSS文件目录
- template ww 及WEB-INF/webwork 目录 webwork freemarker
ftl文件
- uploadfiles 上传文件目录
5.杂项目录
/misc/repository
maven的本地jar仓库,all in
one 版本中此目录将存放了所有的依赖包
/misc/ides
各种IDE的项目文件模版
/misc/jdk14
使用retrotranslator将代码转为可在jdk1.4服务器上执行
/servers/tomcat5.5.17
all in one版本中自带的tomcat。