




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1. J2EE 简介 随着 JAVA 语言的不断发展,其在服务器端的开发优势越来越明显,因此,越来越多的技术融入到 JAVA 平台中,并且新的 API 和标准不断的出现以便更好的适应不同的需求,从而最终形成了集所有企业相关的 标准和 API 于一身的 J2EE 平台。J2EE 是开发分布式企业软件应用的平台。它包括 EJB,RMI,JDBC,JSP,JNDI,JMS,JTA,JavaMail 等技术。其中,Enterprise JavaBeans(EJB)组件架 构是 J2EE 的基础和最重要的部分。 由于 J2EE 在各种领域内创建了适用于企业需要的一系列开放的标准,绝大多数供应商产品的基础架构或 部件都是遵循 J2EE 标准来开发的,因此企业不需要再为单独的应用程序平台投资,而且可以选择 J2EE 中的组件来更好的满足自己的需要,使应用程序具有很好的扩展性和性能。 2. J2EE 应用程序模型 J2EE 是被设计为顾客,雇员,供应商,合作者提供企业级服务,这样的应用程序天生具有复杂性,他们 要访问各种类型的数据并分发于大量的客户端。为了更好的控制,管理这些应用程序,支持各种各样用户 的商业功能要在中间层引入,中间层描述了一个被企业的信息技术部门紧紧控制的环境。J2EE 应用程序 依靠于 EIS 层来存储企业的商业数据。这些数据和用来管理它的系统是企业中的核心。 最初,双层结构(client-server)应用程序模型许诺将提高伸缩性与更广阔的功能 ,但不幸的是,直接向用户提 供 EIS 服务的复杂性和再每台用户计算机上安装和维护商业逻辑所引起的管理上的问题成了很大的限制。 而这些再双层结构中的限制在三层结构中已不存在了。 如今要求既开发服务的商业功能,还要开发访问数据库和其他资源的代码,这是很复杂的,因为每一种多 层结构的服务器都有它自己的应用模型,因此组建一直富有经验的开发队伍将是困难的。另外,随着服务 规模的扩大,为了降低开支和加快响应速度,也要经常对其基层代码进行修改。 J2EE 应用模型定义了一种建筑模型来让多层应用程序实现服务,并消除了以上的问题,提供了可伸缩的, 易访问的,易于管理的方法。 J2EE 应用模型把实现多层结构服务的工作划分为二部分: 1) 开发者实现商业和表达逻辑,以及由 J2EE 平台提供的标准的系统服务。 2) 开发者可以依赖于这个平台为开发中间层服务中遇到的系统级硬件问题提供解决方案。 J2EE 应用程序模型通过在建立多层应用程序中最小化其复杂程度,围简化和加速应用程序的开发迈出了 重要的一步。 后续:关于 J2EE 的学习与总结(非菜鸟勿看) zhizhiping(原作) 关键字 j2ee,struct,jsp,ejb(福州大学, qq:44309306) 5. J2ee 在实际中的应用 5.1. Strust 的应用 Struts 开始于 2000 年 3 月,1.0 在 2001 年 7 月发布。采用 Struts 能开发出基于 MVC(Model-View- Controller)设计模式的应用构架。MVC 设计模式把一个系统分成 3 个相互协调的部分: Model(模型):模型用于封装系统的状态 View(视图):是模型的表示,提供用户交互界面。当模型状态发生变化时,视图应该得到通知,以便更 新视图。 Controller(控制器):接受来自视图的请求,修改模型的状态。 Struts 应用有 3 个主要部件:一个 Servlet Controller(由 Struts 提供,org.apache.action.ActionServlet, 以下简称 controller)及负责具体业务处理的 Action 类(org.apache.action.Action 的基类);Jsp 页面 (viewer);应用的业务逻辑封装(model)。Struts 的中心控制器(ActionServlet)接受所有来自客户 端的请求,并根据系统的配置(Struts-config.xml)路由 HTTP 请求到其他 Action 对象(开发者实现的 org.apache.struts.action.Action 的子类),在这些 Action 对象中会进行所有的业务操作,比如插入一条 订单,修改一条记录。处理完毕,由 Struts 的 ActionServlet 转向到 JSP 页面,将处理结果返回给客户端。 从这儿可以看出在 Struts 中 ActionServlet 担任了重要的角色,由它控制所有的程序流转,是 MVC 三个 相对独立的部分协调工作,提供系统的完善功能。从下图可见 Struts 是 MVC Model 2 的一个典型应用。 5.2. Struts 工作机理 在 Struts 启动时,controller 会读入一个配置文件 struts-config.xml,其中定义了前端请求的 url 与相应的 Action 类及使用的 Form 类的映射关系,下面是一个 struts-config.xml 中的片断: 从中可以看出,这个 action 会响应 url 类似于/logon 的请求(在后面我们会看到,这儿的实际的 url 要根 据在 web.xml 中配置,比如可能为/logon.do 或/logon.other 之类的带后缀的 url),负责处理这个请求的 action 类是 org.apache.struts.webapp.example.LogonAction,使用的 FormBean 是 logonForm,scope 界定了这个 FormBean 存在的范围是只在当前 request 中存在。 struts 会读入这些设置,生成相应的 org.apache.action.ActionMapping 对象。controller 正是使用这些 mapping 来把 HTTP 请求转发到应用的 actions。一个 ActionMapping 指定了 1)一个请求 URI 2)对应的类(Action 的子类) 3)需要的属性 对于一个 DB 应用 1)一个商业逻辑 Bean 用于连接、查询数据库 2)这个 Bean 返回结果到 Action 3)Action 将这些结果存储到 request 的 form bean 中 4)Jsp 显示 6. J2EE 项目中开发团队的组建 J2EE 这种应用模型允许不同的开发人员同时进行开发的各个元素。这里阐述一下对不同层次的设计人员, 开发人员的技术要求。对以下几个分类进行描述。 设计师组建团队 表现逻辑层的团队角色 业务逻辑层等团队角色 数据库访问层的团队角色团队的组成可以根据人员的数量和系统的范围大小。例如,不一定所有的角色都 要分配,有些人可以担当不能的角色。 参考文献 u studying in Struts (icecloud) u EJB technology (yuan_er) u J2EE 项目中开发团队的组建(作者:任甲林 中国系统分析员 2003-08-05) u J2EE 体系结构设计 (作者: 务实 Thursday, October 9 2003 3:30 PM) 续:关于 J2EE 的学习与总结(非菜鸟勿看) zhizhiping(原作) 关键字 j2ee,struct,jsp,ejb(福州大学, qq:44309306) 3. J2ee 体系结构 目前大多数企业采用 J2EE 技术的结构设计与解决方案。对于我们学习和研究 J2EE 体系结构来说,了解 与掌握 J2EE 体系结构的设计方法及一些常用模式是必须的;模型-视图-控制(model-view-control,简称 MVC)结构是目前最常见的 J2EE 应用所基于的体系结构,MVC 主要适用于交互式的 Web 应用,尤其是 存在大量页面及多次客户访问及数据显示;相比较而言,一个工作流体系结构更多应用于过程控制和较少 交互的情况下;除了体系结构外,J2EE 的设计模式对我们解决应用系统的设计也有很大的帮助。 4. J2ee 所需要的一些主要技术 4.1. EJB 技术 Enterprise JavaBeans(EJB)是一个软件组件模型。如今开发电于商务平台已大量使用组件技术这是因 为组件技术提供了服务器上的自治、企业级和分布式功能,并帮助开发者在不同颗粒度级别上定义和封装 系统功能。通过采纳组件技术、已建立旧系统的企业在与从一开始就围绕前沿组件体系结构设计的新公司 竞争起来更容易。而且软件组件比传统程序更易于为日后的需求进行维护、支持和修改。在金融行业中, 利用以服务器为中心方式的优势在于,可以定义商业过程将它作为一组软件组件编写一次,然后通过多 种渠道传递。一旦使金融系统变为由单独的自治组件(而非单一庞大程序) 组成灵活性就随之而来了。 EJB 的组件结构是以作为可复用的服务器端组件而设计的,它使企业能够建立可升级、安全可靠、可运行 于多重平台且以商务为重点的应用程序。EJB 可以让企业开发人员只集中于开发商务逻辑,而不用花费精 力处理分布式服务器端系统所带来的底层问题,从而使开发人员可以快速开发大规模的企业应用。 4.2. Jsp,Sevlet 技术 在 Java2 中可以实现向用户的浏览器直接提供动态 Html 页的服务,在 JavaServerPage 技术中通过在 Html 页中插入 Java 代码动态生成页是一种很容易的事情。在一些例子中,某些服务需要一些综合的代码, 者可以通过从 Jsp 中调用 JavaBean 的方法来实现。 采用 jsp 技术的优点有一下部分: 1) 将内容的生成和显示进行分离 使用 JSP 技术,Web 页面开发人员可以使用 HTML 或者 XML 标识来设计和格式化最终页面。使用 JSP 标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的,例如请求帐户信息或者特定的一瓶 酒的价格)。生成内容的逻辑被封装在标识和 JavaBeans 组件中,并且捆绑在小脚本中,所有的脚本在 服务器端运行。如果核心逻辑被封装在标识和 Beans 中,那么其他人,如 Web 管理人员和页面设计者, 能够编辑和使用 JSP 页面,而不影响内容的生成。 在服务器端,JSP 引擎解释 JSP 标识和小脚本,生成所请求的内容(例如,通过访问 JavaBeans 组件, 使用 JDBCTM 技术访问数据库,或者包含文件),并且将结果以 HTML(或者 XML)页面的形式发送回 浏览器。这有助于作者保护自己的代码,而又保证任何基于 HTML 的 Web 浏览器的完全可用性。 2) 生成可重用的组件 绝大多数 JSP 页面依赖于可重用的,跨平台的组件(JavaBeans 或者 Enterprise JavaBeansTM 组件) 来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些 组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他 们现有的技能和优化结果的开发努力中得到平衡。 3) 采用标识简化页面开发 Web 页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page 技术封装了许多功能,这些功 能是在易用的、与 JSP 相关的 XML 标识中进行动态内容生成所需要的。标准的 JSP 标识能够访问和实 例化 JavaBeans 组件,设置或者检索组件属性,下载 Applet,以及执行用其他方法更难于编码和耗时的 功能。 通过开发定制化标识库,JSP 技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建 自己的标识库。这使得 Web 页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来 工作。 4) 将内容的生成和显示进行分离 与 SERVLETS 相比,JSP 能提供所有 SERVLETS 功能,但它比用 println 书写和修改 HTML 更方便。此 外,你可以更明确的进行分工,WEB 页面设计人员编写 HTML,只需要留出地方让 SERVLETS 程序员 插入动态部分即可。 5) 由于 JSP 页面的内置脚本语言是基于 Java 编程语言的,而且所有的 JSP 页面都被编译成为 Java Servlet,JSP 页面就具有 Java 技术的所有好处,包括健壮的存储管理和安全性。 6) 作为 Java 平台的一部分,JSP 拥有 Java 编程语言“一次编写,各处运行”的特点。随着越来越多的供 应商将 JSP 支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不 影响当前的应用。 4.3. 中间件 中间件本来属于体系机构方面的内容,因其越来越重要的地位,已经使其成为 J2EE 中非常重要的技术。 J2EE 应用程序模型的一个主要优点便是在中间层的多层应用程序。在 J2EE 平台,中间层商业功能是由 企业 JavaBean 实现的。这些企业 Beans 允许服务开发者集中于商业逻辑,并且让 EJB Server 处理传送 稳定的,可升级服务的复杂工作。 JavaServerPages 技术和 Servlets 向客户层提供了易于访问的 Internet 型服务的中间层功能。Jsp 技术使 用户接口开发者更加容
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年企业安全管理人员安全培训考试试题含答案(培优B卷)
- 2025年陕西省西安市西咸新区中考二模语文试题(原卷版+解析版)
- 2024年漳州市凌波酒店管理集团有限公司招聘真题
- 洛阳市直学校中小学招聘考试真题2024
- 湖北水发集团园招聘考试真题2024
- 父母健在遗产协议书
- 白酒区域销售协议书
- 社保赔偿终止协议书
- 水电供应合同协议书
- 猪场购买合同协议书
- 水果店创业蓝图:市场分析与经营策略
- 2025枣庄学院辅导员考试题库
- 丁集矿井1.8Mt-a新井设计-煤矿冲击矿压
- 鱼塘项目可行性研究报告
- 2024年世界职业院校技能大赛高职组“化学实验技术”赛项参考试题库(含答案)
- 数学活动5用不等式解决实际问题和猜猜哪个数最大(课件)人教版七年级数学下册
- 烟草公司办公楼物业服务方案
- 烧伤病人的护理课件
- 2025年湖南省中职《思想政治》普测核心考点试题库500题(重点)
- 《基于PLC药品自动包装机设计》11000字【论文】
- 2025年全球及中国800G 数据中心交换机行业头部企业市场占有率及排名调研报告
评论
0/150
提交评论