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

开通VIP
 

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

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

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(Java项目开发平台开发规范方案.docx)为本站上传会员【二***】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

Java项目开发平台开发规范方案.docx

1、Java工程开发平台开发标准 北京东方国信电子CRM事业部 时间:2003-8-27 目 录Java工程开发平台开发标准1 一、开发平台概述2 二、技术综述2 1、Struts框架技术2 2、Hibernate数据持久化技术4 3、动态bean技术9 三、在BONC-JONE平台上进展开发12 1、BONC-JONE平台目录说明12 2、如何使用BONC-JONE运行起来13 3、开发有关标准性要求及典型步骤13 四、主要函数及使用技术方法说明36 如何使用自定义标签犀? 36 如何使用日志类写日志? 38 如何进展资源注册? 41 如何进展登陆权限验证? 4

2、1 如何进展字符转换? 41 如何对资源文件进展字符转换? 41 如何配置、读取应用配置信息? 41 如何打包 boncpersistenceobj. jar 文件? 41 数据操作方法的原理是怎样的? 41 如何将任意文件上传到数据库中,义如何下载? 41 如何保证在页面清空的字段能正确提交到数据库? 41 如何使用日期控件? 42 如何使用DBQuery类进展数据查询? 42 如何白动生成Hibernate持久化beans及map文件? 42 如何使用分页技术? 44 附录:45 附A: Struts学习精要参考45 附B: Hibernate学习精要■参考45

3、 附C:技术备忘45 定义了五种属性访问策略,使得属性的访问代码像脚本一样在运行时决定,另外一 个进步就是它支持List和Map属性的元素属性,也就是扩展javaBean属性机制它不把 一个Bean的某个List和Map成员看成一个整体属性,而是动态地把这个List和Map 成员的元素看成属性,这样无疑提供了 一种无限扩展Bean属性的能力。 Common-beanut i I s 1.6中的propertyUt i I s实用类使用Java语言的内省反射功能实 现扩展属性的设置器和获取器。propertyUti Is定义了引用一个特定Java bean属性的五种 格式: ■ 简单属性

4、格式 beanName. propName。propName 标识了 JavaBean beanName 的 一个属性,这个属性的获取器和设置器的方法是通过JavaBean的标准内省功能 决定的。如果要改变简单属性的值,必须要有设置器操作,可以想象成类似调 用 beanName. [getpropName () | setpropName (va I ue)];嵌套属性,格式 beanName. propNamel. propName2. propName3。像简单属性一样, 第一个propNamel元素被用来选择一个属性获取器方法,在这个方法退回的对 象上使用propName2的获取器方法

