有些网友觉得j2ee技术论文难写,可能是因为没有思路,所以小编为大家带来了相关的例文,希望能帮到大家!
j2ee技术论文篇一
模型介绍
1、MVC
1.基本概念MVC 开发模式是一种分而治之的思想, 它将数据的访问和数据的表现进行了分离。通过这种模式, 可以开发一个具有伸缩性、便于扩展、便于整个流程维护的平台。
MVC 主要由三个部分组成: 模块( Model ) 、视图(View) 和控制器( Controller) 。模块, 即相关的数据, 它是对象的内在属性, 是整个模型的核心, 它表示的是解决方案空间的真正的逻辑。它采用面向对象的方法, 将问题领域中的对象抽象为应用程序对象。在这些抽象的对象中封装了对象的属性和这些对象所隐含的逻辑。
视图是模型的外在表现, 一个模型可以对应一个或者多个视图。视图具有与外界交互的功能, 主管应用系统与外界的接口: 一方面它为外界提供输入手段, 并触发应用逻辑运行; 另一方面, 它又将逻辑运行的结果以某种形式显示给外界。控制器是模型与视图的联系纽带, 控制器提取通过视图传输进来的外部信息, 并将其转化成相应事件, 对模型进行更新; 同时, 模型的更新与修改也将通过控制器来通知视图, 从而保持视图与模型的一致性。
2.MVC设计模式的优势
MVC 设计模式具有设计清晰, 易于扩展, 运用可分布的特点, 因此在构建Web 应用中具有显著的优势。
(1)MVC 模式结构可适用于多用户的、可扩展的、可维护的、具有很高交互性的系统, 如电子商务平台、CRM系统和ERP 系统等。
(2)MVC 可以很好的表达用户与系统的交互模式,以及整个系统的程序架构模式。
(3)MVC 模式可以很方便的用多个视图来显示多套数据, 从而可以使系统能方便的支持其它新的客户端类型。除了运行桌面型的浏览器外, 还可以运行在PDA,WAP 浏览器上。
(4)对于开发人员来讲, 由于MVC 分离了模式中的数据的控制和数据表现, 从而可以分清开发者的责任, 后台开发人员可以专注业务的处理, 前台开发人员专注于用户交互的界面, 从而加快产品开发以及推向市场的时间。 2 、J2EE 技术
SUN 公司的J2EE( Java2 企业版) 是一种利用Java 语言的标准体系结构定义的, 它提供中间层集成框架用来满足高可用性、高可靠性以及可扩展性的应用的需求。利用它, 各公司可以更为方便地在中间层加速分布式部署。开发中利用这种体系结构, 开发者可以不必担心运行关键商务应用所需的“ 管道工程”, 从而可以集中精力重视商业逻辑的设计和应用的表示。
J2EE 技术主要有: EJB, Servlets, JSP, JNDI 等。J2EE平台的应用主要由构件构成, 应用系统的开发就是设计这些构件并组装成整个企业应用。
1. JSP
JSP 技术与ASP 技术类似, 是一种在服务器端进行解析, 动态生成网页传递给客户端Web 技术; 它是基于Java 技术, 将Java 代码嵌入HTML 页面中实现的。本质上, JSP 是一种高层的Servlet。它与其它网页编写脚本有很大的相似性, 但是在执行时有所不同。JSP 引擎将它和它所在的HTML 文件一起合成
Servlet 的代码, 然后它的执行就与Servlet 的一样: 先编译成. class 文件, 最后由支持Java 虚拟机的服务器来执行, 最后输出结果。在使用JSP 中如果结合使用JavaBean 技术, 那么对于处理就会更加方便灵活。
2 。Servlet
Servlets 是Java 210 中新增的一个全新功能, Servlets是一种采用Java 技术来实现CGI 功能的一种技术。Servlet 和CGI 一样都是运行在Web 服务器上, 用来生成Web 页面。与传统的CGI 或其它CGI 类似替代技术来说, Java Servlets 效率更高, 使用更方便, 功能更强大, 更
小巧也更便宜。Java Servlet 提供了如下许多优势:
(1) Servlet 可以和其它资源( 文件、数据库、Applet, Java应用程序等) 交互, 以生成返回给客户端的响应内容。如果需要, 还可以保存请求- 响应过程中的信息。
(2) 采用Servlet, 服务器可以完全授权对本地资源的访问( 如数据库) , 并且Servlet 自身将会控制外部用户的访问数量及访问性质。
(3) Servlet 可以是其它服务的客户端程序, 例如它们可以用于分布式的应用系统中。
(4) 可以从本地硬盘, 或者通过网络从远端硬盘激活Servlet。
(5) Servlet 可被链接(Chain) 。一个Servlet 可以调用另一个或一个系列Servelt, 即成为它的客户端。
(6) 采用Servlet Tag 技术, 可以在HTML 页面中动态调用Servlet。
(7) Servlet API 与协议无关。它并不对传递它的协议有任何假设。
(8)像所有的Java 程序一样, Servlet 拥有面向对象Java 语言的所有优势。
三、J2EE 平台上MVC设计思想的实现
MVC系统模型构建
J2EE 技术结合MVC 设计模式在构建企业级Web 应用的实现中, JSP 对应于视图, 因为整个应用系统主要通过JSP 来与外界进行交互; Servlet 对应于控制类, 作为JSP 与EJB 之间的中间枢纽; EJB 和JavaBean 对应于模块, 主要进行数据业务的处理。
MVC 系统模型明确的将数据的显示和数据业务的处理分开, 从而使得逻辑结构更为清晰。如果数据的显示方式有所改变, 只需更改JSP 视图页面, 而并不要求相应更改数据处理模块; 反之, 如果业务要求发生变化, 也只需更改相应的处理数据模块。因而系统可以很容易加入新的业务, 可以灵活适应各种需求的变化。
MVC 设计模式应用于Web 应用程序, 其整个流程如下: 当Web 客户端的HTML 或JSP 网页向服务器提交时,服务器端的控制器Servlet 统一处理这些提交请求。这个控制器Servlet 根据提交的业务不同, 将请求传递给相应的业务Bean 操作处理, 然后将业务Bean 的处理结果再传递给视图JSP。视图JSP 在服务器上处理之后以HTML 的方式回显给客户端。这里的业务Bean 是一系统处理业务逻辑的Java Bean, 每个Java Bean 处理一种业务。会话Bean 和实体Bean 都是具体的与数据库的操作, 在整个数据模块中供各种业务的Bean 进行调用。
四、使用分层模型改进MVC 设计架构
1、MVC 模式的缺点
虽然MVC模式很好地实现了职能分工,但它本身也有一定的问题,主要包括:
(1)视图和控制器之间的紧密连接视图和控制器是分离的但又是紧密相关的组件,它妨碍了它们的单个重用。一个视图离开其控制器使用好像是不可能的,而反之亦然,例外情况是共享忽略所有的输入的控制器的只读视图。
(2)视图和控制器与模型的紧密耦合视图和控制器组件都是直接调用模型。它表明模型接口的改变很可能使视图和控制器的代码无效。如果系统使用多个视图和控制器,这个问题就被放大了。
控制器接收来自浏览器的请求,然后调用业务逻辑,由业务逻辑来和底层的Model 打交道。在这个过程中用数据传递对象(DTO)来进行参数的传递。在Struts 中,有一个ActionForm的类,它与视图的表单对应,这样表单的数据就能从View 传到Controller,在到Business Logic 最后到Model,这样做的一个缺点就是:一点业务逻辑发生了变化,相关的类就要修改。
但是与后续相关的Action、Business Logic、Model 都要发生变化,这是我们所不想看到的。在设计软件系统的架构,我们希望:
(1) 仅限于对解决方案的某一部分进行更改以便尽量降低对其它部分的影响,从而减少调试和纠错的工作量,使应用程序易于维护,并增强应用程序的总体灵活性;
(2) 组件应该可被多个应用程序重用;
(3) 独立的团队应该能够在处理解决方案的各个部分时尽量减少对其它团队的依赖,并且应该能够针对定义明确的接口展开开发工作;
(4) 各个组件应保持内聚性;
(5) 无关的组件应保持松散耦合。针对这样的问题我们的解决方案,就是用耦合性低的层来改进MVC 模式。
2、分层模型对MVC 的改进
2.1 分层模型的概念
从广义上来说,MVC 也是一种分层模型,我们设计分层模型是为了改进MVC 而并非完全摒弃它。所谓分层模型就是将系统的组件分隔到不同的层中;每一层中的组件应保持内聚性,并且应大致在同一抽象级别;每一层都应与它下面的各层保持松散耦合;每一层都按照一定的规则将上一层传来的数据进行解包,进行一定的处理后再按一定的规则将数据进行打包后传递给下一层。
分层模型交互的过程如下:
从最低级别的抽象开始— — 称为第1 层,这是系统的基础。通过将第J 层放置在第J-1 层的上面逐步向上完成抽象阶梯,直到到达功能的最高级别称为第N 层。
通常使用下列技术扩充基本的分层模式:
(1)层超类型。如果一层中的组件具有相同的一组行为,就可以将这些行为提取到一个公共类或组件中,并使层中的所有组件都继承该公共类或组件。这不仅简化了维护并提高了可重用性,还允许通过对超类型(而不是特定组件)的运行时引用来调用公共行为,从而减少了层之间的依赖性。
(2)抽象接口。抽象接口是为较高级别中的组件所调用的某一层中的每个组件定义的。较高层通过抽象接口(而不是直接调用组件) 来访问较低级别组件。这使得可以在不影响较高级别组件的情况下更改较低级别组件的实现。
(3)层外观。对于大型系统,常见的方法是使用Facade 模式来为层或子系统提供单个统一接口,而不是为每个公开的组件分别开发一个抽象接口。这使得层之间具有最低的耦合,因为较高级别组件仅直接引用外观。所以认真设计外观是非常重要的,在后期改变外观是非常困难的,因为有许多组件都将依赖于它。
2.2 改进的MVC 模式
根据分层模型的思想和扩充技术,我们改进原有的MVC模式,对View 层进行泛化,对Controller 用Service 来替代,而Model 我们则对它进行再分层,分为BO、DO 和DA。
我们对View 曾进行了泛化,MVC 主要针对的是Web 应用程序,而现实中的View 泛指用户的界面,他是与用户交互的接口,所以我们这里把View 命名成UI,可以是手机的WAP 页面,普通的网页,Form程序,甚至是Athlon 的显示模型。当然,不同类型的View 采取的编码方式是不同的,对此,虽然我们可以通过配置文件等进行一系列的改进,但无法从根本上提高我们的开发效率。
MVC的Controller我们用Service这一层来提供,由Service来导引系统的流程。Service 位于UI 的下一层,起到了承上启下的作用。一方面,Service 层接收UI 传入的数据,根据UI 传
入的参数或者配置文件的设置,进行处理后将处理结果或者查询结果返回给UI 层,显示给用户。为了简化UI 和Service,Service 和Model 之间的调用关系,我们使用抽象的类来调用Service,也通过抽象的类来返回结果给对应需要的层。这样,当我增加一个业务层的时候,每一层只需要管理好内部的层即可,不需要考虑其它层的内容改变。
我们对Model 进一步的细分,分成Business Object Layer、Data Object Layer、Data Access Layer。这3 层分别处理业务对象,数据库对象,数据库存储。而各个层次之间也是通过抽象类来实现。抽象类的好处是提供一种抽象的接口,模糊了各个层次之间调用的明细。各个层次内部再自行打包和解包,然后完成各自的业务。这样,每一层次的耦合度就降低了,而且当一个层次的内容发生修改时,其它的层次不需要做相应的变化。
这样的改进一方面改变了原先MVC 的Controller 功能过于依赖View,降低了模块间的耦合,另一方面也使得层次更加清晰化,各个层次的责任更加明确,为更好的软件复用提供有利条件。
五、总结
利用分层模型的思想改进的MVC 设计模式一方面体现了分离思想,是开发人员利用自身的特长各司其职,另一方面也降低了原来MVC 设计模式的耦合度。这样的改进从某一个角度来说,增加了软件的可维护性、可重用性、可伸缩性、可靠性和安全性,但其本身也会提高开发的成本,而且多层的分部在增加灵活性的同时也加大了系统开发时调试的不方便。而且,很难设计一个很好的接口,使得多层之间的交换便捷。
j2ee技术论文篇二
基于J2EE平台的系统集成研究 摘要:J2EE作为一种应用开发平台,由于其具有平台无关性、可移植性、多用户性、安全性等优点,正被越来越多的企业和系统集成商所采用。文章应用分层构建思想对基于J2EE平台的系统集成的架构进行了分析和阐述,并对Siebel这一CRM集成领域的先驱进行了介绍和分析。
关键词:系统集成;J2EE平台;Siebe;CRM
一、前言
系统集成,是以用户的应用需要和投入资金的规模为出发点,综合应用各种计算机相关技术,适当选择各种软硬件设备,经过相关人员的集成设计、安装调试、应用开发等大量技术性工作和相应的管理性及商务性工作,使集成后的系统能够满足用户对实际工作要求,具有良好的性能和适当的价格的计算机网络系统的全过程。
系统集成要求将各个分离的设备(如个人电脑)、功能和信息等集成到相互关联的、统一和协调的系统之中,使资源达到充分共享,实现集中、便利、高效的管理。系统集成实现的关键在于解决系统之间的互连和互操作性问题,它是一个多厂商、多协议和面向各种应用的体系结构。这需要解决各类设备、子系统间的接口、协议、系统平台、应用软件等与子系统等相关的一切面向集成的问题。
二、基于J2EE平台的系统集成的架构
J2EE旨在为支持Java语言服务器端部署而提供与平台无关的、可移植的、多用户的、安全和标准的企业级平台。
Java具有平台无关性,可以运行在Windows、Linux、Unix等不同的操作系统上,Java的跨平台是通过Java虚拟机(JVM)来实现的,Java源代码被编译成一种结构中立的中间文件格式,只要有Java运行系统的机器都能执行这种中间代,Java源程序被编译成一种与机器无关的字节码格式,在Java虚拟机上运行。
J2EE标准制定了一个开发者编写企业应用时必须遵守的标准,也制定了各种应用系统服务商必须提供的基于标准的服务,这样企业应用程序就可以在不同平台间统一地使用这些服务。就像J2EE是一个工业支持开放标准一样,应用开发者要确信由应用服务器以统一方式在不同平台和不同供应商之间提供下层支持服务,这就允许应用开发商集中于业务逻辑的开发而不用在他们的应用代码里执行这类系统级服务。
另外,一旦建立一个基于Java的组件,就可以在多个软件系统上重复使用,也可以移植到不同系统上。重用已经建立的组件,企业不需要拥有编写整个应用系统所需要的所有技术装备,可以从不同的专门研究某一领域的供应商处购买组件,把这些组件充分利用到自己的应用系统中,这不仅使应用系统开发速度快速增长,而且减少了处理各种技术集的花费。 正是由于诸如以上的众多优点,J2EE平台堪称集成信息系统的“强力粘合剂”,它依靠WEB层和业务层的组件处理事务及安全和扩展性,降低了访问不同系统的难度。J2EE平台的架构由客户层、WEB层、业务层、集成层、数据库层构成
客户层是系统的用户界面,呈现出适当的视图,以收集查询,显示最终结果,它可以是瘦客户端,胖客户端这些非浏览器的客户端,也可以是基于浏览器的客户端。客户层将信息和数据呈现给最终用户,应用程序用户与客户端应用程序交互,客户端应用程序与企业应用程序的其他组件相连。用户接口/代理提供了客户与信息进行交互的工具和相关的支持服务,它使客户与系统的交互变得简单、快捷。J2EE支持的Java客户端包括Applet、Java应用客户端、J2ME移动客户端或MIDlet,浏览器是一个瘦客户端,在J2EE系统的客户端中应用最广。客户端类型多种多样,容器必须提供组件支持,为客户端组件提供运行时环境,JVM提供了Java运行时环境,个人桌面系统、工程工作站、Applet和应用客户端等组件都支持JVM,而MIDlet要求对JVM进行稍加修改。
由于业务需求瞬息万变,WEB层成了一个动态层,WEB层主要有两种职责:接收客户层组件的要求,处理请求,然后将请求路由到业务层的适当组件;接受业务层传来的结果,计算一个适当的视图,然后将视图路由到对应客户端。客户层使用浏览器应用程序与WEB层组件交互,J2EEWEB层的重要组件有Servlet,ServletFilter和JSP,这些组件部署在高端服务器上,Web服务层和容器提供了事务、命名、目录和JDBC等服务。其中,MVC模式分开了表示逻辑,业务逻辑和数据。
业务层负责执行必需的业务逻辑,它根据客户请求计算业务逻辑,但最好将这些组件隐藏起来,不将业务逻辑直接呈现给客户端。J2EE业务层包括业务逻辑,数据访问逻辑和相关服务。EJB是运行在业务层的业务组件,EJB具有分布特点,面向事务,其中会话Bean负责创建和维护客户与服务器组件的对话,实体Bean以适当方式实现数据的持久层,消息
驱动的Bean可将J2EE应用程序与基于JMS的中间件集成到一起。业务组件部署在业务服务器上,业务服务器为业务组件提供各种“校准”服务,如事务、命名和目录等。
EIS层将前端业务逻辑层的组件与后端数据库层连接起来,这一层的组件应尽量确保数据库不同资源与业务逻辑层组件的无缝集成。很多信息系统有规模大、技术难度大的特点,若巧妙集成这些信息系统,将能保护现有投资,并有效“重用”信息,流程和工作流。EIS层的集成不是单纯的数据集成,还涉及信息集成,对JDBC、JMS、J2EE连接器架构、JNI和JNDI等技术能起到帮助作用,其中J2EE连接器架构对企业最重要,能给J2EE平台带来“可插入”行为,厂商的资源适配器允许将信息系统插入J2EE平台,以实现近乎零障碍的集成。
三、Siebel-基于J2EE平台的CRM集成解决方案
Siebel是CRM理念与技术应用的最初实践者,为后来不断涌现的CRM软件厂商提供了业界的标准,可以毫不夸张的认为其是CRM的先驱与开创者。到目前为止,Siebel的CRM系统在CRM3个关键领域,即销售、营销及服务3者之间的数据/流程整合度最高,各种应用界面最为统一。Siebel产品功能齐全,企业更能根据自己的需要选择相应模块,有利于系统的集成,并为今后系统的功能扩展提供充足的前提条件。SiebelCRM应用引擎的多层体系如图2所示:
用户界面提供个性化用户界面,管理用户交互行为,从目标定义库(SRF)读取有关用户界面定义子集并解释执行。目标管理器(ObjectManager)为Siebel所有企业管理逻辑目标(BusinessObjects)提供完整一致的目标行为,从SRF读取与企业管理逻辑有关的目标定义子集并解释执行。数据管理器管理一个独立于RDBMS逻辑数据映像(DataView),从而使目标管理器功能独立,企业管理逻辑定义无需因不同的RDBMS而有所改变,并激发实时SQL语句,读取并解释SRF中有关数据关系链(DatabaseSchema)的定义,与数据交换层(DataExchange)通讯以访问存于RDBMS的物理数据。数据交换层直接处理与RDBMS相关的交互信息,作为数据管理器和RDBMS的中介桥梁。
客户端接口提供了用户界面的简单整合,利用COM、CORBA、ACTIVEX、XML等技术可以在客户端进行客户化整合。服务端的接口为企业逻辑定义目标提供了实时连接,利用COM、CORBA、XML、MQSeries可在服务器端进行整合。数据管理器的接口提供了数据库与数据库之间的数据迁移工具,利用数据库工具在不同的RDBMS之间进行大容量数据交换。
Siebel的企业数据整合管理(EIM)是专门为系统实施所提供的数据整合管理工具,它用来处理Siebel数据库和企业其他数据库之间的数据交换。EIM利用系统中介数据库表(InterfaceTables)暂时存储输入输出数据,开发人员只需直接读写中介数据库表的内容,中介表与Siebel数据库之间的数据交换与转换由Siebel服务器的EIM批作业自动完成。使用EIM可以对数据进行批量输入、输出、数据整合和删除。在需要数据输出到别的应用系统场合,可以用EIM从Siebel数据库输出数据供其他系统使用。必要时可以根据对定义对数据库的纪录进行整合处理,消除重复纪录。可以根据定义进行数据删除工作,EIM将根据要求将各相关的纪录删除。
Siebel服务器采取逻辑体系:
Gateway服务器也称名字服务器,作为各企业服务器的单一入口,动态分配注册Siebel服务器和各应用组件(ServerComponent)的可应用状态,存储服务组件定义以及分配连接信息;如安装第三方负载平衡软件,则可以根据服务器负载情况动态分配入口请求。Siebel服务器运行一个或多个Siebel服务程序,从名字服务器读取服务器的配置信息,利用数据接口访问数据库服务器。企业服务器(EnterpriseServer)逻辑管理一个或多个Siebel服务器,
读取单个RDBMS。数据库服务器存储Siebel数据关系链,支持各种流行的数据库标准接口。Siebel文件系统存储所有经压缩的文档数据及其他非标准数据,以供Siebel应用软件读取和存储。
四、总结
通过集成将企业多种应用连接在一起形成企业集成系统是企业信息化建设的高级阶段,构建企业集成系统可以提高企业信息化应用的水平,为提升企业的市场竞争力提供信息技术手段上的支持。采用集成平台技术实施企业集成系统是目前相对先进和有效的方法,J2EE由于其平台无关性成为开发集成平台的首选,Siebel是基于J2EE平台的系统集成解决方案,可通过数据交换、企业数据整合管理(EIM)、流程整合等实现系统间的集成,现广泛应用于CRM领域。
参考文献:
1、熊严,路书颜,郝永平.网络制造环境下基于J2EE平台的信息集成技术[J].机械设计与制造,2004(11).
2、刘泽轩,江春花.基于J2EE架构的科研管理系统的设计与实现[J].计算机工程与设计,2007(11).
3、范玉顺,李建强.企业集成与集成平台技术[M].机械工业出版社,2004(8).