开发说明

一.简介

  1. 开发基本工具j2sdk1.8+jetbrains IDEA + maven
  2. 能够手动配置 maven和pom文件,熟悉IDEA的功能

二.IDEA安装插件:

maven3配置

      <mirror>
          <id>alimaven</id>
          <name>aliyun maven</name>
          <url>https://maven.aliyun.com/repository/public</url>
          <mirrorOf>*</mirrorOf>
        </mirror>

三.编译参数

IDEA 和 pom中,java编译参数必须带 -parameters,版本统一是用1.8

四.代码质量要求

  1. 满足 alibaba java coding 扫描通过。
  2. 代码即文档,本系统的代码能够自动生成API文档,故每个标签描述清楚,注释清楚。
  3. 代码头部要求逻辑描述,复杂描述使用md格式文档描述。
/**
 * Created with IntelliJ IDEA.
 * User: 开发者
 * date: 13-10-19
 * Time: 上午10:24
 * description: 功能描述
 *
 *  XXX逻辑描述
 */

五.开发注意

  1. 不用sql创建表,用java注释和hibernate差不多,如果有索引,先放到代码头部说明。
  2. API接口返回时间统一是用RocResponse封装统一返回。
  3. 不对外的分布式调用接口可以直接返回,例如:public Persion getPersion()
  4. 返回翻页列表封装是用RocResponse,例如:public RocResponse> list(@Param(caption = "查询文章") MatterQueryParam param)
  5. 考虑到分布式调用,分离给外部调用的参数和bean模型统一防止model目录,其中包括枚举类型,参数,传递对象To(传给应用服务)和Vo(传给前端展示),不清楚可以参考jpayment项目
  6. controller 划分为展示的为View,动作为Action 保存不同的目录继承 ActionSupport 例如:Action(动作) extends View(展示) ActionSupport implements XXXApi(第三放调用接口)
  7. 目前本构架pom中已经配置了基本满足大多数的功能要求,不要轻易加入新的包进来,要加先和我说一下.
  8. 数据库处理DAO 目录为dao, 结构为:XXXDAOImpl extends JdbcOperations implements XXXDAO,XXXDAO extends SoberSupport,建好文件后就能连接处理数据库. 并且提供了常用的增删改的功能,复杂的可以是用sqlmap功能,将sql配置在xml文件中,内名加方法名称会自动对应执行.
  9. 写完代码后看生成的API文档是否正确,调整正确后在和前端对接.

六.命名规则

目录命名规则

以jshop为例:
  1. jspx.jshop.table 保存表结构类
  2. jspx.jshop.view 查询表的view,里边只是读取API接口
  3. jspx.jshop.action 查询表的view,里边只是写取API接口
  4. jspx.jshop.dao 数据库处理接口
  5. jspx.jshop.dao.impl 数据库处理实现
  6. jspx.jshop.service 逻辑实现接口
  7. jspx.jshop.service.impl 逻辑实现
  8. jspx.jshop.remote 分布式调用配置
  9. jspx.jshop.model 模型结构,和API接口,提供分布式调用的类模型,对第三方提供这个目录就可以调用本地对外的API接口
  10. jspx.jshop.model.enums 枚举类型
  11. jspx.jshop.model.param 第三放进入的参数模型
说明model目录单独打包,后期作为分布式调用建模使用

文件名命名规则

以Goods为例:
名称 描述 例子
表结构 数据库映射类 jspx.jshop.table.Goods.java
View 查看类 jspx.jshop.view.GoodsView
Action称 操作类 jspx.jshop.view.GoodsAction
名称 描述 例子
首页 远程入口 /goods/index
翻页列表 list/page /goods/list/page
列表 list /goods/list
详细 detail /goods/detail
名称 描述 例子
添加 add /goods/add
保存 save /goods/save
编辑 edit /goods/edit
删除 delete /goods/delete
冻结 freeze /goods/freeze
解冻 unfreeze /goods/unfreeze
审核 unfreeze /goods/audit
支付 unfreeze /goods/pay
多个添加 tree/add /goods/tree/add
多个保存 tree/save goods/tree/save

七.其他说明

  1. 下手前先思考清楚逻辑.
  2. 碰到问题,先动手测试.分析问题来源
  3. 入手前先看看demo.

八.下载说明

九.独立启动应用

快速开始:http://www.jspx.net/jcms/upload/jspxapp.zip