5、返回下一个对象,最后这个对象的属性 propName3被访问或设置,可以想象成类似调用 beanName. getpropNamel (). getpropName? (). [getpropName3 () | setpropName3 (va I ue)]索引属性,格式beanName. propName[ index] 0属性propNamel可以是一个数组, java, ut i I. List或者JavaBean beanName有索引属性获取器和设置器操作。 bean只需propName的获取器方法,可以想象成类似调用beanName. [getpropName (index)

6、setpropName (i ndex,vaIue)]: ■ 映射属性,格式 beanName. propName (key)。propName 是一个 java. util. Map 实现。bean 只需propName的萩取器方法,可以想象成类似调用beanName. getpropName0. [get("key")|set("key",value); ■ 组合属性,格式 beanName. propNamel. propName2[i ndex]. propName3 (key) 0• 动态bean: 动态bean具有动态属性,也就是说可以由程序运行时构造bean的属性,而不是

7、像标准 的javaBean在编译时决定一个bean的属性。 定义和访问一个动态bean的步骤如下: ■ 定义一个动态属性Dynaproperty数组,动态属性Dynaproperty定义了 一个属 性的名字和对象类型; ■ 用定义好的动态属性数组实例化一个动态类; ■ 由动态类返回一个动态bean; ■ 可以用propertyUti Is访问和设置动态bean的属性。 下面是定义和访问动态bean的代码: // TestDynaBean. javaimport org. apache mons.beanut iIs. *; import java.ut iI. pub Ii

8、c cI ass TestDynaBean { pub Iic static void ma i n (Str i ng[] args) {TestBean bean = new TestBean (); Object vaIue = null;try( Dynaproperty[] px = (new Dynaproperty ("subord i nate", bean.getClass ()), new Dynaproperty ("f i rstName",Class. forName(" java. lang. Str ing")), new Dynaproperty("I

9、astName",Class. forName ("java. lang. Str i ng")) };DynaClass dynaCIass = new BasicDynaClass("employee",null, px ); DynaBean empIoyee = dynaCIass. new Instance ();propertyllt i I s. setproperty (emp I oyee, "subord i nate", bean); propertyllt i I s. setproperty (emp I oyee, "subord i nate. I i st

10、 I ndexed [0]", "dy bean set");propertyllt i I s. setproperty (emp I oyee, "f i rstName", "Fred"); propertyllt i I s. setproperty (emp I oyee, " I astName","FIi ntstone"); System, out.pr intIn ("subordinate. Iist Indexed[0]:");System, out. pr i nt I n (propertyllt i I s. getproperty (emp I oyee, "

11、subord i nate. I i st Indexed[0]")); System, out. pr intIn("fi rstName:" +propertyllt i I s. getproperty (emp I oyee, "f i rstName")); System, out. pr i nt In("IastName:" +propertyllt i I s. getproperty (emp I oyee, " I astName")); )catch (Except i on e )(System, out. pr i nt I n (e. toStr i ng (

12、)); } )} 从配置文件配置动态bean的动态属性好处在于既能固定又能更改动态Bean的属 性,这些属性是这个动态Bean对外界的宣布的"访问协议"。动态属性Dynaproperty的 主要构造函数承受两个参数:第一个为属性名称,为字符串性,第二个为属性的类型, 为Class类型。从配置文件读取的资料普通为字符串型,我们可以用ClassLoader把配 置文件中字符串型的属性类型转化成Class类型的属性类型。 下面 struts 1. 1 中 struts-exampIe. war 的 formbeans, xml 中的片断表达了如何 在配置文件中定一个动态bean的动态属

13、性: 下面RequestUtils的代码片断表达了如何从字符串表示的属性类型转化成Class型 的属性类型: pub I i c stat i c Cla

14、ss appIi cat i onCI ass (Str i ng cIassName)throws CIassNotFoundExcept i on { // Look up the cI ass loader to be usedClassLoader cIassLoader = Thread. currentThread (). getContextC I assLoader ();i f (cIassLoader — null) ( c I assLoader = RequestUt i I s. c I ass. getC I assLoader (); } // Atte

15、mpt to Ioad the specified cI ass return (cIassLoader. IoadCI ass(cIassName)); } 这就是关于动态bean的所有奥秘,RequestUt i I s类:代码片断pub I i c static Act ionForm createAct ionForm就是这样创立动态bean的。 三、在B0NC-J0NE平台上进展开发 1、BONC-JONE平台目录说明注意:com. bone mon、com. bone, secur i ty包属于开发平台根本支持包,其中的文件不 允许开发人员改动。 2、如何使用BONG-

16、JONE运行起来 将开发平台从source safe拉下来后,只需要将src目录下的bonc_init. properties 文件中 boncHome二的路径改为你所下载目录的实际路径,如: boncHome=D: \\Deve IopWork\\java\\boncCrm\\examp I eroot\\WEB-INF,做了 这样的设置后, 系统启动时就会到这个目录下去找我们的工程配置文件bonc_conf i g. xml。 如果你使用的是Jbuilder,还应该将I ib目录下的所有包文件,参加到你工程的Required Libraries 中。 做完以上工作bonc-jone应

17、该就可以正常运行了。 3、开发有关标准性要求及典型步骤 • 应用的包的组织规那么客户关系工程中所有与应用模块相关的包均应在com. bone, erm包下,如果开 发的是其他工程那么根据工程名称来定义这个包名称,可能是这样的: com. bone, samp I e 等。 ■ 在com. bone, erm包之下,以模块名称来分包,比方:模块名称是“留言模块〃, 就要定义一个与其对应的包com. bone. erm. module, leavewordo在各模块包下再分为bean包〔存放Form bean及其他本模块可能要用到的 bean〕action包〔存放Act i on类〕与bu

18、ss i nessmanager业务管理包〔存放业 务管理接口 类〕,比方:com. bone. erm. module, leaveword, act ion、 com. bone. erm. module, leaveword, bean 与 com. bone. erm. modu I e. I eaveword, buss i nessmanager 包。 ■ 在各模块的业务管理包下再定义业务管理实现类包〔impl包存放业务管理接口 的实现类〕,比方:com. bone. erm. module, leavev/ord. buss i nessmanager. imp I o

19、■ 包定义的要求:全部小写字母定义。 • 应用开发中主要编写的类的作用Form bean类:建议开发中尽量使用动态Form bean〔即根据struts的配置支 件生成的动态bean〕,特殊情况下才写Form bean类。该类是一个ValueObject 对象,主要的作用是包装客户端请求,将数据从view层传给Action类,由 Action类转给业务处理类进展处理:或者由Action类更改或填充其中的数据, 然后将其传给view层来显示。 ■ Action类:Action类主要完成三方而的功能,其一是做登陆及权限验证,其 二是做数据校验,其三〔也是最主要的)员责完成与控制有关的功能。需要

