Java项目开发平台开发规范标准

上传人:l**** 文档编号:144448494 上传时间:2020-09-08 格式:DOC 页数:52 大小:623KB
返回 下载 相关 举报
Java项目开发平台开发规范标准_第1页
第1页 / 共52页
Java项目开发平台开发规范标准_第2页
第2页 / 共52页
Java项目开发平台开发规范标准_第3页
第3页 / 共52页
Java项目开发平台开发规范标准_第4页
第4页 / 共52页
Java项目开发平台开发规范标准_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《Java项目开发平台开发规范标准》由会员分享,可在线阅读,更多相关《Java项目开发平台开发规范标准(52页珍藏版)》请在金锄头文库上搜索。

1、Java项目开发平台开发规_国信电子CRM事业部时间:2003-8-27目 录Java项目开发平台开发规1一、开发平台概述3二、技术综述51、Struts框架技术52、Hibernate数据持久化技术93、动态bean技术15三、在BONC-JONE平台上进行开发191、BONC-JONE平台目录说明192、如何使用BONC-JONE运行起来193、开发有关规性要求及典型步骤19四、主要函数及使用技术方法说明43如何使用自定义标签库?43如何使用日志类写日志?45如何进行资源注册?48如何进行登陆权限验证?48如何进行字符转换?48如何对资源文件进行字符转换?48如何配置、读取应用配置信息?4

2、8如何打包boncpersistenceobj.jar文件?48数据操作方法的原理是怎样的?48如何将任意文件上传到数据库中,又如何下载?48如何保证在页面清空的字段能正确提交到数据库?48如何使用日期控件?49如何使用DBQuery类进行数据查询?49如何自动生成Hibernate持久化beans及map文件?49如何使用分页技术?51附录:54附A:Struts学习精要参考54附B:Hibernate学习精要参考54附C:技术备忘54一、开发平台概述BONCJONE开发平台是国信电子技术遵循“简单、有效、先进、可扩”的原则,通过整合Struts 1.1与Hibernate 2.1等优秀的开

3、源技术设计并实现的一个J2EE开发平台。其架构图如下:这个体系架构的主体是MVC架构。MVC是Model/View/Control的缩写。Model/View/Control是软件设计的典型结构。在这种设计结构下,一个应用被分为三个部分:Model、View和Controller,每个部分负责不同的功能。Model是指对业务数据/信息的处理模块,包括对业务数据的存取、加工、综合等;View是指用户界面,也就是面向用户的数据表示;Controller则负责View和Model之间的流程控制,也就是完成两个方向的动作:1.将用户界面(View)的操作映射到具体的Model,以完成具体的业务逻辑;2

4、. 将通过Model处理完的业务数据及时反应到用户界面(View)上。其系统组成结构图如下:平台辅助API表示层StrutsTiles业务层业务管理接口业务管理抽象类业务管理实现类业务Beans技术JDBC持久化层Hibernate连接池技术数据库DataBaseBONCJONE开发平台从总体结构上充分体现了分层的系统设计思想。分层的概念起源于操作系统及网络协议设计中,但目前这个概念已在所有面向对象的应用系统中相当流行了。BONCJONE开发平台主要层次分为:表示层、业务层、持久化层及一些各层公用的工具类库。分层的系统设计思想的重点在于:l 一个分层的系统在各相关层的实现代码间定义了接口,从而

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

6、B、WEB SERVICE等多项技术。这些技术的出现给电子商务时代的WEB应用开发提供了一个非常有竞争力的选择。但怎样把这些技术组合起来,形成一个适应项目需要的稳定架构对项目开发是非常重要的。 设计一个框架,需要考虑的方面很多,不仅要对J2EE体系中的各种技术进行筛选取舍,并要考虑到开发过程中的角色分工、后期的运行维护,以及系统扩展性等诸多因素。 因此,一个成功的软件需要有一个成功的架构。MVC架构使得应用程序的结构更加清晰,通过将代码按照层次划分为业务逻辑/数据、用户界面和应用流程控制这三个层次,增强代码稳定性。我们知道,对于Model、View、Controller这三部分功能来讲,Vie

7、w的实现一般是由界面设计人员和界面程序员来完成,Model则是由业务逻辑程序员来完成,Controller则一般由负责整体控制的程序员来完成。Controller部分的代码比较稳定,一般会实现一个通用的架构;而Model则跟随商务流程的变化而变化;View的更改则是随着用户需求的更改而更改。这种模块功能的划分有利于在代码修改过程中进行模块的隔离,而不需要把具有不同功能的代码混杂在一起造成混乱。对于项目开发而言,有利于在项目小组按照小组成员各自的擅长进行分工,有利于三个部分并行开发、加快项目进度。 当前可供选择的较为流行的MVC框架有六种之多:Struts、Maverick、WebWork、Tu

