项目规范和基础配置_第1页
项目规范和基础配置_第2页
项目规范和基础配置_第3页
项目规范和基础配置_第4页
项目规范和基础配置_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

项目规范和基础配置

1.项目规范说明

1.1名词解释

<!)驼峰命名法:就是当变量名或函数名是由一个或多个单字连结在一

起,而构成的唯一识别字时,第一个单字以小写字母开始:第二个单字的

首字母大写或每一个单字的首字母都采用大写字母,例如:myFirstName,

myLastName,这样的变量名看上去就像骆驼峰一样此起彼伏,故得名。

(2)首字母大写的驼峰命名法:在驼峰命名法基础上首字母大写。

1.2数据库中表、视图、字段的命名

a)数据库表命名需以T开头,后接表的英文简写(首字母大写的驼峰

命名法),如TUscr表。

视图命名需以V开头,后接表的英文简写或视图的目的(首字母大写

驼峰命名法)。

b)字段的命名需以有意义的英文单词组合(首字母大写的驼峰命名法)。

13项目java代码包含义:严格遵照MVC模式

M模型层包括JavaBcan和其他数据操作,

C控制器层即通过Servlet负责页面的跳转。

所以src文件夹分为如下三部分:

bean包——内含与数据库表相对应的JavaBean对象,

JavaBeanOP还有对应JavaBean与数据库的操作。

servlet包包括所有与页面交互的Servlet操作:

util包——包括公用的或特殊用途的函数。

具体如下图:

019

tn.;£1b・3

I4[Jjtp«r«onj■v

UftJ[,t]tp«rconop.jav<

i=[B

bR,|T)Li»tS«rvl«tjwvw

(s出util

Uti㈤ConstJ<v<

i*i|HD<t«Fun.j<v«

fL4JDBConnect.J<v«

GD[T)MORJ-

w;/]P«C«1B*tJ<V<

UtiIDStrFun.J*v*

1.4项目中java包的命名规则:

a)bean包的名称命名规则为bean.编程人的拼音缩写.编写模块的英文单词;

b)sendet包的名称命名规则为servht.编程人的拼音缩写.编写模块的英文单

词:

c)util包的名称命名规则为uiil.编程人的拼音缩写。

d)注意:命名规则的前两项应为小写(即XX包.编程人的拼音缩写),最后

一项(即编写模块的英文单词或是util包的第二项)应为大写。具体格式如图:

一刀STC

田jbean.cy.Person:

ffjxervlot.cyPerson

由util,cy

1.5Bean包中JavaBean文件的名称

bean中的JavaBean文件能和数据库中的表对应起来,以数据库中

的表来命名JavaBean文件,如TUser表对象bean包的TUser.java。如有不

与数据库表对应JavaBean可自行诜择有意义的英文单词或组合来命名,但应

首字母大写的驼峰命名法。

1.6Bean包中JavaBean对象的数据库操作文件名称

所有JavaBean与数据库的操作,一律命名为JavaBcanOP的形式。如

TUser对象的数据库操作命名为TUserOP.java,其中包括所有与数据库的操作。

同时每个0P文件必须含有函数insert()、update()和delete()分别表

示新建、修改和删除的含义。具体代码可参照src.bean.tpersonop.java来写。

1.7Servlet包中文件的名称

servlet文件命名格式为JavaBean对象名+对JavaBean的操作(如新增

Add,修改Modify,删除Delete,列表List,搜索Search等动词)+Servlet«

如对TUser表的操作TUserAddServlet为新建TUser对象的servlet、

TUserModifyServlet为修改TUser对象的servlet、TUserDeleteSeivlet

为删除TUser对象的servlet、TUserListServlet为显示TUser对象列表的

servlet等等。

1.8Util包中文件的名称

首字母的大写的驼峰命名法,保证文件名有意义的英文单词。目前系统中

的公用java文件都在util包下,如图:

3田util