20、注 意的是尽可能不要此类中包含业务处理功能。 ■ 业务管理接口类:该类是对业务对象进展操作的抽象,是一个接口,对该业务 对象的操作均应通过它来进展。 ■ 业务管理抽象类:这种类实现或局部实现业务管理接口中定义的方法,业务操 作的大局部代码均应该写在这个类中。由于这个类是个抽象类,所以它不能够 被实例化。 ■ 业务管理实现类:这种类是业务管理抽象类的继承类,通常情况下其中无实际 代码。 应用开发中关键的配置文件的意义及功能 ■ web. xml文件:是Web应用最根本的部署描述配置文件。 部署Web应用首先要配置web. xml文件。开发人员需要在Web. xml部署描述文件中 配置

21、 有效的部署描述文件必须包含DTD声明: web-app标记是部署描述文件的根元素,它的子元素包括: 元素 描述 icon 此元素指定在GUI工具中表示此Web应用的大图标和小图 标,包含一个sma 1 l-icon和一个large-icon元素,可使 用GIF或JPEG格式的图像 d i sp1 ay-name 此元素

22、提供在GUI工具中此模块的短名字 descr i pt i on 此元素提供关于父元素的描述性文本 d i str ibutab1e 如果在Web应用部署描述中使用该元素,就表示该Web应 用可以部署到分布式Servlet容器 context-param 此元素包含Web应用的Servlet环境的初始参数 servlet 包含一个servlet的声明性数据 servlet-mapping 在servlet和ur 1模式间进展映射 session-config 声明此Web应用的Session参数 mime-mapping 定义扩展名和mime type间的映射 v

23、/e 1 come-f i 1 e-1 i st 包含we 1 come-f i 1 e子元素的顺序列表 error-page 包含一个错误代码或违例类型与web应用中资源的映射 taglib 用于描述一个JSP标记库 resource-ref 包含一个对外部资源的引用声明 secur ity-constraint 用于为一个或多个Web资源集合指定相应的平安约束 login-config 用于配理身份筌定的方法,此应用使用域名,以及通过表 单登录机制那么需要设置此属性 secur ity-role 包含使用于web应用中

24、>元素的平 安角色的声明 env-entry 包含应用环境变量的声明 ejb-ref 用于声明对EJB的引用 ServletContext初始化参数: context-param标记的子元素包括: param-name : 参数名 param-va I ue : 参数值 description :参数的描述信息 例如: my_context_param_name Context Param VaIueparam

25、 descr i pt ion Sess i on 配置 session-config标记的子元素包括: session-timeout : session 超时时间 例如: 30 Servlet/JSP 定义 servlet标记的子元素包括: icon :在GUI X具中的显示图标 servlet-name : servlet 名称 d i sp I ay-

26、name :在GUI X具中的显示名称 descr i pt ion :描述信息 servlet-class | jsp-f i le : servlet 类名称;jsp 文件的完全路径 init-param :初始化参数列表 Ioad-on-startup : web应用启动时装载 secur ity-role-ref:定义平安引用角色 servlet-mapping标记的子元素包括: servIet-name : servlet 名称 例如: < i con> smaI I. gif

27、n>IargeI. gif my_servIet my_servIetmy_servIet com. apus ic. test. MyServIet my_i n i t_pa r amIn

28、it Param VaIue param descr i pton 1 roIe descr ipt ion my_secur ity_roIe_nameSecur ity Ro Ie L i nk

29、k> Serv I et/JSP 映射 ur l-pattern : servIet 映射的 URL 模板 my_servIet /my_url_pattern MIME类型映射 m i me-mapp i ng的子元素包括: extens i on :扩展名 mime-type : MIME 类型 例如:

30、ime-mapping>txt text/pI a i n 欢送文件列表 we I come-f i I e-1 i st标记的子元素包括: we I come-f i I e :作为块省的欢送文件名 例如: index, jsp index, html

31、ile> index, htm 错误页面 error-page标记的子元素包括: error-code | exception-type :的错误代码;异常类型 location :资源在Web应用中的位置 例如: 404 ErrorPage. jsp Except i on Type

