-------------------------------------------江西可再生资源大数据平台项目编码规范V1.0版本----------------------------------------
1. controller包下的所有类以Controller结尾。例如:**Controller
2. dao包下的所有类以Dao结尾。例如:**Dao
3. service包下的所有类以Service结尾。例如:**Service
4. service包impl包下的所有类以ServiceImpl结尾。例如:**ServiceImpl
5. utils包下的所有类以Util结尾。例如:**Util
6. entity包下的所有类以Entity结尾。例如:**Entity
7. controller类中方法以及映射的规范:
声明:controller中的映射用的url全都采用restful的形式,在url中请勿使用动词,比如获取一个id为1的苹果手机
错误形式:@GetMapping("/api/getOneIphone")
正确形式:@GetMapping("/api/iphone/1")
(1)查询接口使用GET方式,如果是分页,在映射路径后面加上page,如下例所示
***************************************************************************************
@GetMapping("/资源名称(名词)/page")
public Object 方法名 ( **Entity entity,
@RequestParam(value="pageNum", defaultValue="1") int pageNum,
@RequestParam(value="pageSize", defaultValue="10") int pageSize ) {
//TODO 分页方式请参考Mybatis PageHelper 官网
}
***************************************************************************************
(2) 添加操作使用POST方式
***************************************************************************************
@PostMapping("/资源名称(名词)/")
public Object 方法名 ( **Entity entity ) { }
***************************************************************************************
(3) 更新操作使用PUT方式
***************************************************************************************
@PutMapping("/资源名称(名词)/")
public Object 方法名 ( **Entity entity ) { }
***************************************************************************************
8. 所有使用的mapper.xml文件都放置在resources文件夹下的mybatis/mapper文件加下
9. 请勿随意添加包或者其他配置型文件和工具类,如需添加,请先与项目经理确认再添加。
---------------------------------------------------------------------------工程包结构说明-----------------------------------------------
com.jxre.bigdata
|--common 共同常量类等信息
|--config spring相关的配置类
|--controller 控制层代码,以页面菜单为基础
|--service 服务层,与控制层类名对应
|--service_impl 服务层实现类
|--dao 数据访问层,一个dao类对应一个表的访问操作。sql在对应的mapper.xml中
|--security 安全相关的类
|--exception 自定义异常类
|--utils 公用的工具类
|--mapper mybatis的sql语句
mybatis/mapper/*.xml的文件名的前缀还有dao包中类的前缀,还有Entity的前缀相同。
----------------------------------------------------------------------关于service中事务和异常的处理方式-------------------------------------
需要事务回滚,统一向上抛RuntimeException
不需要事务回滚的业务异常,统一向上抛自定义的异常类。然后会有统一的异常拦截器,获取异常信息,然后将包装后,将message返回给前台。比如service中验证一个变量的合法性,不合法直接抛异对应的异常就行。
------------------------------------------------------------------------返回值-----------------------------------------------------------
contorller或者service返回到前端的Map对象中的内容
{
"msg" : "返回的信息值,如保存成功",
"data" :{"success":"true",.....业务各自返回属性}}
}
------------------------------------------------------------------------Logger规范要求 2018/11/15 add-----------------------------------------------------------
1.异常的catch中不需要写log。直接向上抛异常即可
2.方法中如传入的参数,数据库查出的数据都需要通过log写到日志中。
3.业务逻辑处理中比如根据不同的条件,执行不同的操作室,需要把条件的值写到