囹[JJConst.java

(2)@DAteFun.java

囹[JjDBConnect.java

@ND5.java

囹J£lPQgolidjw

囹①StrFunjava

其中Const.java表示系统用到的通用常量。

DateFun.java为系统对Dale类型的操作函数。

DBConnect.java为系统通过的数据库连接方法。

MD5.java为MD5加密算法,用于用户登录密码的加密处理。

Pagelist.java为通用的分页显示。

Strbun.java类为servlet文件去request对象中对象attribute属性时

的转码方法。

1.9Java文件中函数的写法

java文件中函数命名最好以动词.名词的形式。如想根据ID获得某个对象,

可以命名为getXXBylD,苜字母小写,其余单词为大写。函数中局部变量的命

名为全部小写,常量为全部大写。

l.io.JSP文件的写法

首页和登录页的JSP文件放在根目录下,其余文件按照英文含义放入响应

的文件夹下,每个文件夹下包括了该模块的全部操作页面。

如图:

土AccountTyp®

纪&

*Arr・y・R・cord

*CotwFintnct

♦kyConFinane♦Account

t,.yCuston*rProbitfl*

♦FrontQu«ztionD«tl

t与FTA&nn

建议文件夹的命名为首字母大写的驼峰命名法。

1.1KEXT2的JS文件放置

与每个页面对应的JS文件放到/inc/编程人的拼音缩写(全部小写)文件夹

下。如图:

0己inc

dLext

a我型〃

pjkcltntftrji

QImcBeiitctrj»

stud«ntN«nec«r.

£31x1jx

J*iy.jxp

建议命名为有意义的英文单词或组合,首字母小写的驼峰命名法。如有大家•起

用到的通过JS函数,建议新建一个通过的JS文件,大家一起调用其中的函数,

1.12数据库的连接的写法

详细参照sre下bean.tpersonop.java文件。简单说明insert函数写法,代码

如下:

*作用:向tperson表中添讥I新纪录

♦*♦/

publicvoidinsert(Objectbean)

Stringsql="insertinto(person

(TPcrs<)nID.TPcrM)nNamc,TPcrx()rTypc,TPcrx<)nNum)values(?,?,?,?)";

DBConncctdhc=null;

try

]

dbc=newDBConncct(sql);

dbc.sctStnng(1X(tp^rson)bean).gctIPersonIDO);

dbc.sctString(2,((tpcrson)bean),gctTPcrsonNamc());

