ImageVerifierCode 换一换
格式:DOCX , 页数:33 ,大小:690.76KB ,
资源ID:16997269      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16997269.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(java开发规范文档Word文件下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

java开发规范文档Word文件下载.docx

1、项目经理填写标准格式的文档每周个人总结项目组成员初期在贵阳项目试行系统提交测试报告项目阶段性提交给项目测试报告实施阶段验收报告4命名规范 4.1项目编号命名规范 4.2文档命名规范 4.3路径管理路径结构如下:项目名称|_database(数据库数据) |_docs(文档) |_参考文档(项目参考文件) |_需求&设计(需求文件及各种设计文档) |_开发计划 |_软件测试 |_部署&培训 |_工作汇报|_trunk(主目录) |_WebRoot(应用文件) |_src(源代码) |_业务模块一(某一个功能分类,如工具类) |_com.navinfo.分类英文名 (源代码目录) |_entity

2、 (数据模型) |_logic (逻辑实现类) |_services (逻辑接口层) |_action (Action层) |_utils(当前功能的工具类或常量定义)|_|_spring/ (spring的配置文件) |_hibernate/ (hibernate的配置文件) |_struts/ (struts的配置文件)|_quartz/ (quartz的配置文件)注,红色字体的部分和原有规范不同,主要是业务模块和配置文件放在同一个根目录下,为防止eclipse的配置顺序导致源代码和配置文件分离的很远。|_业务模块二|_. 示例:图:Src路径4.4jsp/html命名规范 jsp与htm

3、l文件名全部小写,并遵循如下的规范:数据/内容显示页 名词,多个单词用下划线分隔,要求能说明显示内容的信息,为避免冲突,可加上 _list。例如:new_message.html 或 my_file_list.jsp 操作处理页 命名格式:名词_下划线_动词,例如:file_delete.jsp。Jsp命名含frame页面 中的name属性命名的格式是xxx._xxx_xxx xxx部分用来标识当前页面隶属于整个系统中的哪一功能模块。如:属于ebwebmail则被表示为ebwebmail,其它情况依次类推。xxx部分标识当前页面所要完成的功能。完成用户登录的功能则被标识为login,其它情况依

4、次类推。xxx部分用来用来表示页面在浏览器窗口所处的位置。处于浏览器窗口的顶部则标识为top,其它情况依次类推。例如:ebwebmail_inbox_top.jsp src属性相应的文件名根据情况建议在原命名规范上用下划线加上所处窗口的位置。javascript脚本方法 脚本函数都以xxx_xxx的方式命名。xxx对应页面隶属的模块。xxx表示函数所要实现的功能(动宾结构),多个单词用下划线连接。ebwebmail_send_mail() 模块通用的脚本函数必须集合于一个js文件中,在页面上通过/script形式导入。js文件名命名使用模块名,例如:ebwebmail.js。如果项目已经提供了

5、公共js脚本,则优先使用公共js脚本中提供的函数。所有定义方法的元素定义在/head中或后。javascript脚本内部变量与参数 单词之间用下划线分隔且全部小写,例如: var file_size。form表单name属性 除系统模版生成的form外,统一以form_开头,其后加该表单所需收集的信息的作用或动作,例如:form_file_upload 或 form_send_mail。表单elements 表单element的名称以element需收集的信息标示命名,单词之间使用下划线分隔且全部小写,例如:input type=text name=usernameradiofile_type

6、textarea name=content rows=5 cols=40cookie命名 模块名_存储信息名词(多个单词用下划线分隔) ,全部大写,例如:EBWEBMAIL_SORT_TYPE。window.open中name参数的命名 javascript 的window.open方法中有一个name的参数,浏览器约定同样的名字的窗口只能打开一个,如果程序间名字重复将相互冲突。 如果不限制打开窗口数,可以指定或(不是null),否则需要加上模块名,例如ebwebmail_viewmail。4.5 数据库命名规范 4.5.1表名规范关于命名的规范,统一使用大写,单词之间用下滑写,采用三段式或者

7、二段式。a)头一段标识数据库对象类型(T表, V视图,SP存储过程,TR触发器)b)二段标识业务的类型,详见四维产品体系.mmapc)三段和四段标识表的属性。(订单:ORDERS,计划:PLANS,路线:ROUTES)系统用户表,系统用户状态字典表(T_CP_URERS_STATES),订单表(T_BD_BLL_ORDERS)4.5.2字段规范所有表示boolean含义的字段,在前方需要加入IS_前缀5文档规范 编写文档目前主要使用的工具是Word(项目计划文档例外,需要使用Project制作,项目计划文档为非技术的客户提供Excel版本),辅助使用的工具有Visio,PowerPoint等。

