核心平台三版java开发规范.doc_第1页
核心平台三版java开发规范.doc_第2页
核心平台三版java开发规范.doc_第3页
核心平台三版java开发规范.doc_第4页
核心平台三版java开发规范.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

核心平台三版Java开发规范发行版本作者备注1.0郑其荣创建1.1郑其荣修改2010.03.161. 文档目的定义核心平台三版的编码规范,保持核心平台三版总体代码一致,使代码易读易懂,便于管理和维护,降低排错难度。2. 目标读者所有核心平台三版的开发人员。3. 主要内容1233.1 命名原则 使用含义准确的单词来命名变量,属性,类名,包等; 不要使用已经存在了的公认的名称或保留字,以免产生歧义,例如:class;l 包命名 包名全部由小写单词(或者单词缩写)组成。 com.dareway.系统.子系统.业务包.xxx类名例如:com.dareway.cp3.md3.baseinfo.baseinfoBPO.javal 类命名 类名由大写字母开头,其他单词的第一个字母大写。 Controller命名均以Controller结尾;BPO命名均以BPO结尾。u 同一个业务的Controller前缀和BPO的前缀要相同。u BPO类必须用final修饰。l 方法命名 采用第一个单词小写,其余单词的第一个字母大写的方式。 构造函数处于方法的最上面,并且按照参数从少到多的顺序排列 对于要在其他类中调用的方法声明为public。 对于要在本类和子类中调用的方法声明为protected。 对于要只在本类中调用的方法声明为private。 获取值的函数为值变量名前加上get前缀方式例如:getUser(),getAccount() 对于返回布尔型函数采用带有is的前缀方式例如:isName() 有时为了更好的表达含义对于is可以替换为has或can例如:hasNext(),canRead() 对于工具类中的方法名要指明具体的意义,提供的功能太多要加详细注释解释。l 方法参数命名 参数加前缀p。u 参数必须用final来修饰 BPO主方法的参数名字必须是parau 参数必须用final来修饰。l 变量命名 变量名由小写字母开头,其他单词的第一个字母大写,并使用有意义的名字。例如: firstName static final变量的所有字母全部大写。例如:static final URL= 数组变量的声明采用统一的格式。例如:String agrs,不要采用String agrs方式。3.2 编码风格l 类的编写顺序 程序包的声明。 包的引用。 类的注释 具体的类名称 构造方法,按参数由少到多排列 业务方法l 变量初始化 对于所有方法内定义的变量需要适度初始化。u 例如:dataObject vdo; 局部变量必须在方法体头部声明。主要有两种方式:u DataObject vdo;u DataObject vdo=para.getStringPara(“name”);3.3 注释使用dwcodetemplates1.2.xml文件写注释。(MyEclipse中的window-preference-java-codeStyle-code Templates-comments-import)l 类注释: 在程序的开始部分在程序包名的下面加上类注释l 方法注释: 明确说明功能方法要处理的功能 描述传入参数的详细信息,方法返回结果的信息 描述方法处理的异常信息 对于方法是否在其他应用中使用不确定的情况,可以先声明为public然后在注释中描述 保留对代码更改的历史纪录,如果出现更改纪录更改的人员,更改日期,更改的原因,新代码的测试人员 对功能方法测试的例子如果有尽量保留 阐述功能方法运行的前提 一般采用多种注释l 变量注释 在变量的末尾以双斜杠方式进行注释说明。 描述变量的使用。 描述变量的取值范围。例如:日期为131。 对复杂的变量要尽量给出例子值。3.4 Controller,BPO规范使用dwdareway1.2.xml来格式化程序。(MyEclipse中的window-preference-java-codeStyle-formatter -import) 一个controller方法只能对应一个BPO方法。 根据业务功能模块分包,controller放在业务功能包下,BPO放到业务功能包下面的BPO子包目录中。3.5 Controller使用规范 调用BPO时,必须用方法:execute(String bpoName, String methodName,DataObject para)来调用。u 对于登录以前的方法调用要使用方法:execute(String bpoName, String methodName,DataObject paraIn,CurrentUser user)。 调用服务时,必须用executeService(String serviceName,DataObject paraIn, HttpServletRequest request)来调用。 当需要从Controller中返回字符串值,或者其他类似的值时,用ActionUtil.writeMessageToResponse()方法。 当做查询操作时,返回时使用方法:u this.refreshDataWindow(request, vds) 当需要往前台返回消息时,使用方法:u this.showErrorMessage(message);u this.alertMessage(消息);/不需要关闭response的消息u this.alertSuccessMessage(消息);/提示成功后,需要关闭response窗口的消息。 Controller返回的ModelAndView中的viewName要遵守直接写jsp的全路径的规范。 对于ModelAndView中的model有两种方式。u 对于单个数据集,包括dataStore或者String值,都用return new ModelAndView(/cp3/si/demo.jsp,”vds”,vds);u 对于多个数据集,要用DataObject来传输数据。DataObject vdo;Vdo=new DataObject();Vdo.put(“vds”,vds);Vdo.put(“message”,message);Return new ModelAndView(/cp3/si/demo.jsp,vdo);3.6 BPO使用规范 使用对应的方法来获取参数:u para.getString (“name”);/如果name不存在,报异常u para.getString(“name”,null)/如果name不存在,那么返回nullu para.getInt (“name”)/ 如果name不存在,报异常u para.getInt(“name”,0) /如果name不存在,那么返回0u para.getDouble (“name”);/ 如果name不存在,报异常u para.getDouble (“name”,0.0);/ 如果name不存在,那么返回0.0u para.getDataToString(“name”,format);/获取String类型的日期值。u para.getDataStore(“dwname”);/获取datawindow的值 不用捕捉AppException(系统异常),由框架来统一处理。 BPO中如果有业务异常,必须throw出ApplicationException。 写for循环时,循环变量的最大值不要直接使用vds.rowcount(),在循环外面写vcount = vds.rowcount(),然后循环变量的最大值直接使用vcount。 所有在程序中用到当前日期或时间的,均使用框架提供的方法DateUtil工具类。 在一个类中要明确指出使用对象自己的的变量还是父类的变量:u 使用this或者super来表明对象的引用位置。 所有跟数据库有关的代码,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论