dbc.setString(3.((tpe!,son>beanJ.getTPersonTypeO):

dbc.jveiSlring(4.((iperson)beanhgeiTPersonNunU));

dbc.cxccutcUpdatci);

I

catch(Exceptionc)

I

Systein.out.println(e.gelMessage());

Anally{

dbc.closeO;

I

I

注意:

I、建议所有insert、update和dclclc函数参数都有Object对象;

2、连接数据库调用DBConneci中的newDBConncci()方法,函数sql参数,调用

对应的seiXXX方法替换相应类型的?,最后执行操作:

3、调用try-catch-finally的格式,finally用来关闭数据库的连接。DBconnect初

始化在iry代码块之外。

1.13List的写法

详细参照scrFservlet!.istServlet.java文件,分页显示时•传入rotakql和

sql两个查询语句,total语句为查询所有的表中对象,sql为调用对应页面的

sql语句,二者作为参数传入JavaBean的OP文件中,调用gelresull()方

法返回List列表。

1.14代码注释

每一个函数的上方必须要写注解。格式如下:

/8**

余作用:向tperson表中添加新纪录

**/

其中作用内写明该函数的主要用同时可选择写下传入参数含义和返回参

数的含义。当存在自认为不容易理解的代码时,需及时写下该代码的含义。通常

应保证每5行代码内含有一行注称。

1.15Session和forward

只有在一个对象变量需在多个页面共享时,才使用session的方式,其

余都使用请求转发方式。请求转发代码如下:

ServletContextsc=this.getServletContext();

RequestDispatcher

rd=sc.getRequestDispatcheit"/sample/index.jsp");

rd.fbrward(request,response);

2.数据库汇总规范

2.1首先每个人要做的是先记录下数据库中你负去哪些表。

2.2每天某个时间(商讨定),汇总人中询诃每个人(QQ群中,注意关注)是否有数据库

表的结构增删改,有的人员及时响应。否则,等待下次询问!(紧急修改问题可联系汇

总人)

2.3如果你有数据表的增加,修改,删除操作(必须注意修改自己的EA文件,为了以后形

成完整的开发数据字典),及时响应(报好在你项目相应文件更新服务器前)负由汇总

人询问。(以mysql为例,把库中你有变动的表选中,然后备份出来发给负货汇总人)

2.4负责汇总人接到几个变动表每份后,将总库中对应榭去,然后还原变动表进库。步向其

他开发人员通知,表有改动,需要的提出申请!!!

2.5其他人员申请时,如果自己负责的众多表中有也要测试数据,可以把这些表备份,并附

文字说明发给汇总人。

2.6负责汇总人,将申请者,备份的这些表从自己旧库中出除,并还原。并把总体数据库备

份给申请者。

2.7申请者,删除整个库(安全考虑最好也备份下),然后把汇总人员发的库备份还原。

附加说明:

1、申请人,这里特指汇总人员通知了有了哪些变动后,其他那些索取最新总库的人员。

2、第4步,第5步这里,汇总人仍不需要等所有申请人反映,而是接受一个处理并发送一

个。

3、为了减轻汇总人员负荷,申请人注意.你确定距离上次申请时间较短,你的最新测试数

据很少,就不要因为这一点,再去备份变动的表给汇总人员索取鼓新”(同样如果数

据表结构增删改了,但项目文件提交后•其他人更新不会有问题,可超时辍下,等待汇

总人协询问)

4、和申请者一样,如果修改表结构人,负声范围中的其他表虽然结构未变化,但有重要测

试数据的可•同备份,并说明清焚。

5、之所以,这样做防止大家项目CVS同步了,但由于不知道谁自己改了表,没及时通知

大家,导致大家项目都运行不起来,陷入瘫痪状态。所以每个人必须严格按照流程做

事。也为r以后生成文档准南方便。

6、有良好建议请联系我,以后继续完善该手册!!

7、参考操作见下图:

你修改什么表,备份时,就在哪几个表上打钩!”不要选其他表

有的mysql版本有这个问题可能!!所以备份后大家看卜里面是不是就那几个选中的袁。不

是的话,先删掉其表,然后再备份发给汇总人

rInforMation

BackupProject

ontrol

B*kupPtCfKt

Definethenameandcontentofthebackup

UserAdmimstrMion

Gtnefal

ServerConnections

ProiKCtNameNamefotthisbxkupproject

S<hemxt3BackupContent

:RtpWMionStatus

JBackupD3

mformation.schemj□

R«fto<e

•noovationpoMdb

JUIOS日

Bxkup8*aS

』wPr,ySa.eProjectF,,《WEMb.up

3.623服务器连接方法(CVS)

3.1打开MyEclipse,在FiIe菜单下选择Import。如图2T。

PJava-'WyEcJipseEnterprise

fileEditSourceRefacjorfiavigateSearchfroject

KLt+Shi£t+N►

OpenFile』.

CloseCtrBW

CloseAllCtrHShiftn

Ctrl+S

随SaveAs...

而SaqAllCtrHShift+S

R«v«ri

Move..

Renane...F2

RefreshF5

ConvertLineDelimiter;To►

西Ennt...Ctrl+P

SvitchVorkspac•►

Import...

必Expert..

PropcrtiAlt+Ent«r

图2-1

3.2.在Import窗口中选择CVS下面的ProjectsfromCVS.如图2-2。

图2-2

3.3点击Next,进入图2-3所示界面,选择Createanewrepositorylocationo

116224/project

116.24:/proj«ct

116.224/project

图2-3

3.4点击Next进入图2-4所示界面,填入相应的信息即可。(如:Host:

121.248.196.1,Repositorypath:/project,User和Password中输入自己在

服务上设置的用户名和密码即可)

ICheckoutfFOBCVSn

OU"porg:

IInSave.passvorj^

iSav«dpazzvordsor。storedonyourccnput«rin■£xl«thatizdi££ibutnot

tmpcqqihla,fftr»nintruder♦AvaaA

Configuroconnectionprofaroncoz

⑦|<-ack|「Next>]Emish|Cancel

