prefix="/"/>
四.开发规则及使用说明(实例说明:
以数据编辑模块为例)
1.控制器:
功能模块对应的业务入口
1.1控制器名称:
基本都以功能模块名称拼音简写或有代表性的英文+Action;例如:
SjbjAction
1.2控制器说明编写:
当前控制器的主要功能及作者,创建日期版本等信息,如下:
/**
*Copyright(c)ConsultingLonghope.Allrightsarereserved
*
*数据编辑管理Action
*@authorTanLiang
*@versionVer1.02015-08-02初版
*/
1.3控制器注解及名字空间定义:
如下
@Controller//此注解标识为控制器
@RequestMapping("Sjbj")//此注解标识为当前控制器的名字空间,而且此名称空间标识必需及菜单ID等数据一置,因为此部份是要及权限相关联的
1.4业务接口的注入:
如下
@Autowired//必需追加此标签,这样业务接口就自动注入
privateSjbjServicesjbjService;
备注:
而且所有注入的对象不需要在实现GET、SET等方法
1.5控制器的方法配置:
如下
1.5.1对于视图(JSP/PHP/其它前端)层的请求(备注:
对于方法必需追加说明等标识)
/**
*功能:
数据保存
*/
@RequestMapping("saveData")//标签为调用的方法
publicStringsaveData(S_BS_CORPs_bs_corp,StringJsonArray){
s_bs_corp=sjbjService.saveData(s_bs_corp,JsonArray);
return/page/sjbj/xxx.jsp;//返回到指定视图层路径
}
1.5.2对于视图(Flex或移动端或返回结果为JSON数据)层的请求
@RequestMapping("saveData")//标签为调用的方法
@ResponseBody//对于返回JSON类型数据必需追加此标签,然后返回相应的对象即可
因为所有对象或集合数据都会被框架自动转换为标准的JSON数据结构
2.例如请求:
Sjbj/saveData.action
3.实体类:
业务相关实体对象,即:
POJO类对象及数据表直接对应如下:
@Table("S_BS_CORP")
publicclassS_BS_CORPimplementsSerializable{
@PrimaryKey
@Column(mappedName="S_CORP_UUID")
privateStringS_CORP_UUID;
@Column(mappedName="S_CORP_CD")
privateStringS_CORP_CD;
……
}
备注:
以上实体类中对应的标签,主要应用自动拼组SQL时的业务逻辑而定义
4.Dao接口及SqlMap
4.1文件名称规则同上,例如:
数据编辑功能模块,需要注意义的是必需创建一对,其中一个是Dao接口,而另一个是接口所对应的SQL方法,而且接口名称及方法名称还有参数及返回值等参数必需对应,如下:
---------------------------------------------------------------------------------------------
SjbjMapper.java/publicListqueryForList(HashMapmap);
---------------------------------------------------------------------------------------------
SjbjMapper.xml/
SELECT*FROM数据表WHERES_CORP_UUID=#{S_CORP_UUID}
5.业务接口及业务接口实现类如下:
4.1接口文件必需放在service/目录下SjbjService.java
4.2接口实现类文件必需放在service/impl/目录下SjbjServiceImpl.java
备注:
业务层接口的名称必需按照此规则创建,否则可能导至无法正常自动创建事物处理,
还需要注意的是,在业务接口实现类中必需设置业务标签注解如下:
@Service("sjbjService")//此标签必需设置,而名称则还是按模块名称简拼在+Service即可;
6.业务生成器:
即以上是配置控制器所产生的相关业务文件,那么这种机械性质的工作还是有些麻烦,所以我们开发了一套业务生成器,也就是说我们只要配置好相关业务的数据表名称,及生成目录然后运行即可自动生成了:
实体类、Dao接口、Dao接口对应的SQLMAP、业务接口、业务接口实现类等文件,并且在SQLMAP及接口实现类中已经根据数据表的主外键逻辑自动生成基本业务;
业务生成了器类路径为:
framework/com/fcx/core/generator/BusinessGenerator.java
配置好右键直接运行当前业务生成器类就可以了,所有业务相关文件全部生成了,无须手动去创建,此时只需要在控制器中配置业务接口,然后编辑方法传入相应参数就可以正常运行了,如果当前自动生成的基本业务无法满足,那么开发人员可自行编辑或在此基础上进行改修即可;
五.备注
开发约定如下:
说明:
目录结构不允许变更,编写代码必需整洁并追加相应标识及说明,否则被视为垃圾代码,并找到编写人员要求重新整理;
1.1数据库表定义规则:
所有系统表都定义为:
S_数据表
所有业务表也就是制度表为:
C_表号
所有汇总表定义为:
H_表号
模版表定义为:
T_表号
备注:
所有数据表字段名称全部为大写英文字母;
1.2项目中的实体类对象定义规则同上例如:
S_USER(即:
系统用户表)
1.3Java开发中的类名定义(主要以模块名称的简写拼音、或有效的英文单词)如下:
控制器:
UserAction
实体类:
S_USER-系统用户表C_H201-固定资产投资H_G101-汇总表
Dao映射接口及XML:
UserMapper.java
UserMapper.xml
业务接口:
UserService.java
业务接口实现类:
UserServiceImpl.java
方法名称开头字母小写:
saveDetail();
所有目录结构及配置文件禁止开发人员更改,如果需要变更或改修及通用类等文件请及(谭亮:
管理员)开发人员联系,为了保证项目结构及代码类等文件的整洁性,方便他人维护请遵循开发规则,如有问题请及时联系开发人员:
谭亮