SSH编码规范文档格式.docx
《SSH编码规范文档格式.docx》由会员分享,可在线阅读,更多相关《SSH编码规范文档格式.docx(9页珍藏版)》请在冰豆网上搜索。
在test包下包括如下子包
2.1、action包
该包放置各种struts的action,此包的命名规范是必须以Action结尾,例如我们要写个登陆的Action那么这个类得名称是LoginAction。
com.portal.test.action.LoginAction
2.2、service包
该包放置业务操作类,譬如用户管理类,一般情况将该用户操作类提取一个接口,此接口以Service来结尾,并放入到service包下面,然后在service包下新建一个impl包,在impl包中才放置用户操作接口的实现类,实现类以ServiceImpl来结尾。
该接口实现类中调用DAO接口对数据库进行操作,而调用该实现类的方法在struts的action中通过此类的父接口调用。
下面以test下面所有与用户相关的操作来定义一个业务类。
接口:
IUserService;
实现类:
UserServiceImpl。
并且接口全部以大写字母“I”开头
com.portal.test.service.IUserService
com.portal.test.service.impl.UserServiceImpl
2.3、vo包(value
object)
vo包个人理解是在struts中使用的非POJO对象,而这些对象往往要通过一些复杂的查询操作才能查询出来,如HQL的多表级联查询,或者在Hibernate中调用JDBC查询出来的一些数据,都可以封装到vo对象里面。
在jsp页面中展现。
vo对象主要应用与表现层,主要含有Setter,Getter属性和其他辅助方法,例如hashCode和equals等方法。
com.portal.test.vo
2.4、dao包
Dao层有1个父类是AbstractBaseDao,一个接口是IBaseDao,这两个类之间的方法是一一对应的。
在dao包下面所有的接口都要继承IBaseDao,在dao.impl包下所有的类都要实现对应的dao包下面的接口,继承AbstractBaseDao类,具体见示例。
所有多表之间的级联查询都要放到此包下面。
如果只需要对其中的一张表进行操作,请具体查看2.5内容。
具体的命名可以根据自己的业务逻辑来定。
com.portal.test.dao
com.portal.test.dao.impl
以上4点都必须在test包下面,test包下应该具备这最基本的4个包,一般情况不需要重新添加新的包。
特殊情况除外。
以下所提到的包都不在test包的下面。
而在主项目下面的包。
2.5、dao(data
access
object)包
该包放置各类dao(data
object),也就是放置对数据库访问的实现类,原则上是每个表对应一个dao的处理类,每个处理类对应一个类和一个接口,例如user表对应的接口是IUserDao,对应的类是UserDaoImpl,并且通过Spring的IOC的方式把此对象注入到业务层中。
业务层中用接口来调用。
与2.4的区别是此包下面所有的查询操作都是针对一张表进行的,而2.4是针对多表之间的级联查询的。
此包下面所有的dao都是公用的,而2.4只是针对个人的模块来使用的。
com.portal.dao
com.portal.dao.impl
2.6、pojo包
该包中放置hibernate反向工程生成的bean和该bean对应的.hbm.xml文件。
com.portal.pojo
三、配置文件的命名规范
Struts和Spring都是通过模块名称来命名的,每个模块对应的一个Struts配置文件和一个Spring配置文件。
Struts和Hibernate都是通过Spring(IOC)来注入对象的。
3.1、web.xml配置文件
开发人员不允许自私动web.xml,如果需要写servlet,过滤器等,需要在web.xml配置时,需要向项目组长说明,方可添加。
3.2、Struts配置文件
Struts所有的配置文件放在WEB-INF/struts-config目录下。
开发人员不要新建Struts配置文件,所有配置Struts配置文件都是由项目组长来添加。
Struts的配置文件是根据模块来划分的,每个人都会对自己所开发的模块来维护一个Struts的配置文件。
Struts配置文件根据模块名称来命名。
struts_test.xml
3.3、Spring配置文件
Struts所有的配置文件放在WEB-INF/spring-config目录下。
开发人员也不要新建Spring配置文件,所有Spring配置文件都是由项目组长来添加。
Spring的配置文件是根据模块来划分的,每个人都会对自己所开发的模块来维护一个Spring的配置文件。
Spring配置文件根据模块名称来命名。
spring_test.xml
需要说明的是要把所有写到2.5中的Dao放入到spring_dao.xml配置文件中。
也就是在spring_dao中只是存放只针对一个表所生成的Dao类,而2.4中的Dao存放到对应的spring模块的配置文件中。
3.4、Spring和Struts配置文件命名规范
1、Struts配置文件path的命名规范
Struts配置文件path的命名规范是由下划线“_”右面的部分加上本类所对应功能来命名。
例如struts_test.xml,所以的配置文件应该由test和类得功能来命名。
并且每个action都要写清楚注释。
<
!
--
分页测试
-->
action
path="
/test/page"
type="
com.portal.test.action.PageAction.java"
validate="
false"
>
forward
name="
success"
/page.jsp"
/>
error"
/action>
2、spring配置文件id的命名规范
注意一提的是spring中id的命名规范,在spring_dao.xml中dao对应的id的命名规范是此dao类得全称,并且第一个字母小写。
例如UserDao在spring_dao.xml中的id应该是userDao。
Service层中在spring中配置文件的编写是接口去掉第一个字母“I”,并且第一个字母小写,例如IUserService应该是userService。
并且在spring_dao.xml中谁加的一定要写清楚注释。
spring_test.xml中
bean
class="
com.portal.test.action.PageAction"
property
testService"
ref
bean="
/property>
/bean>
id="
com.portal.test.service.impl.TestServiceImpl"
infoDao"
userDao"
spring_dao.xml中
王朋与2011-7-5添加
com.portal.dao.InfoDao"
sessionFactory"
com.portal.dao.UserDao"
本次添加内容结束
四、异常处理
在dao和service中遇到异常往上抛,在表现层捕获异常。
统一的错误处理类,返回到页面在页面展示
五、日志处理
待定
六、方法的命名规范
Java命名规范统一采用驼峰命名法。
6.1、j2ee各层方法的命名
项目各个层之间的命名方法,一般项目主要是以增删改查为基础。
增加以save开头,删除以del开头,修改以update开头,查询以query开头,统计以count开头,查询一个对象以get开头。
以增加来说,比如我们要在User表中添加一行数据那么在业务层的方法应该是saveUser
然后由业务层的方法调用dao层得方法,dao中有save方法直接调用。
以查询来说,比如我们要以User的name和pwd来查询那么在业务层得方法是queryUserByNamePwd,在dao层得命名是queryByNamePwd,字段多可以以字段的第一个字母来定。
这样就其他开发人员就可以直接调用已经写好的方法,减轻不必要的代码生成。
以此类推。
以上都是针对一个表操作的命名,多表之间的级联查询中的dao放在自己的模块下面,命名自己可以按照查询功能来命名。
要把查询各表的注释写清楚。
原则上Dao方法都是公用的,一旦提交svn就不能在修改,别人都可以通过方法名称直接调用。
6.2、变量和常量命名
在变量命名时要注意以下几点:
·
选择有意义的名字,注意每个单词首字母要大写。
在一段函数中不使用同一个变量表示前后意义不同的两个数值。
i、j、k等只作为小型循环的循环索引变量。
避免用Flag来命名状态变量。
用Is来命名逻辑变量,如:
blnFileIsFound。
通过这种给布尔变量肯定形式的命名方式,使得其它开发人员能够更为清楚的理解布尔变量所代表的意义。
如果需要的话,在变量最后附加计算限定词,如:
curSalesSum。
命名不相包含,curSales和curSalesSum。
Static
Final
变量的名字应该都大写,并且指出完整含义。
通过在结尾处放置一个量词,就可创建更加统一的变量,它们更容易理解,也更容易搜索。
例如,请使用
strCustomerFirst和strCustomerLast,而不要使用strFirstCustomer和strLastCustomer。
常用的量词后缀有First(一组变量中的第一个