8、所有Office文档均使用Office2003兼容格式文档。文档务必保持段落格式整齐,文字字体,颜色,大小统一。如果需要摘引html页面中的内容,不能直接从html中粘贴过来(会在word文档中留下html格式),而必须先去除格式,例如:先粘贴到notepad中。务必注意中英文标点符号,文档正文一概使用中文标点符号。如果需要在文档中插图,不要使用word自带的绘图工具。可以选择使用PowerPoint或visio。使用PowerPoint,选择插入 - 对象-Microsoft PowerPoint 幻灯片使用visio,需要另外建立visio文档,绘制完以后粘贴 到word中。 Visio不

9、得在word文档上的Visio对象上进行修改,要在源文件上修改后粘贴到word文档上。数据建模使用PowerDesigner工具。 在项目进入开发阶段后,所有的的对PowerDesigner的修改需要同时提供相应修改的sql语句,并放到系统的文档目录下。对数据建模的文档修改,需要由项目经理统一进行,防止发生版本不统一的情况。修改他人文档务必使用修订模式,以便保留备修改的内容。使用修订模式,选择工具修订突出显示修订,勾上编辑时标记修订6代码规范 6.1 Java源代码规范 6.1.1命名 6.1.1.1Package 的命名 Package 的名字应该都是由一个小写单词组成,例如:com.nav

10、info. backplatform。此外,对于包名我们做如下约定:工具函数类包名前缀为.utils test case类包名前缀为.test 工具类包结构6.1.1.2 Class 的命名 Class 的名字必须由大写字母开头而其他字母都小写的单词组成,例如:DataFile或InfoParser。Class 变量的命名 变量的名字必须用一个小写字母开头。后面的单词用大写字母开头,例如:debug 或 inputFileSize。Static Final 变量的命名 Static Final 变量的名字应该都大写,并且指出完整含义,例如:MAX_UPLOAD_FILE_SIZE=1024。参

11、数的命名 参数的名字必须和变量的命名规范一致。数组的命名 数组应该总是用下面的方式来命名:byte buffer;而不是:byte buffer;方法的参数 使用有意义的参数命名,如果可能的话,使用和要赋值的字段一样的名字:SetCounter(int size) this.size = size; 6.1.2代码格式 6.1.2.1文件头声明 源文件的头部需要一个history段,对于每次对源文件的重大改动,都需要在history段中注明。该段定义在package和import之间,例如:* * HISTORY * 功能描述:* 2002/01/29 Biz 创建文件 * * 2002/02

