1. 模块命名、数据库表命名、域模型命名、各分层的类/方法命名、页面的命名;
模块命名:
a. 包命名:com.project_name.module_name.acon/service/dao/ws;
service 的实现都置于 com.project_name.module_name.service.impl 下;
b. 接口命名遵守 XxxxService,接口实现遵守 XxxxServiceImpl;
2. 包的设计、页面的层次结构设计(jsp/css/js 等文件的结构);
3. log、异常(声明式异常)的约定设计;
4. 链接、按钮、表单提交的统一方式;通用式 Ajax 调用与页面跳转统一模型;
5. 响应一个请求的分层结构约定,列举几个示例(常规调用、Ajax 调用、WebService 调
用、提供 WebService 暴露、硬件设备接口调用);
6. 验证代码质量的约定,如 JUnit、EMMA、FindBugs、CheckStyle、PMD 的使用;Hudson
持续集成需注意的;
7. 压力测试、防内存泄漏测试;
基础 CSS:<a>标签的各种状态的样式;表格单双行的样式;
开发一个 Acon 请求的响应:
前置条件:该 Acon 涉及的 Enty 及 EntyName.hbm.xml 已经准备好。
步骤:
a. 前端页面触发 Acon 的请求;
统一采用全路径请求,URL 格式:
1> basePath/web/moduleName/*_ *.acon {1} EntyName,{2} AconMethodName
2> basePath/web/moduleName/gotoXxx.acon (无需调用 Service,直接跳转)
包括 jQuery 的 Ajax 方式和非 Ajax 方式;
包括表单提交;
参数设值的方式:
1> URL 参数:
basePath/web/moduleName/*_*.acon?
enty.propertyName=paramValue¶mName=paramValue
2> <input type=”xxx” name=”paramName” value=”paramValue”> 或<input type=”xxx”
name=” enty.propertyName” value=”propertyValue”>
另外,对于表单的提交,前后台都必须做数据校验,SWDF 已提供了此能力,进行简单
的配置即可,前台直接提供类似以下代码即可,点此查看前端校验详细规则说明。
前端校验示例;
后台数据校验,点此查看校验详细说明.
b. 配置 struts-moduleName.xml;
直接跳转示例;
调用 Service 示例;