8、rbine、RealMothods、AOP(aspect-oriented programming)。它们应用的领域及实现的侧重点各有不同。但以Struts应用最广,是基于MVC模式的Web应用最经典框架,当推首选。 Struts最早是作为Apache Jakarta项目的组成部分问世。项目的创立者希望通过对该项目的研究,改进和提高Java Server Pages (JSPs)、Servlet、标签库以及面向对象的技术水准。 Struts这个名字来源于在建筑和旧式飞机中使用的支持金属架。它的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。 因此我们选择Struts。Stru

9、ts鼓励按照Model 2方式构建应用的体系。Model 2是MVC基本设计模式的一种变体。MVC设计模式的优点是,它使得Model、View和Controller各个部分之间相对独立。Struts在一个中心位置装配ActionServlet、ActionMapping和各种Action类,处理所有传入的HttpServletRequest。ActionServlet把各个传入的HttpServletRequest分发给Action类,而ActionMapping对象可通过Struts-config.xml配置文件控制,它告诉ActionServlet如何分发请求。 本图示意了Struts各个

10、部分之间的通信过程Controller的功能:在客户端、View和Model之间起协调、仲裁的作用。只有Controller才会与Model和View联系,在这中间它就象是一个交换机,而Model和View之间不会直接通信,这样,Model、View和Controller就被分隔开来。这是成功运用Struts的关键所在。说明一下:所有Controller的逻辑应当放入Action类,与应用的其他层的通信可以在这里进行。虽然我们可以把业务逻辑也放入Controller,但一般而言最好不要这么做。应当改用Model部分的组件,因为这些组件才是真正处理数据的地方。把数据保存到数据库也应当是Model

11、的功能之一。当Controller处理好一个HttpServletRequest,它把请求转发给View。View的唯一任务是表现数据,在Struts中,View一般使用JSP技术。在Struts中,Controller和View之间的所有通信都通过HttpServletRequest、HttpSession和ServletContext间接完成,对于这些操作来说,首选的技术莫过于Servlet,Struts直接把HttpServletRequest传递给Servlet或者是JSP,不过Servlet容器会自动把JSP转换成Servlet。Struts框架将其侧重点放在了Controller与

12、View层。View由JSP定制标记库和JSP页面共同构造,其中ActionForm类是一种类似JavaBean的ValueObject对象,带有set和get方法,用来保存客户的状态。按照Struts的MVC概念,ActionForm位于View和Controller之间的中间地带。Struts提供了一组完备的专用标记,用来从JSP访问ActionForm里面的数据。Controller由ActionServlet、ActionMapping和各种Action类相互配合来完成。其中Action类给开发人员自由发挥的空间比较大,因此,在开发过程中完整地遵从MVC的概念Action类的使用方式是

13、一个关键。对于Struts的解剖。图解说明:其中不同颜色代表MVC的不同部分:红色(控制器)、紫色(模型)和绿色(视图)l 首先,控制器(ActionServlet)进行初始化工作,读取配置文件(struts-config.xml),为不同的Struts模块初始化相应的ModuleConfig对象。比如配置文件中的Action映射定义都保存在ActionConfig集合中。相应地有ControlConfig集合、FormBeanConfig集合、ForwardConfig集合和MessageResourcesConfig集合等。l 控制器接收HTTP请求,并从ActionConfig中找出对应

14、于该请求的Action子类,如果没有对应的Action,控制器直接将请求转发给JSP或者静态页面。否则控制器将请求分发至具体Action类进行处理。l 在控制器调用具体Action的execute方法之前,ActionForm对象将利用HTTP请求中的参数来填充自己(可选步骤,需要在配置文件中指定)。具体的ActionForm对象应该是ActionForm的子类对象,它其实就是一个JavaBean。此外,还可以在ActionForm类中调用validate方法来检查请求参数的合法性,并且可以返回一个包含所有错误信息的ActionErrors对象。如果执行成功,ActionForm自动将这些参数

15、信息以JavaBean(一般称之为form bean)的方式保存在Servlet Context中,这样它们就可以被其它Action对象或者JSP调用。Struts将这些ActionForm的配置信息都放在FormBeanConfig集合中,通过它们Struts能够知道针对某个客户请否需要创建相应的ActionForm实例。l Action很简单,一般只包含一个execute方法,它负责执行相应的业务逻辑,如果需要,它也进行相应的数据检查。执行完成之后,返回一个ActionForward对象,控制器通过该ActionForward对象来进行转发工作。我们主将获取数据和执行业务逻辑的功能放到具体的JavaBean当中,而Action只负责完成与控制有关的功能。遵循该原则,所以在上图中将Action对象归为控制器部分

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作范文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号