图2-4

3.5点击Next进入图2-5界面,说明连接成功,选择相应项目,选择Finish

即可。

图2-5

4.关于CVS源码同步及项目远程部署管理细则

4.1项目开发人员应遵循的规则

I、项目开发人员在每次修改程序之前,必须先连接623的CVS服务器将整个项

目的源码进行同步:

2、项目开发人员在修改完程序的当天必须与623的CVS服务涔进行同步:

二项目开发人员修改完并与62?的CVS服务器同步以后,必须再次对本次修及

的内容进行测试。

4、原则上项目开发人员不允许直接修改623的CVS服务器里的源码,若在某些

特殊情况下确实做了修改,则必须尽快同步到自己本机的MyEclipsc中。

5、项口开发人员如果修改了数据库的表结构,必须将改动的内容直接以SQL脚

本的形式(Alier修改语句)提交给项日部署人员。

6、项目开发人员也不允许直接修改远端服务器中的程序。

4.2项目部署人员应遵循的规则

I、由于目前乘用WAR包部署的方式,因此,项目部署人员在每次进行远端部

署之前,必须先将本机源码与623的CVS服务器中的源码同步,然后才可以

制作WAR包,最后进行远程部署,即项目部署人员本机的程序与623服务

器中的程序以及远端服务器中的程序要保证完全一致。

2、项口部署人员在部署项目程序的同时,也要招最近接收到的数据库修改的

SQL脚本在远端服务器中进行执行。

3、部署完毕之后,项目部署人员需要通知项目组各开发人员及快测试本次新增

或修改的模块。

4、为了不影响用户的对系统的正常访问,以上部署和测试工作只能在用户非正

常工作时间进行。

5、项目部署人员不允许直接修改远端服务器中的程序。

4.3CVS源码同步中的常见问题及注意事项

1)提交冲突:

每天开始做项目之前首先要从服务器端更新项目到本机,这是因为在Eclipse

和CVS服务器同步之前,可能别人以对项目进行了修改,导致服务器端版本与

大地不同步,Eclipse中没有刷新而导致同步报错。比如当前有两个用户guesll

和gues2,两人电脑上的XXX.java文件版本都是1.2,guesll修改了一下提交上

云,版本变为1.3,因为是第一次提交,所以不会报错。guesl2编的慢一些.后

提交,这时就会和guesll提交上去的代码产生冲突。这是因为如果用guest2的

代码更新CVS,guesil的代码就会被冲洗抻,所以Eclipse就会报文件冲突。

2)解决方法:

右键单击要提交的文件,选小组里的更新,此时XXX.java文件的版本已变

成1.3,更新后的冲突也标记出来了,再跟据代码中的冲突合并修改,改完后提

交到CVS上,此时版本变为1.4。还可以将Eclipse设置为自动刷新,操作方法:

\Vind()w->Prcfcrcnccs->Workbcnch.选中Refreshworkspaceautomatically»但这种

方法不推荐使用,如果项口组成员上传无用的测试文件,都会更新到本地,使项

目看起来比较混乱。

建议:

(I)将项目做成模块目录,每个人负贵自己的模块,这样就不容易造成重复

修改。

<2)做到每日提交,并且要求代码是完整可运行的,保证其它人更新运行你

的代码后不会产生错误。

(3)任何人做修改时都要更新最新版本到本机。

此外,CVS不允许进行删除服务器端文件,所以大家最好不要提交临时文

件及临时目录,如编译产生的文件和目录。还有不要传和项口无关的程序.二去,

否则会导致服务器臃肿,结构不清晰,不便项目组其他成员查看。如果有•些测

试用的文件上传,要新建一个临时项目上传,与主项目分离。这样小组成员在更

新项目的时候就不会把一些无用的文件更新到本地.