32、ept ion~type> ErrorPage. jsp 平安 secur ity-constraint 标记的子元素包括: web-resource-col lection :用于区分资源子集和web应用内使用平安约 束的这类资源的方法。如 方法未被指定,平安约束将适用于所有 的 方法。 auth-constraint :指定允许访问此资源集合的用户角色。在此处使用的 角色必须在元素中进展定义 user-data-constra int :于指出客户端和容器间的数

33、据交换的保护方式 login-config标记的子元素 包括: auth-method :用于为Web应用配置身份鉴定机制。作为对使用身份 签定约束保护的任何W e b资源取得访问的先决条件,用户必须使用已 配置的身份鉴定机制进展鉴定。此元素的合法值为“BASIC”、“DIGEST” 、 “FORM” 或 “CLENT-CERT” realm-name :指定在 根底授权中的域名form-log in-config :定义Web应用中使用的登陆页面可被找到的位 置 secur ity-role标记的子元素包括: descr i pt ion :描述信息roIe-name :平安角色的

34、名字 例如: Name descr i pt一、开发平台概述 BONC-JONE开发平台是北京东方国信电子技术遵循“简单、有效、先进、可扩〃的原 那么,通过整合Struts 1. 1与Hibernate 2. 1等优秀的开源技术设计并实现的一个J2EE 开发平台。 其架构图如下: 这个体系架构的主体是MVC架构。MVC是Model/Vi

35、ew/Control的缩写。 Mode I /V i ew/Contro I是软件设计的典型构造。在这种设计构造下,一个应用被分为三个局 部:Model、View和Control ler,每个局部负责不同的功能。Model是指对业务数据/信息 的处理模块,包括对业务数据的存取、加工、综合等;View是指用户界面,也就是面向用 户的数据表示:Controller那么负责View和Model之间的流程控制,也就是完成两个方向 的动作:1.将用户界面(View)的操作映射到具体的Model,以完成具体的业务逻辑;2.将 通过Model处理完的业务数据及时反响到用户界而(View)上。 其系统组成

36、构造图如下: • 分层系统构造还限制隔层依赖的发生,各层的通讯是由顶向下管理的。某一层仅依 赖于直接位于它下面的那一层。每一层对其他层的存在都是不知道的,除非那一层 紧邻其下。即使是对紧邻其下的层它也仅需要知道如何使用接口与其通讯就可以 了,而无需知道其实现细节。 B0NC-J0NE开发平台通过Struts+Ti les技术实现了 MVC模式中的表示层和控制层,通 过Hibernate技术结合动态Bean技术融合成独特的业务Beans技术构建了数据层。 二、技术综述 1、Struts框架技术Struts是一个基于J2EE的MVC框架。 J2EE体系包括JSP、Servlet、EJ

37、B、WEB SERVICE等多项技术。这些技术的出现给电子商务 时代的WEB应用开发提供了一个非常有竞争力的选择。但怎样把这些技术组合起来,形成一 defauIt BASIC

38、~name>DefauIt roIe desc defauIt 标签库配置: Tagl ib标记的子元素包括: tag I ib-uri:统一资源标识符(URI)参数,可以自由命名。 tagl ib-location:标签库描述文件的实际位置。 例如: /WEB-1NF/BoncTagLib.

39、11d /WEB-1NF/BoncTagLi b. 11d /WEB-1 NF/struts-bean. 11d /WEB-1 NF/struts-bean. 11d /WEB-INF/struts-html. tld

40、r i > /WEB-1 NF/struts-htm1.11d /WEB-1 NF/struts-logic. 11d /WEB-1 NF/struts-logic, tld /WEB-lNF/struts-t iIes. 11d <

41、tagI i b-1ocat i on>/WEB-1 NF/struts-t i Ies. tld 看来web. xml的配置是很多的,但在开发中我们需要进展的配置并不多。 在bonc-jone开发平台的web. xml中根本不需要开发人员变动已有的配 置。唯一需要由开发人员进展的配置是增加各模块的struts配置文件路 径,例如: act ion org. apache, struts,

42、 t iIes. Act i onComponentServI et confi g /WEB-1 NF/struts-conf i g. xml, /WEB-1 NF/struts-conf i g-yourmodueI. xml, /WEB-1NF/struts-confi g-other. xmI • ♦ • • • • ■ Struts配置文件

43、是Struts柜架的中心配置文件,通俗地说是Struts应用的 地图。 以下是Struts配置文件的根本构造:

44、utoGenerated by : Struts GUI v2. 11(c)2002 Al ien-Factory ―>