数据中心产品开发规范18023.docx
数据中心产品开发规范XXXX公公司XX业务部部XXXX年年XX月开发规范_xFF08_JAVA部分_xFF09_文档说明本文档所涉涉及到的的文字、图图表等,仅仅限于内内部使用用,未经经双方书书面许可可,请勿勿扩散到到第三方方。文档属性属性内容客户名称:项目名称:文档主题:文档编号:文档版本:版本日期:文档状态:作者:文档变更版本修订日期修订人描述文档送呈单位姓名目的审阅参阅目 录1概述51.1最最根本原原则52Javva技术术规范62.1平平台使用用的相关关技术62.1.11基本核核心框架架包62.1.22其他框框架包62.22程序设设计标准准72.2.11命名约约定82.2.22包名,类类名,方方法名,属属性名,常常量名命命名约定定92.22.3注释约约定102.2.44快速浏浏览JaavaDDoc112.3开开发规范范122.3.11项目结结构说明明122.3.22整体包包结构说说122.3.33项目模模块包结结构及命命名132.3.44各子项项目模块块功能包包结构142.3.55配置文文件包结结构142.4命命名规则则152.4.11共用类类152.4.22业务层层152.4.33展现层层152.4.44模型层层162.44.5持久层层162.4.66XMLL配置162.4.77资源文文件192.4.88JSPP文件202.4.99事务命命名约束束202.4.110JS命名名约束213数据库库技术规规范223.1概概述223.2命命名基本本规则223.3数数据库表表空间223.3.11命名基基本规则则223.4默默认用户户方案223.5表表的命名名规则、约约定223.66视图的的命名规规则、约约定233.7字字段命名名规则、约约定233.8存存储过程程的命名名规则、约约定233.9序序列对象象的命名名规则、约约定243.10触发器器命名规规则、约约定244HIVVE技术术规范255HBaase设设计规范范265.1NNameespaace命命名空间间设计265.211.2. Taablee表设计计275.2.11理想HBBasee表275.2.22预创建建分区285.2.33列族数数量285.2.44可配置置的数据据块大小小295.2.55数据块块缓存295.2.66激进缓缓存295.2.77布隆过过滤器(Bloom filters)305.2.88生存时时间(TTTL)315.2.99数据压压缩325.2.110数据分分割335.2.111单元时时间版本本345.3CColuumnFFamiily列列族设计计355.4QQuallifiier列列设计365.5版版本设计计375.6HHBasse命名名规范371 概述本文提供一一整套编编写高效效可靠的的Javva代码码的标准准、约定定和指南南。它们们以安全全可靠的的软件工工程原则则为基础础,使代代码易于于理解、维维护和增增强。而而且,通通过遵循循这些程程序设计计标准,你你作为一一个Jaava软软件开发发者的生生产效率率会有显显著提高高。经验验证明,若若从一开开始就花花时间编编写高质质量的代代码,则则在软件件开发阶阶段,对对代码的的修改要要容易很很多。最最后,遵遵循一套套通用的的程序设设计标准准将带来来更大的的一致性性,使软软件开发发团队的的效率明明显提高高。1.1 最根本原则则r 运用常识当找不到任任何规则则或指导导方针,当当规则明明显不能能适用,当当所有的的方法都都失效的的时侯: 运用用常识并并核实这这些基本本原则。这这条规则则比其它它所有规规则都重重要。r 驼峰命名法法驼峰命名法法(Caamell-Caase):就是当变量名或函式名是由一个或多个单字连结在一起,而构成的唯一识别字时,第一个单字以小写字母开始;第二个单字的首字母大写或每一个单字的首字母都采用大写字母,例如:myFirstName、myLastName,这样的变量名看上去就像骆驼峰一样此起彼伏,故得名。驼峰命名法法的命名名规则可可视为一一种惯例例,并无无绝对与与强制,目的是增加识别和可读性。2 Java技技术规范范2.1 平台使用的的相关技技术平台使用的的框架包包分核心心框架包包和其他他必须的的框架包包,各框框架包本本身所依依赖的开开源包不不做列举举,由框框架包本本身的信信息来定定。2.1.1 基本核心框框架包平台采用SSpriing+Strrutss2+mmyBaatiss的三层层架构作作为基本本框架。(JDK1.6+)。参考如下:名称版本备注Strutts22.2.11Sprinng3.0.55mybattis-corre3.1.11不支持跨数数据库建建议,目目前开发发在myysqll上,现现网环境境在dbb2上mybattis-sprringg1.1.11MySQLL5.0Tomcaat7.0jQuerry1.82.1.2 其他框架包包除基本框架架外,平平台其他他将采用用的一些些框架包包,参考考如下:(JDDK1.5+)名称版本备注Sprinng SSecuuritty2.0.44Apachhe CCommmonss2.6常用的工具具包等SLF4JJ1.6.11Apachhe LLogggingg loog4jj1.2.115Apachhe AAnt1.7.11Oscacche2.4.11XMemccachhe1.2.55C3P00.9.11Dom4jj2.0commoons-beaanuttilss1.8.33Mybattis-sprringg1.1.11Hadooop-ccoree0.20.2-ccdh33u5Hive-clii0.7.11-cddh3uu5Hbasee0.90.6-ccdh33u52.2 程序设计标标准Java的的程序设设计标准准很重要要,原因因在于它它将提高高开发团团队各成成员的代代码的一一致性。一一致性的的提高会会使代码码更易理理解,这这意味着着它更易易开发和和维护。从从而降低低了应用用程序的的总开发发成本。你必须牢记记的是:你的JJavaa代码在在你已离离开并开开始另一一个项目目之后,会会保留相相当长的的一段时时间。因因此开发发过程中中一个很很重要的的目标就就是要确确保在开开发成员员或开发发团队之之间的工工作可以以顺利交交接,不不必花很很大的力力气便能能理解已已编写的的代码,以以便继续续维护和和改进以以前的工工作。如如果代码码难以理理解,很很有可能能被废弃弃和重写写。s2.2.1 命名约定我们将在整整个标准准中讨论论命名约约定,以以下是几几个基本本点:r 使用可以准准确说明明变量/字段/类的完完整的英英文描述述符例如,采用用类似ffirsstNaame,graandTTotaal 或或 CoorpooratteCuustoomerr这样的的名字。虽虽然象xx1,y1或fn 这样的的名字很很简短,输输入起来来容易,但但是我们们难以知知道它们们代表什什么、结结果是什什么含义义,因而而使代码码难以理理解、维维护和改改进。r 采用该领域域的术语语如果用户称称他们的的“客户” (clliennts) 为“顾客” (cuustoomerrs),那那么就采采用术语语Cusstommer 来命名名这个类类,而不不用 CClieent。许许多程序序开发者者会犯的的一个错错误是,不不去使用用工业或或领域里里已经存存在着很很完美的的术语时时,却生生造出一一些普通通词汇。r 采用大小写写混合,提提高名字字的可读读性一般应该采采用小写写字母,但但是类和和接口的的名字的的首字母母,以及及任何中中间单词词的首字字母应该该大写。r 尽量少用缩缩写,但但如果一一定要使使用,就就要谨慎慎地使用用这意味着应应该保留留一个标标准缩写写的列表表,明智智地从中中选取,并并且在使使用时保保持一致致。例如如,想对对单词“nnumbber”采用缩写,那么可从 nbr,no 或者 num 中选取一个,说明一下采用了哪一个(具体是哪个倒无所谓),并且只使用这一种形式。r 避免使用长长名称(不不超过115 个个字母)例如: PPhyssicaalOrrVirrtuaalPrroduuctOOrSeerviice 看起来来似乎是是个不错错的类名名,但是是名字太太长,应应该考虑虑重新给给它起个个短一点点的名字字,比如如象 OOffeerinng。 r 避免使用相相似或者者仅在大大小写上上有区别别的名字字例如,不应应同时使使用变量量名 pperssisttenttObjjectt和perrsisstenntObbjeccts及及anSSqlDDataabasse和 annSQLLDattabaase这这样的名名称r 避免使用下下划线作作为名字字的首末末字母以下划线为为首末字字母的名名字通常常为系统统保留,除除预处理理定义之之外,一一般不用用作用户户命名。更更重要的的是,下下划线经经常造成成麻烦而而且难输输入,所所以尽量量避免使使用。2.2.2 包名,类名名,方法法名,属属性名,常常量名命命名约定定r 包命名包命名全部部使用小小写英文文字母,中中间不允允许有数数字下划划线等特特殊字符符。r 类,接口命命名类,接口名名开头使使用大写写英文字字母,多多单词使使用驼峰峰命名法法。类名名中不要要使用下下划线和和数字等等特殊字字符,正正确的写写法示例例:HibbernnateeDaooSuppporrt。如果表示特特殊功能能的类,在类名的末尾加上所要表示的功能英文名称,如:*Listener,表示监听器等。r 方法命名方法命名使使用驼峰峰命名法法,方法法名中间间不要使用用下划线线和数字字等特殊殊字符,正正确的示示例:pproccesssingg()。方法的参数数以及方方法内部部的局部部参数可可自定,符符合要求求就行。r 特殊Beaan类的属性性命名约约定Bean的的属性命名名规则严严格使用用驼峰命命名法,不不允许使使用下划划线,名名字长度度最长不不要超过过15个个字符,确确实需要要长名字字时,适当缩缩写部分分英文字字母。r 常量属性命命名常量的命名名规则一一般为常常量名全全部采用用大写字字母,多多单词之之间使用用下划线线隔开,不允许许使用数数字等特特殊字符符,并且且常量的的声明一一定要是是staaticc fiinall的。r 普通类的属属性命名名普通类的属属性命名名除常量量依照常常量命名名法外,其其他的属属性的名名字使用用“英文名名字(首首字母大大写)”命名,多单词词可使用用驼峰命命名法或或用下划划线隔开开。2.2.3 注释约定本文还会对对注释进进行约定定,相关关注释风风格可以以在ecclippse中中导入ccodeetemmplaatess.xmm文件。以以下是几几个基本本点: r 注释应该增增加代码码的清晰晰度代码注释的的目的是是要使代代码更易易于被同同时参与与程序设设计的开开发人员员以及其其他后继继开发人人员理解解。r 如果你的程程序不值值得注释释,那么么它也很很可能也也不值得得运行 。r 保持注释的的简洁最好的注释释应该是是简单明明了的注注释。注注释不必必洋洋洒洒洒,只只需提供供足够的的信息,使使别人能能够理解解你的代代码。r 先写注释,后后写代码码写代码注释释的最好好方法是是在写代代码之前前就写注注释。这这使你在在写代码码之前可可以想想想代码的的功能和和运行。而而且这样样确保不不会遗漏漏注释。另另一种方方法是边边写代码码边写注注释。因因为注释释可以使使代码更更易理解解,所以以在程序序开发的的过程中中,也可可以利用用这一点点。如果果打算花花些时间间写注释释,那么么至少你你应从这这个过程程中获得得些什么么。r 注释信息不不仅要包包括代码码的功能能,还应应给出原原因例如,下面面例1中中的代码码显示金金额在 $1,0000 以上上(包括括 $11,0000)的的定单可可给予 5% 的折扣扣。为什什么要这这样做呢呢?难道道有一个个商业法法则规定定大额定定单可以以得到折折扣吗?这种给给大额定定单的特特殊是有有时限的的呢,还还是一直直都这样样?最初初的程序序设计者者是否只只是由于于慷慨大大度才这这样做呢呢?除非非它们在在某个地地方(或或者是在在源代码码本身,或或者是在在一个外外部文档档里)被被注释出出来,否否则你不不可能知知道这些些。2.2.4 快速浏览JJavaaDoccSun 公公司的 Javva DDeveeloppmennt KKit (JDDK) 中有一一个名为为 jaavaddoc 的程序序。它可可以处理理 Jaava 的源代代码文件件,并且且为 JJavaa 程序序产生 HTMML 文文件形式式的外部部注释文文档。JJavaadocc 支持持一定数数目的标标记,标标识注释释文档中中各段起起始位置置的保留留字。详详情请参参考 JJDK javvadooc 文文档。标记用于目的authhor namme类、接口说明特定某某一段程程序代码码的作者者。每一一个作者者各有一一个标记记。deprrecaatedd类、成员函函数。说明该类的的应用程程序编程程接口 (APPI) 已被废废弃,因因此应不不再使用用。exceeptiion namme ddesccripptioon成员函数说明由成员员函数发发出的异异常。一一个异常常采用一一个标记记,并要要给出异异常的完完整类名名。paraam nnamee deescrripttionn成员函数用来说明传传递给一一个成员员函数的的参数,其其中包括括参数的的类型/类和用用法。每每个参数数各有一一个标记记。retuurn desscriiptiion成员函数若成员函数数有返回回值,对对该返回回值进行行说明。应应说明返返回值的的类型/类和可可能的用用途。sincce类、成员函函数说明自从有有 JDDK 11.1 以来,该该项已存存在了多多长时间间。see ClaassNNamee类、接口、成成员函数数、字段段在文档中生生成指向向特定类类的超文文本链接接。可以以并且应应该采用用完全合合法的类类名。see ClaassNNamee#meembeer ffuncctioonNaame类、接口、成成员函数数、字段段在文档中生生成指向向特定成成员函数数的超文文本链接接。可以以并且应应该采用用完全合合法的类类名。verssionn teext类、接口说明特定一一段代码码的版本本信息。你注释代码码的方式式很大地地影响着着你的工工作效率率以及所所有维护护改进代代码的后后继开发发者的工工作效率率。在软软件开发发过程中中及早注注释代码码,会促促使你在在开始撰撰写代码码之前仔仔细考虑虑这些代代码,从从而带来来更高的的工作效效率。而而且,当当你重新新阅读数数天前或或者数星星期前所所写的代代码时,你你可以很很容易地地判断出出当时你你是怎么么想的,因因为这一一切都有有记录。2.3 开发规范2.3.1 项目结构说说明数据中心 FDCC项目采采用多mmoduule式式项目结结构,其其中包含含如下项项目,各各项目模模块功能能说明如如下:父模块模块依赖模块主要业务功功能描述述FDCFdc-ccommmonnone提供FDCC项目中中公用框框架包及及公用工工具包FDCFdc-mmoniitorrFdc-ccommmon提供FDCC项目中中监控告告警功能能FDCFdc-ccompputeeFdc-mmoniitorr, FFdc-ccommmon提供FDCC项目中中核心数数据运算算功能(包包括ETTL,汇汇总,分分发)。FDCFdc-rrepoortFdc-mmoniitorr, FFdc-ccommmon提供FDCC项 目目中数据据展现功功能(报报表展现现,短信信、邮件件展现,数数据导出出等) 2.3.2 整体包结构构说包结构整体体遵循按按功能不不同分包包,主要要体现出出平台的的整体架架构。1. 常用的包结结构如22.3.2常用用包结构构及命名名。2. 各个模块包包结构,如业务务层,控控制层,持持久层,异异常,模模型POOJO,常常量类,工具具类等。这这里的常常用类和和公共里里的不一一样如果果各大模模块在公公共类里里没有找找到,可可以在自自己的模模块中自自行扩展展。达到到遵循“开开闭”原原则。3. 常用xmll配置文文件结构构,如22.3.4配置置文件包包结构。4. 平台核心的的配置文文件,存存放在包包的根目目录,如如国际化化,数据据库连接接,日志志配置,缓缓存配置置,系统统级配置置等。5. 自定义xmml的sscheeme,ddtd,以以及tlld文件件存放于于Webb根目录录的WEEB-IINF文文件夹下下,文件件名全部部使用小小写字母母。2.3.3 项目模块包包结构及及命名1. Fdc-ccommmonr com.ffeinnno.fdcc.coommoon.cacche说明:所有有的缓存存结构。例例如平台台所使用用的Osscacche和和Ehccachhe缓存存技术。r com.ffeinnno.fdcc.coommoon.fframmewoork 说明:各个技技术层框框架类。如下子包 conntroolleer:控制层层提供的的共有框框架类。Moddulee:数据据beaan公共共基础类类。Bussineess:业务层层公共业业务控制制类,提提供通用用功能。Perrsisstennce:数据持持久层公公共数据据操作类类。r com.ffeinnno.fdcc.coommoon.utiils说明:存放放基本常常用的类类。例如如文件类类,字符符串类等等。2. Fdc-mmoniiterr , Fddc-ccompputee, Fddc-rrepoortr confiigs说明:该包包存放所所有关于于读取配置置信息的的类r Contrrolller说明:存放放在控制制层下面面的业务务类。例例如登陆陆,登出出,角色色切换等等。r Modulle说明:存放放各个业业务数据据beaan类。下分各个子业务包。r Businnes说明:存放放个业务务层公共共业务控控制类。下分各个子业务包。r Persiisteencee说明:数据据持久层层数据控控制类。下分分各个子子业务包包。r extennds说明:平台台扩展功功能类。下下分子包包,第一一级子包包名表示示扩展功功能模块块名。r Excepptioons2.3.4 各子项目模模块功能能包结构构按照各个层层次结构构包分完完:功能能包基本本分为22个包:1. 各个层次的的接口包包。2. 对于接口的的实现包包。2.3.5 配置文件包包结构配置文件夹夹命名为为connfiggs,可存放在在Webb根目录录下的WWEB-INFF文件夹夹下,也也可放在在与jaava claass文文件根目目录同级级的目录录下。cconffigss目录下下主要包包含以下下目录结结构:r commoons存放公共的的Xmll配置文文件,如如:sttrutts,sspriing,mybbatiis等的的xmll配置文文件。r core/*存放平台核核心模块块,各功功能模块块,扩展展功能模模块的所所需的配配置文件件。如各各模块的的sprringg,sttrutts,mmybaatiss配置文文件。2.4 命名规则2.4.1 共用类公共用类要要求以“功能英英文名称称(首字字母大写写)+ UUtills”驼峰命名名。例如如:日期期的英文文名为ddatee,按照照规则要要求,命命名为:DatteUttilss 。2.4.2 业务层q 业务层接口口要求以以 I +“模模块英文文名称(首字母母大写)”+ Mannageer命名名。例如如:导航航菜单的的英文名名为naaviggatoor,按按照规则则要求,命命名为:INaaviggatoorMaanagger ;q 接口的实现现类要求求以“模模块英文文名称(首字母母大写)”+ MannageerImmpl 命名。例例如:导导航菜单单的英文文名为nnaviigattor,按按照规则则要求,命命名为:NavvigaatorrMannageerImmpl ;2.4.3 展现层q 基类要求以以“模块块英文名名称(首首字母大大写)”+ActtionnBasse命名名。例如如:导航航菜单的的英文名名为naaviggatoor,按按照规则则要求,命命名为:NavvigaatorrActtionnBasse ;q 查询模块列列表类要要求以LListt +“模模块英文文名称(首字母母大写)”+ s + Acctioon命名名。例如如:导航航菜单的的英文名名为naaviggatoor,按按照规则则要求,命命名为:LisstNaaviggatoorsAActiion ;q 创建模块对对象类要要求以CCreaate +“模模块英文文名称(首字母母大写)”+ Acttionn命名。例例如:导导航菜单单的英文文名为nnaviigattor,按按照规则则要求,命命名为: CrreatteNaaviggatoorAcctioon ;q 修改模块对对象类要要求以MModiify +“模模块英文文名称(首字母母大写)”+ Acttionn命名。例例如:导导航菜单单的英文文名为nnaviigattor,按按照规则则要求,命命名为:ModdifyyNavvigaatorrActtionn ;q 删除模块对对象类要要求以RRemoove +“模模块英文文名称(首字母母大写)”+ Acttionn命名。例例如:导导航菜单单的英文文名为nnaviigattor,按按照规则则要求,命命名为:RemmoveeNavvigaatorrActtionn ;q 对模块对象象的操作作类要求求以“模模块英文文名称(首字母母大写)”+ Opeerattor + AActiion命命名。例例如:导导航菜单单的英文文名为nnaviigattor,按按照规则则要求,命命名为: NaaviggatoorOpperaatorrActtionn 。2.4.4 模型层q 模型层存放放的是实实体类,要要求以“模模块实体体英文名名称(首首字母大大写)”命命名。例例如:导导航菜单单的英文文名为nnaviigattor,按按照规则则要求,命命名为:Navvigaatorr ;q 属性字段参参照Beean属属性命名名规则。2.4.5 持久层q dao接口口要求以以 I +“模模块英文文名称(首字母母大写)”+ DAOO命名。例例如:导导航菜单单的英文文名为nnaviigattor,按按照规则则要求,命命名为:INaaviggatoorDAAO ;q 接口的实现现类要求求以“模模块英文文名称(首字母母大写)”+ DAOOImppl 命命名。例例如:导导航菜单单的英文文名为nnaviigattor,按按照规则则要求,命命名为:NavvigaatorrDAOOImppl 。2.4.6 XML配置置主要配置文文件包括括sprringg.xmml,sstruuts.xmll,myybattis.xmll等。由于这些文文件都是是分包存存放,所所以配置置文件统统一为sprringg.xmml,sstruuts.xmll,myybattis.xmll。如果果模块内内的spprinng,sstruuts,mybatis配置较多时,需要分文件来写,那么可直接在spring,struts,mybatis的后面直接加连接号“-”+名字来命名。如spring-common.xml。各模块的mmybaatiss sqqlmaap配置置文件放放到相应应模块的的Moddel包包下,一一个域模模型对应应一个ssqlMMap配配置文件件,如域域模型名名为Ittem,则则与域模模型相对对应的ssqlMMap文文件名为为Iteem.xxml。1、 sprinng.xxml平平台Spprinng相关关组件配置置。Modulleq 需要新建一一个用户户管理模模块maanaggerUUserrModdulee,设置置其父节节点是后后台管理理树的根根节点,也也就是设设置pareentMModeeulIId为#号,然然后它的的子节点点可以设设置相应应的父节节点为mmanaagerrUseerMoodulle,。q ationnURLL:指用来来访问这这个相关关模块的的命名空空间。q viewTTypee:查看类类型,是是指要说说明此模模块节点点是要在在前台显显示还是是后台管管理的。q imgURRL:指当我我们把这这些模块块展示在在相关树树上显示示的图标标链接。Fuctiionq 确定包含的的功能,如增加加用户:adddUseer。Methoodq 增加用户的的入口方方法:ssaveeAdddUseer。q actioonURR:指这个个入口方方法在当当前模块块命名空空间下的的访问地地址crreatteUsser.加一个个点是用用来判断断最后的的后缀,如如果是点点结尾程程序会自自动补齐齐访问链链接的后后缀,如如果是其其他后缀缀直接访访问这个个链接。q isDeffaullt:是否默默认入口口,一个模模块功能能只能有有一个方方法作为为默认入入口。2、 strutts.xxml平平台sttrutts组件件相关配配置,开开发相关关模块的的时候注注意相关关规范q packaage:我们可可以在模模块中定定义包以以避免命命名空间间重复,命命名规则则: sttrutts-xxxx(模块名名层)。q namesspacce:相关模模块的命命名空间间。这里里涉及几几个需要要注意的的地方:这个链链接会和和权限关关联由过过滤器判判断命名名空间管管理权限限功能。凡凡是命名名空间在在/puubliic/ccommmon这这个路径径下的系系统定义义为前台台没有权权限管理理的访问问链接,凡凡是命名名空间在在/maanagge/ccommmon这这个路径径下的系系统定义义为后台台没有权权限管理理的访问问链接。在在这个两两个路径径下面访访问的地地址,过过滤器不不作权限限判断。其其它访问问地址会会根据rrighhts中中配置定定义的权权限进行行过滤。q extennds:在sttrutts配置置中需要要考虑各各种拦截截器和错错误处理理跳转,配配置在sstruuts-intterccepttor.xmll这个文文件。Actioonq name:定义aactiion被被访问的的id命命名规范范与定义义javva变量量同样的的规范。q classs:就是我我们在sspriing.xmll文件已已经配置置了注入入acttionn spprinng bbeann的idd。q resullt:sstruuts处处理跳转转,两种种跳转方方式diispaatchher转转向和rrediirect重重定向。q interrcepptorr-reef:所使用用的拦截截器。在在strrutss-innterrcepptorr.xmml这个个文件有有相关注注释。3、 mybattis.xmll,平台台myBAATISS相关组组件配置置q 配置sqllMapp元素的的ressourrce属属性,指指示域模模型对应应的SQQL配置置文件的的包全路径径。4、 myBATTIS的SQQLMaap文件件配置域模型型的增删删改查SSQL语语句,存存储过程程等;配配置文件件名与域域模型同同名。q sqlMaap根元元素的nnameespaace属属性,设设置成域域模型的的本身的的名字。如如域模型型名字为为Iteem.jjavaa,那么么nammesppacee属性名名就为IItemm。q typeAAliaas,rresuultMMap,ccachheMoodell,seelecct,iinseert,ddeleete,uupdaate等等元素的的id属属性名以以“自定英英文名字字(首字字母小写写)”命名,多多单词使使用驼峰峰命名法法。q 在使用seelecct,iinseert,uupdaate,ddeleete元元素配置置增删改改查时,iid属性性的名字字规则为为,seelecct的iid属性性名以gget*开开头,iinseert的的以addd*开头头,uppdatte的以以upddatee*开头,ddeleete的的以deelette*开头头,配合合事务中中的配置置,多单单词使用用驼峰命命名法。可在这这些元素素中使用用复合查查询配置置。q proceedurre元素素,的iid属性性名以“功能英英文名(首首字母小小写)+Proocedduree”命名,使使用驼峰峰命名法法。q sql元素素的idd属性名名以“自定义义英文名名字(首首字母小小写)”命名。多多个单词词可使用用下划线线或使用用驼峰命命名法。q stateemennt元素素的idd属性名名与sqql元素素命名规规则一致致。sttateemennt主要要配置复复合查询询。5、 ehcacche.xmll 平台台ehccachhe缓存存实现配配置文件件6、 systeem-cconffig.xmll 平台台系统配配置文件件2.4.7 资源文件平台prooperrtiees以及及国际化化资源 配置文文件q commoons-loggginng.ppropperttiess 公共共日志配配置文件件。q confiig.ppropperttiess 平台台数据连连接,基基本参数数配置等。q log4jj.prropeertiies 平台日志志输出保保存等相相关设置置的配置置文件。q quarttz.ppropperttiess 平台台调度组组件相关关设置的的配置文文件。q oscacche.prooperrtiees 平平台osscacche缓缓存实现现配置文文件q strutts.ppropperttiess 平台台strrutss组件相相关系统统配置文文件(国国际化、上上传等)。国际化资源源文件使使用标准准JSTTL标签签绑定。通通过不同同的loocall读取不不同语言言的相关关资源,国际化资源文件中key的定义规则:模块名称.功能名称.key描述,但此全部小写,多个单词之间用下划线分割。国际化资源配置文件进行分割处理,属于本功能模块的国际化资源文件放到本模块的根包下,在JSP中使用JSTL标签的<fmt:message bundle=” />调用,在文件开头处加上< fmt:setBundle basename=” />设置。全局国际化化配置文文件如下下(直接接设置在在strrutss.prropeertiies文文件中):q messaagess开头的的资源文文件包含含相关的的国际化化资源内内容。q excepptioonMeessaagess开头的的资源文文件包含含异常处处理描述述的国际际化资源源内容。各功能模块块的国际际化配置置文件使使用如下下:q 文件名使用用“功能模模块名+”_”+messsagges”命名,如如seaarchh_meessaage.prooperrtiees。q 在JSP文文件最开开头处使使用标签签<fmmt:ssetBBunddle bassenaame=” />设设置全局局bunndlee,其中中bassenaame属属性名为为模块资资源文件件所在的的包全路路径,sscoppe为使使用范围围。q 在位于seetBuundlle设置置后使用用<fmmt:mmesssagee keey=”>>标签可直直接使用用该资源源文件中中的keey属性性。2.4.8 JSP文件件q JSP文件件统一存放放在应用的的Webb根目录录下,即即与WEEB-IINF文文件夹同同级。q 文件夹名按按照jaava对对于的功功能模块块名来设设置,文文件夹名名全部使用用小写字字母。q JSP文件件名以“自定英英文名(首首字母小小写)+“_”+功能能名”命名,多多单词英英文可使用驼驼峰命名名法。2.4.9 事务命名约约束平台中,所所有关于于事务处处理的,必必须遵循循以下命命名规则则:q 保存/填加加:以ssavee开头。q 修改:以uupdaate开开头。q 删除:以ddeleete开开头。q 获取:以gget开开头。q 查找:以ffindd开头。2.4.10 JS命名约约束与Javaa命名一一致,但但JS文件件名可小小写,甚甚至可以以加下划划线等特特殊符号号。3 数据库技术术规范3.1 概述本规范目前前只适合合部分数数据库的的相关定定义。3.2 命名基本规规则针对不同工工程模块块采用不不同的数数据命名名。开发时数据据库:ddev+系统名名。如:devvcommputte。试运行数据据库:ttestt+系统统名。如如:teestccompputee。正式运行数数据库:系统名名。如:commputte。3.3 数据库表空空间3.3.1 命名基本规规则表空间:ttbs_+系统统名。如如:tbbs_ccompputee。临时表空间间:tbbs_+系统名名+teempsspacce。如如:tbbs_ccompputeetemmpsppacee。3.4 默认用户方方案 Userr naame :raaysddataa/rooot Passswoord :rrayssdatta/rroott3.5 表的命名规规则、约约定命名基本规规则按照表在当当前数据据仓库内内不同数数据职能能划分,所所有字母母均大写写: