J2EE OA项目开发日记(缺少项目经验的可以仔细阅读)5808.docx

上传人:you****now 文档编号:62805509 上传时间:2022-11-22 格式:DOCX 页数:125 大小:545.12KB
返回 下载 相关 举报
J2EE OA项目开发日记(缺少项目经验的可以仔细阅读)5808.docx_第1页
第1页 / 共125页
J2EE OA项目开发日记(缺少项目经验的可以仔细阅读)5808.docx_第2页
第2页 / 共125页
点击查看更多>>
资源描述

《J2EE OA项目开发日记(缺少项目经验的可以仔细阅读)5808.docx》由会员分享,可在线阅读,更多相关《J2EE OA项目开发日记(缺少项目经验的可以仔细阅读)5808.docx(125页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、我现在正在做一个J2EE的OA项目,基于安全保密考虑,项目名称以下称为J2EEOA。现在,项目的系统需求和设计阶段都已做完,正处在编码阶段。在这个过程中有很多开发心得和体会,不吐不快。在这里,整理出来与大家一同分享。 文章中应用大量专业术语,所以在阅读前,您应有一定的基础知识,如java language、jsp、servlet、j2ee、ejb、ejb-ql、structs(MVC)、jboss、ant等。为了帮助大家更好的阅读,把相关知识链接列在下面。 1JBoss Application Server : http:/www.jboss.org/ 或者 2Java Language Sp

2、ecification 或者 3JDK 4J2EE 5ANT http:/jakarta.apache.org/ant/index.html 6Structs http:/jakarta.apache.org/struts/ 7JSP 8Servlet 9EJB 10EJB-QL 安装和配置JBoss Application Server今天的工作主要是安装JBoss。下面在介绍JBoss之后重点讲解配置JBoss Application Server后我总结出的经验。 为什么要选择JJBoss作作应用服务器器?JBoss是一一个符合标准准的开放源码码的J2EEE应用服务器器套件的名称称,当前

3、最新新版本为3.0。JASS套件包括JJBossSServerr EJB v2.0 Contaainer 和servver, JJBossMMQ JMSS 1.0 impleemetattion, JBosssNS JNNDI immplemeetatioon,JBoossCMPP advaanced O/R mmapperr和JDBCC dataa objeect sttoragee impllemetaation以以及JAASS-baseed JBoossSX securrity fframeeeork。所所有的JBooss应用程程序都是1000%纯jaava应用程程序。 JBBoss 3

4、3.0包括最最新的微型JJMX内核、完完整的HTTTP Serrver(JJetty或或Tomcaat)、JCCA、EJBB2.0,是是一个完整的的、丰富的基基于J2EEE规范的应用用服务器。 JBosss3.0遵循循EJB1.1规范和部部分EJB22.0规范。在在这方面,它它类似Sunns JJ2SDK Enterrprisee Edittion (J2EEE),但JBBoss服务务器内核仅支支持EJB服服务器。JBBoss内核核不包括支持持Severrlet/JJSP的WEEB包容器,尽尽管它捆扎了了Tomcaat或Jettty。最小小内核需要是是指JBosss要求的最最小内存和磁磁盘空间

5、。JJBoss可可以运行在内内存为64MMRAM的机机器上,要求求很少的磁盘盘空间(包括括源代码)。SSuns J2EE要要求最少1228MRAMM、31M磁磁盘空间。由由于要求较小小内存方面的的原因,JBBoss启动动比Sun J2EE快快10倍并自自带了一个数数据库服务器器(Hypeersoniic SQLL Servver),在在JBosss启动时数据据库服务器自自动启动(SSuns J2EE也也自带了一个个ClouddScapee SQL serveer,但ClloudSccape SSQL seerver必必须同Sunns J22EE分开启启动)。 JJBoss完完美的功能之之一是它

6、支持持“热”部署署。这个意思思是部署一个个Bean就就是拷贝JAAR文件到部部署目录那么么简单。如果果你正在Beean已经部部署的情况下下进行这个操操作,JBooss自动卸卸载Beann,再部署新新版本的Beean。JBBoss是基基于LGPLL的分发,也也就是说它是是完全免费的的。 (编译译自:htttp:/wwww.jbboos.oorg) 安装JAS3.0首先在Winddows下安安装JAS,安安装成功后,再再将JAS移移植到Linnux服务器器上。 安安装JDK11.3,在安安装JAS之之前,必须在在JAS服务务器上安装JJDK。 下载JASS3.0的安安装程序 首首先去JBooss站

7、点下下载JAS33.0的安装装程序,文件件名jbosss-3.00.0_toomcat-4.0.331.zipp 下载地址址1: htttp:/www.jjboss.org/ddownlooads.jjsp 下载地址22: htttp:/ 释放安装装程序 下载载后,使用压压缩工具WiinRAR,把把jbosss-3.0.0_tommcat-44.0.311.zip释释放到c:,释放之后后,在c:下下出现jbooss-3.0.0_ttomcatt-4.0.3目录,它它就是JASS的主目录。 运行JAAS JASS的主目录下下有一个biin目录,它它是JAS的的运行入口,rrun.baat是JAS

8、S的winddows版运运行程序,rruh.shh是JAS的的unix版版(包括liinux、ssolariis等操作系系统)运行程程序。双击rrun.baat文件,弹弹出运行窗口口。 图片1 刚开始始运行JASS的窗口图片2 运行中中的JAS窗窗口JAS运行成功功后,80880端口被TTomcatt的Servvlet引擎擎占用,80082端口被被JBosss的代理管理理占用。Toomcat占占用的80880端口可以以被修改的,下下面将会介绍绍到。 JAAS的目录及及其描述 约定说明:在下面,我我将JAS中中的一些目录录进行说明和和描述。 JJAS的主目目录描述为$jbosss.homme J

9、JAS的biin目录名称称为bin,描描述为$jjboss.bin,它它用来存放JJAS的启动动程序和运行行时的包,在在Windoows下JAAS的启动程程序为runn.bat,在在Unix下下JAS的启启动程序为rrun.shh。 JAAS的cliient目录录名称为cllient,描描述为$jjboss.cliennt,它用用来存放JAAS所用的一一些包。 J2EE Appliicatioon 所在目目录名称描述述为$jbboss.cconfigguratiion,JJAS在缺省省状态下的名名称为deffault,可可以通过在运运行启动程序序时加上参数数“-c”来来指定名称。例例如: ru

10、n.batt -c JJ2EEOAAJAS的库目目录描述为$jbosss.homme/seerver/$jbooss.coonfiguuratioon/liib,在JAAS启动时,JJAS会自动动加载此目录录下所有的库库文件(扩展展名为JARR的压缩文件件)。 JJAS的部署署目录描述为为$jbooss.hoome/sserverr/$jbboss.cconfigguratiion/ddeployy,此目录存存放J2EEE Appllicatiion、EJJB和一些配配置文件,如如mysqll-servvice.xxml、maail-seervicee.xml、ttomcatt4-serrvi

11、ce.xml、jjms-seervicee.xml等等。 JAAS的配置目目录描述为$jbosss.homme/seerver/$jbooss.coonfiguuratioon/coonf,此目目录存放JAAS的配置文文件,如jbboss-sservicce.xmll、log44j.xmll、stanndardjjaws.xxml、sttandarrdjbosss.xmll、stanndardjjbossccmp-jddbc.xmml等。 JAS日志志目录描述为为$jbooss.hoome/sserverr/$jbboss.cconfigguratiion/llog,JAAS在缺省状状态下的日

12、志志文件名为sserverr.log。,可可以通过在修修改log44j.xmll来指定日志志文件名,如如下所示: 图片3 修改llog4j.xml指定定日志文件JAS的Toomcat目目录描述为$jbosss.homme/caatalinna,它用来来提供Serrvlet/JSP引擎擎。 下面面是一个简单单的JBosss目录结构构图: |-bin|-clieent|-servver |-$jbosss.conffiguraation|-conff|-deplloy|-log让JBoss和和自带的Toomcat同同时运行 JAS3.0自带了一一个Tomccat Weeb包容器,但但初装时,TTo

13、mcatt是不能单独独启动的,必必须在JASS内运行。通通过如下配置置可以让Toomcat单单独运行。 修改JAAS下的toomcat44-servvice.xxml文件,将将Tomcaat的Htttp端口设为为9090,下下面是tommcat4-serviice.xmml的部分代代码: 图片4 修改TTomcatt的Httpp端口 拷贝$jjboss.home/lib目目录下的两个个JAR文件件jaxp.jar、ccrimsoon.jarr到$jbboss.hhome/catallina/ccommonn/lib目目录。 分别启动TTomcatt和JBosss。在$jbosss.homee/

14、cattalinaa/bin目目录下输入sstartuup.batt。tomccat运行了了,它占用了了8080端端口。在$jbosss.homee/binn目录下输入入run.bbat,JBBoss也运运行了,它的的HTTP 引擎占用了了9090端端口。 到此此JAS已经经可以用了,下下面来配置JJAS连接数数据库。 连接数据库说明:项目要求求的数据库为为Mysqll数据库,故故必须将JAAS和myssql数据库库服务器连接接起来。 下下载mysqql的jdbbc驱动程序序 由于用jddbc连接mmysql要要使用orgg.gjt.mm.myysql.DDriverr驱动程序,故故先下载my

15、ysql的jjdbc驱动动程序,按下下面的地址将将文件mm.mysqll-2.0.13-yoou-musst-unjjar-mee.jar下下载下来。 下载地址:http:/souurcefoorge.nnet/prrojectts/mmmmysql/ 释放驱动程程序 上面下载的的驱动程序包包括了mm.mysqll-2.0.13-biin.jarr、开放的源源代码和一个个LICENNSE,用WWinRARR释放压缩文文件,其中mmm.myssql-2.0.13-bin.jjar就是mmysql的的jdbc驱驱动程序,驱驱动程序文件件名中的2.0.13是是驱动程序的的版本号。 配置驱动程程序 方

16、法一:(推荐使用用此方法) 将mm.mmysql-2.0.113-binn.jar拷拷贝到JASS的库目录即即$jbooss.hoome/sserverr/$jbboss.cconfigguratiion/llib 方方法二: 在在系统变量中中加入JBOOSS_CLLASSPAATH,值为为mm.myysql-22.0.133-bin.jar的位位置: 例如如: 在Windowws操作系统统下set JBOOSS_CLLASSPAATH= cc:J2EEEjdbbcmm.mysqll-2.0.13mmm.mysqql-2.00.13-bbin.jaar图片5 设置系系统变量JBBOSS_CCL

17、ASSPPATH在Unix操作作系统下setenv JBOSSS_CLASSSPATHH /usrr/locaal/jdbbc/mm.mysqll-2.0.13-biin.jarr在Linux操操作系统下JBOSS_CCLASSPPATH=/usr/llocal/jdbc/mm.myysql-22.0.133-bin.jarexport JBOSSS_CLASSSPATHH安装Mysqll服务 $jbooss.hoomeddocseexampllesjcca目录存放放着JAS提提供的数据库库映射服务配配置文件,包包括Oraccle、DBB2、Infformixx、MsSQQL、Myssql、H

18、yypersoonic SSQL、Poostgrees SQLL等很多期望望的数据库。将将mysqll-servvice.xxml文件拷拷贝到$jjboss.home/servver/$jbosss.conffiguraation/deplloy目录。 配置mysql-service.xml 在mysql-service.xml中修改以下几项的值,其它项是否要改根据情况而定。 JndiName ConnectionURL DriverClass UserName Password mmyProjjectDSS jdbc:myysql:/192.168.00.6/myyProjeect orgg

19、.gjt.mm.myysql.DDriverr tesst tesst jboss.jjca:seervicee=RARDDeployyment,name=JBosss LocaalTrannsactiion JDDBC Wrrapperr 源代码:立即下下载 到此,所有有的准备工作作都做好了,现现在只需运行行JAS,看看一看这台连连接Mysqql数据库的的JAS是否否配好了。 如果JASS在Winddows下运运行正常,就就把JAS移移植到Linnux服务器器上。在Liinux 服服务器上运行行JAS要用用run.ssh来启动。开发前的约定(11)今天进入可开发发前的准备阶阶段。在开发发项目

20、前,要要求每位开发发小组成员都都必须先阅读读以下约定,严严格按以下约约定来进行开开发。 系统框架系统总框架采采用SUN J2EE框框架,使用JJAVA/XXML技术和和组件技术, 基于Appplicattion sserverr开发。 项目中的程程序必须严格格按J2EEE1.3规范范来编码,EEJB建议采采用2.0规规范编码,尽尽可能多使用用EJB 模模式设计,参参考技术文档档如下: 11.J2EEE Tuttoriall j2ee-1_3-ddoc-tuutoriaal-draaft5.ppdf 2.JBooss 3.0Quicck Staart Guuide 3.EJBB Desiign

21、Paatternns 开发环境测试用Appplicattion sserverr采用JASS,JAS 配置于Liinux OOS下,IPP地址:1992.1688.0.6。登登录用户名:J2EEOOA,密码:J2EEOOA。登录fftp工具建建议使用SSSH Seccure SShell或或LeapFFTP,fttp地址为1192.1668.0.66:22。 项目开发发源码目录为为/homee/locaal/jbooss/appplicaationss/J2EEEOA/srrc,项目开开发文档目录录为/homme/prooduct/J2EEOOA/。 数据库服服务器IP为为192.1168.0

22、.222,数数据库采用MMysql,管管理工具为pphpadmmin,登录录数据库的用用户名为teest,密码码为testt。 源代码目录规范范每位开发小组成成员一定要绝绝对遵守以下下创建源代码码目录的规范范。 项目开开发目录结构构简图: |-appss |-J22EEOA |-addmin|-compponentts |-a compoonent|-moduules |-a modulle|-lib |-annt|-builld.proopertiies图片6 项目开开发目录结构构图项目开发目录结结构说明: (说明:根根目录)|-appss (说明:此目录下放放应用程序的的代码) |-J22

23、EEOA (说明:此此目录为放JJ2EEOAA应用程序的的代码) |-addmin (说明:此目目录为放项目目的admiin应用程序序的代码)|-compponentts (说明明:此目录下下放应用程序序组件的代码码) |-a compoonent (说明:此此目录为放一一个组件的代代码)|-moduules (说明:此目目录下放应用用程序模块的的代码) |-a modulle (说明明:此目录为为放一个模块块的代码)|-lib (说明:此此目录下放项项目开发工具具) |-annt (说明明:Ant工工具,包括bbin和liin目录)|-builld.proopertiies (说明:此文件件

24、定义项目开开发共用的环环境变量,如jboss.home、jjboss.confiigurattion、sservleet-libb.pathh等)模块、组件开发发目录结构简简图: |-builld|-etc |-muulti-llangs|-lib |-doocs |-ejjb |- METAA-INF |-j22ee |-MMETA-IINF |-weeb |-WEB-IINF|-src |-ejjb |-jaavabeaan |-seervlett |-weeb|-builld.batt|-builld.sh|-builld.xmll图片7 模块、组组件目录结构构图说明:src、eetc目

25、录和和buildd.bat、bbuild.sh、buuild.xxml为开发发人员建立的的目录,buuild和llib目录为为由ant工工具生成的目目录。 模块块、组件开发发目录结构说说明 (说明:一一个模块或一一个组件的根根目录)|-builld (说明明:保存由aant工具生生成的扩展名名为jar、wwar、eaar等文件)|-etc (说明:存放部部署文件,如如web.xxml、ejjb-jarr.xml、aappliccationn.xml、jaws.xmml、jboosscmpp-jdbcc.xml等等) |-mullti-laangs (说明:存放放多语言资源源文件,扩展展名为pr

26、oopertiies,)|-lib (说明:保保存由antt工具生成的的API文件件、classs文件等) |-doocs |-api |-ejjb |- METAA-INF |-j22ee |-MMETA-IINF |-weeb |-WEB-IINF|-src (说明:存存放源代码,包包括javaa和jsp代代码,下面有有四个目录。) |-ejjb (说明明:采用EJJB进行开发发,存放EJJB和Hellper CClassees源代码。) |-jaavabeaan (说明明:采用Jaavabeaan进行开发发,存放Jaavabeaan和Hellper CClassees源代码。) |-se

27、ervlett (说明:存放Serrvlet源源代码。) |-weeb (说明明:存放JSSP源代码。)|-builld.batt (说明:在Winddow OSS下,进行bbuild的的文件。)|-builld.sh (说明:在在Unix OS下,进进行builld的文件。)|-builld.xmll (说明:Ant工具具要builld的目标文文件。)应用程序开发目目录结构简图图: |-builld|-etc|-lib |-doocs |-ejjb |- METAA-INF |-j22ee |-MMETA-IINF |-weeb |-WEB-IINF|-teamm |-a membeer|-

28、ejb|-javaabean|-web|-builld.batt|-builld.sh|-builld.xmll|-builld.proopertiies图片8 应用程程序目录结构构图应用程序开发目目录结构 1. 由于于项目由多个个程序员一起起来进行编码码,所以应用用程序开发目目录结构和模模块、组件开开发目录结构构的不一样。 2. 应用用程序开发目目录结构没有有src目录录,但多了一一个teamm目录,此目目录存放所有有程序员的cclassees和Jspp代码。 33. 应用程程序开发目录录结构下buuild.xxml和模块块、组件开发发目录结构下下的builld.xmll有很大不同同。 4.

29、 由项目组长长负责管理eetc目录、bbuild.xml、bbuild.bat、bbuild.sh、buuild.pproperrties,程程序员分别管管理teamm目录下的属属于自己的目目录,如程序序员tom管管理teamm/tom目目录。开发前的约定(22)build.xxml编码规规范 应用程程序目录下的的buildd.xml 源代码:应用用程序目录下下的builld.xmll规范模板 说明:在建建立builld.xmll时,组长只只需修改创建建的时间和变变量ProjjectNaame等。 模块、组件件目录下的bbuild.xml 源代码:模块块、组件目录录下的buiild.xmml规

30、范模板板 说明:在建建立builld.xmll时,开发人人员只需修改改创建的时间间和和变量PProjecctNamee、compponenttName等等。 编码规范 项目中的JJAVA源代代码必须按JJAVA开发发规范。 项目中的的JSP代码码必须按JJSP开发规规范。 每位开发发小组成员在在开发项目时时都严格按此此规范来进行行编写程序,让让项目中所有有的文档都看看起来像一个个人写的,增增加可读性,减减少项目组中中因为换人而而带来的损失失。 每每位开发小组组成员一定要要绝对遵守这这个规范。当当实际应用与与下面的规范范相抵触时,记记录下原因、潜潜在后果,以以及符合规范范需要的条件件,但必须是是

31、在让程序有有良好的可读读性的前提下下。 功能模块在做业务逻辑模模块前,先把把一些准备工工作做出来: 建立一些些公用的beean(项目目中称为系统统控制器coontrolller),包包名为comm.cwapp.oa.ccontrooller.*,提供给给系统各模块块使用。包括括对时间、字字符的操作,调调试器,软件件国际化,多多语言版本,系系统的WEBB外壳,MVVC模式的SServleet和Acttion,对对WEB页面面显示的控制制如树结构、路路径结构;等等等。 建立立一个序列发发生器,包名名为com.cwap.oa.seequenccegeneeratorr.*,提供供给beann使用,它

32、用用来产生一个个唯一的IDD,而且也可可用来计数,也也就是把它当当成计数器使使用。介绍如如何取id的的方法的文字字要写在beean的代码码内,以便生生成API后后供其它开发发人员参阅。 建立一个SServerrFacadde,它为EEJB Hoome提供统统一的接口。SServerrFacadde为程序要要用到的所有有EJB的hhome hhandlee提供缓存,提提高访问效率率。以后查找找JNDI Name的的方法都应写写在接口里,调调用时直接从从接口调用。 建立一个翻翻页控制器,包包名为comm.cwapp.oa.ccontrooller.web.ppage*,用用来进行分页页显示的管理理

33、,以后页面面中的分页都都由翻页控制制器管理。 异常处理和日志志 程序中所有有的异常处理理使用统一的的调试器,bbean的名名称为comm.cwapp.oa.ccontrooller.util.Debugg,用法见项项目API。 程序中中所有的日志志使用Jakkarta-log4jj管理,包的的名称为loog4j-11.2.5.jar 官官方URL:http:/jakkarta.apachhe.orgg/log44j/doccs/inddex.httml Sessionn 放在sesssion中中的变量统一一放在一个bbean里存存储,不直接接把sesssion变量量名称放在JJSP、Seerv

34、lett或Beann内,存储ssessioon变量名称称的beann为com.cwap.oa.coontrolller.wweb.uttil.WeebKeyss,取sesssion变变量名的方法法为getXXX()。 取seessionn变量的值的的方法统一放放在一个beean里,bbean的名名称为comm.cwapp.oa.ccontrooller.web.uutil.JJSPUtiil,取seessionn变量值的方方法为gettXX(),之之后要取seessionn变量值就调调用JSPUUtil中对对应的方法。 当前系系统中已知的的sessiion变量名名有useerid、userNN

35、ame、localle、sskin等等,userrid为用户户标识,usserNamme为用户名名称,loccale为用用户选择的地地域,skiin为用户选选择的界面风风格。 DAO使用DAO封装装SQL语言言对数据库的的直接操作,DDAO采用FFactorry模式编写写。 组件所有的业务逻辑辑使用组件技技术。每个组组件内同时提提供EJB版版本和DAOO版本两种的的方法,不推推荐直接使用用EJB版本本和DAO版版本的方法。 多语言版本 Bean、SServleet、JSPP中的多语言言文字采用分分离技术,将将多语言文字字放在资源文文件中,保存存目录为/WWEB-INNF/claasses/mu

36、ltii-langgs或其它目目录。 当前支持的的语言有三种种:简体中文文(zh_CCN)、繁体体中文(zhh_HK)、英英文(en_US)。 多语言言管理器的名名称为comm.cwapp.oa.ccontrooller.util.MultiiLangssStrinng,使用方方法见本项目目API。 WEB外壳 JSP页面面中的图片、CCSS、JSS等文件都应应放在统一目目录,目录为为/skinn/skinnName/skinLLanguaage,其中中skinNName为外外壳名称,sskinLaanguagge为外壳语语言版本,例例如/skiin/greeen/zhh_CN 图片放在在im

37、agees目录里,CCSS文件放放在css目目录里,JSS脚本放在jjs目录里,其其它资源(如如声音、视频频、Flassh文件等)存放方法见见项目APII。 外外壳管理器为为com.ccwap.ooa.conntrolller.weeb.skiin.WebbSkin,调调用方法统一一接口为coom.cwaap.oa.contrrollerr.web.util.JSPUttil。 在线帮助 在线帮助管管理器为coom.cwaap.oa.help.*,调用方方法统一接口口为com.cwap.oa.heelp.cllient.HelpCClienttHelpeer。 每一个JSSP页面中提提供一个在线线帮助链接,用用户点击它直直接进入到在在线帮助中心心。 用户管理 建立一个取取用户名称的的页面,功能能包括只取一一个用户和取取多个用户。 打开取取用户名称页页面的方法,使使用页面脚本本,javvascriipt:reeturn openWWinToGGetEmpployeee(framme,id,name,num),当numm为0,代表表可以取多个个用户,否则则,只能取11个用户。 权限管理 调用方法统统一接口为ccom.cwwap.oaa.conttrolleer.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文献 > 电力管理

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