不同功能模块的文件分开Commii,同一功能模块的文件一次Commit,对于

分析错误、减少冲突、版本回退等有酉助。

如果Eclipse项目前有">”符号,这是做了修改的程序还没有提交到CVS

服务器上,只要提交一下此标记就会消失。

5.服务器配置说明

5.1项目部署与服务器启动

1、项目部署:

将打女/的war包放入C:\Program-ilesXApochcSoftwareroundotion\Tomcat2、2、

5.5\webapps目录卜即可,注意先冬份之前的项目。

服务器启动:

(1)采用C:\ProgramFiles\ApacheSoftwareFoundation\Tomcat5.5\bin目录下的

tomcat5.exe启动,这个启动方式会弹出命令窗口可以杳看错误信息,如果要关

闭服务涔只要把窗口关闭即可。

0C.\Pr«^r**Softv*r«Fonad«ti«a\T<»Bcat5.5\bin\to«e*tS.exeBl0E3

2B10-8-522:51:55org.logic*Icobwebs.proxoo1.HouseKeepersweep

警告:#0309wasactivefor73953raillisecondeandhasbeenrefwvedautorwaticaly.M

TheThreadresponsiblewasnaned*http-80-Proccssor4,buttheSQLitperfH

omedisunknownbecausethetracepropertyisnotenabled.

2010-8-522:51:55org.losicalcobwebs.p^oxool.HouseKeepersweep

警告:#B310iKisactivefor63234nilliseconds«ndh«sbeenrenouedAutoiwnticaly.

TheThreadresponsiblewasnaned,http-80-Procefisorl2*,butthelastSQLitper

fomedisunknownbecausethetracepropertyisnotenabled.

2Hl8-8-522:51:55org.logicAlcobwebs.proxool.HouseKeepersweep

委告:110311wasactivefor63234nillisecondsandhasbeenrenovedautorwaticaly.

TheThreadresponsibleWASnAncd*http-80-Proccssorl2*,butthel>stSQLitper

fomedisunknownbecausethetracepropertyisnotenabled.

2010-8-522:51:55org.logicaIcobwebs.proxool.HouseKeepersweep

誓安:0H312UASactivefor63203nillisecondsAndHASbeenrerwvedautorwoticaly.

TheThreadresponsiblewasnaned*http-80-Processorl2*,butthelastSQLitper

fomedisunknownbecausetkctracepropertyisnotenabled.

2010-8-522:54:12org.apache.catalina.corc.ApplicationContextlog

信息:null

2R1H-8522:54:12org.Apache.catalinA.core.Applicationcontextlog

信息:null

2010-8-522:54:13org.apache.catalina.core.Applicationcontextlog

佶息:null

2010-8-522:54:13org.apache.catalina.core.ApplicationContextlog

信息:null

(2)采用C:\ProgramFiles\ApacheSoftwareFoundation\Tomcat5.5\bin目录卜.的

tomcat5w.exe启动,会弹出窗口,按start启动tomcat,按stop关闭tomcat。

5.2服务器java内存溢出的详细解决方案

服务器内存溢出类型:

jtva.lang.OutOfMcinorjError:PcrmGcnspace

解决方案:

打开tomcat5.5的安装日亲,双打开bin文件爽,双击ionjcat5w.exe.点击第四个标签"java",

在Javaoptions中添加如下内容:

-Xms800M

-Xmx800M

-XX:PennSize=12SM

-XX:MaxNcwSize=256M

-XX:MaxPcnnSizc=256M

点击确定即可°

5.3域名配置说明

U)找到C:\WINDO\VS\systcm32klrivcrs\ctc目录下的域名解析文件host文件,用记事本打

开进入

II是服务器IP地址

■圮事本■向E3

文件CD««•1)格式如超助QP

1Copyright(c)1993-1999HicrosoFtCorp.

>

1ThisisasanpleHOSTSfileusedbyMicrosoftTCP/IPForWindows.

1

1ThisFilecontainsthenappingsofIPaddressestohostnanes.Each

lentry

温馨提示

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

评论

0/150

提交评论