12、/19 kevin 增加新功能 */ 代码块书写格式 可以选择以下任意一种代码块的书写方式:if (true) /body if (true) 建议使用第一种书写方式。如果是修改他人的代码,必须使用代码原来的书写方式。对于代码块过长,超过1屏以上,后面要说明属于那个代码块,例如:if (i 100) /too many lines more than one screen / if (i 6.1.2.2代码格式关于缩进 缩进使用4个连续空格,不要在源文件中保存tab字符, 请注意调整所用的IDE工具,打开将tab转换为空格功能。页宽 页宽应该设置为80字符. 源代码一般不会超过这个宽度, 并导

13、致无法完整显示, 但这一设置也可以灵活调整. 在任何情况下, 超长的语句应该在一个逗号或者一个操作符后折行. 一条语句折行后, 应该比原来的语句再缩进4个空格。操作符 操作符左右各用一个空格分隔。int a = b;if (a 0);6.1.2.3类和方法定义 类定义或方法定义过长需要换行书写,例如:public class CounterSet extends Observable implements Cloneable private PortletSet getPortlets( Portlets portlets, RunData rundata, boolean applicati

14、on, boolean applicationsOnly ) 6.1.3注释 Public和protected的方法成员变量和方法必须写javadoc注释。方法名属性名在Eclipse中输入/*加回车,自动生成代码描述区间,开发人员自行根据格式进行标注。如果属于重写的方法,需要/*加入回车,不需要加入其他说明。超过1句以上的注释使用中文书写。对于代码多于10行的private方法也要写javadoc注释。对于代码中的逻辑分支或循环条件需要书写注释,例如:if (some condition) /符合某个条件,应该这样处理 else /否则应该那样处理 6.1.4其他 关于属性 类中的属性不能定

15、义为public变量直接存取,而是定义成protect变量并编写get/set方法,例如:protect String myName;public String getMyName() return myName;public void setMyName(String myName) this.myName=myName;6.2 jsp/html代码规范 jsp/html描述注释 jsp/html页面顶部必须存在一个基本描述注释,包含功能描述、参数列表和历史修改信息,例如:%- /* * NAME : file_download.jsp * PURPOSE : 下载文件提示 * PARAME

16、TERS :* file_id - 文件ID号 * force ?C 是否强制下载 * 2002/04/05 Hafele 创建文件 * 2002/06/07 tmp 增加强制下在功能 */ -%jsp头格式 jsp头部一般需要遵循以下格式:% page contentType=text/html;charset=UTF-8 % page import=java.io.* / jdk标准包 javax.mail.* / java扩展包 org.apache.xml.* /使用的外部库的包 com.sunrise.* /使用的项目的公共包 com.sunrise.applications.* /

17、使用的模块的其他包 % include file=some.jsp /include其他的jsp % response.setHeader(Pragma,No-cache);Cache-Controlno-cacheExpires0% /一般jsp都需要防止缓存 html格式 html头一般需要遵循以下格式:meta http-equiv=Content-Type content= charset= UTF-8titlesome titlelink rel=stylesheet href=some.css type=text/css/some javascript 注意:必须指定一个有意义的,

18、严禁出现Untitled未命名之类的2. 所有html标签使用小写 3. html页面一般需要设置一个背景色(一般是#FFFFFF)。html语法校验 所有的jsp/html页面需要能够使用DreamWeaver正确打开(即html语法正确,没有错误的标记)。注释 一般不使用html注释,除非是有必要让最终用户看到的内容。对于包含JSP代码的html块,必须使用JSP注释。对于没有必要的注释,在发行版本中必须移除。form属于域的maxlength 对于text类型的输入域,必须根据数据库字段的长度设置相应的maxlength,例如数据库类型是VARCHAR(64),那么maxlength是3

19、2(因为中文浏览器对于中文也认为是一个字符)。6.3数据库开发规范6.3.1主键每个表都有一个自动增长键作为主键ID。同时,业务逻辑上,采用唯一主键做索引,我们可以采用UUID,或者订单号,作为逻辑主键。以订单表为例:ID为自动增长列作表的主键,ORDER_NUM或者UUID 实际订单的编号,设置为唯一键(或者不设也可以)。这样做的好处是:加快JOIN查询的速度,因为,如果采用订单编号这一类型键值作为主键,它的类型多为字符型,如果多表JOIN会比,数值型慢很多。而且一般ORDER_NUM这类型的键值一般是通过逻辑生成,很难保证是绝对唯一的。建立自增主键的方法:http:/www.oracle-

20、关于UUID 和 自增主键的功能分工问题: 为什么要加入UUID?主要是为了方便某些业务中防止对业务数据通过URL链接中直接传入可以进行标识的获取到不应该访问的内容。如果类似业务都需要通过权限控制实现对资源的占用过多。UUID是32位的,所以很难进行模拟。即UUID主要是通过链接访问的时候传入。系统通过一个getUuid的方法获取到对象。 为什么需要同时具有UUID和ID?UUID具备防篡改的能力,但是过长同时不易读,在大数据量的存储的时候会导致空间的浪费。即在关联表或者外键中,都使用id进行关联。 ID和UUID都是能找到唯一一条记录的。因此,在数据存储层(data access layer

21、)里,使用ID和UUID进行更新或删除操作,都可以,对数据安全没影响。 而在代码里,更新数据或删除数据的操作,采用自增ID,而数据显式传递是(如,通过URL传递参数时)采用UUID根据UUID,在数据库里把整个对象装载入实体类。 所以,Hibernate里的实体类,必要要有自增键的映射,而联合查询必须是通过自增键进行。 注:不是所有的表都需要具备UUID的,主要取决于被仿冒的程度,如用户、门店、商品等是需要UUID的,但是订单表只保留ID即可。6.3.2日期类型日期类型,统一采用文本格式的字符串,中间不加入任何连接符,在显示的时候再进行格式化转换。6.3.3固定字段每个表添加两个时间字段,CR

22、EATE_TIME,保存的是该条记录创建的时间,UPDATE_TIME,保存的是该条记录最后一次更新的时间。这个方便我做数据抽取。每个表加入ISVALID字段,用来表示该条记录是否的有效性。既是,我们业务系统的所用删除操作,都不是实际删除,只是一个标识。假如数据量增大很多后,才统一由DBA执行物理删除,而删除前可作一个备份,这样可以极大得减少因人为操作不当,而对系统数据造成的不必要损失。6.3.4取值规范当使用字符代表某个业务含义为bool型的字段时,使用1代表true的含义,使用0代表false的含义。即:isvalid标识有效性,为1代表有效,为0代表无效。6.3.5数据库开发工具数据库设

23、计工具采用SysBase的PowerDesigner 15.1建的数据库设计图。由于此PD的版本在小版本上存在格式不兼容的可能。必须限定使用工具的大小版本均一致。6.3.6Sql书写规范select*使用时要注意,不能滥用用like语句要精确,尽量使用等着查询过滤重复少用in语句(1.多用等值查询2.多用exists语句)减少SQL查询嵌套Java程序中尽量不要查一个结果集然后循环拼SQL再执行查询较少SQL语句中的SQL子嵌套)多用exists少用in表查询建索引但不要滥用建索引磁盘占用率大,建索引的规则是通过对实际业务查询要求分析而来的,而不是所有的表都需要加入。即查询条件中同时使用的等值

24、查询部分作为索引的规则。查询要尽量使用分页查询预编译可适当使用别滥用,用多会导致游标数被占用完,同时不要for循环中间使用预编译对象的声明(可以使用对象的创建)6.4其他规范 对于IDE的使用 目前J2EE系统的开发使用Eclipse,但是最后提交的代码必须不依赖任何IDE,而需要可以使用ant完成所有的编译工作。一般提交的代码目录格式参照4.3 限制session的使用 在代码中使用session需要听取项目经理的意见,项目经理需要在设计文档中登记项目中所有使用到的session的名字和作用。限制外部包的使用 开发员如果需要使用一个外部包需要听取项目经理的意见。在项目经理批准以前,严禁擅自使

25、用一个外部的包。项目经理需要将依赖的外部包在文档中进行描述。7实战代码规范 7.1Java源代码规范 7.1.1java代码命名与格式 7.1.1.1Package 的命名 Package 的名字应该都是由一个小写单词组成,例如:organization包结构7.1.1.2 Entity类的命名与规范 实体类定义示例代码如下: 说明:1:实体类命名,表名+Entity。2:实体类注解定义 Entity Table(name=”实际表名”) Cache(usage=CacheConcurrencyStrategy.NONSTRICT_READ_WRITE) 3:实体类必须继承BaseForm4:id字段的定义必须定义成id。5:Transient表示非数据库字段。7.1.1.3 Logic类的命名与规

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1