已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
J2EE架构与程序设计,主讲:方顺西北工业大学软件与微电子学院,介绍,本课程讲授J2EE平台的基本原理及利用J2EE开发企业级应用程序的方法,主要包括如下内容:Web应用开发方法JSP/ServletJSTLJSFEJB2.0to3.0J2EEPlatformServicesJ2EE企业架构模式最佳实践,先修课程或准备知识,XMLJava编程基础(SSD3)分布式编程基本知识,考核办法,课程成绩由三方面构成平时表现:20%实验成绩:30%期末考试或期末project:50%,教材及资源,教材BryanBasham,KathySierra,BertBates.Headfirstservlets&JSP,2ndEdition.March2008.BillBurke,RichardMonson-Haefel著,莫映,徐昊,胡凯译.EnterpriseJavaBeans3.0中文版.电子工业出版社2007.5DeepakAlur,JohnCrupi,DanMalks著,刘天北,熊节等译.J2EE核心模式(原书第2版).机械工业出版社2005.3课件资源0/课件/J2EE架构与程序设计,第一章J2EE架构概述,主要内容,分布式多层应用J2EE容器WebServices支持打包应用开发角色J2EEAPIs,引子,Java2Platform,EnterpriseEdition(J2EE)为设计、开发、装配和部署企业应用程序提供了一个基于组件的方法J2EE平台提供了:一个多层分布式应用模型可复用组件模型一个统一的安全模型灵活的事务控制支持WebServices通过J2EE平台,可以更快地构建创新的商业解决方案基于J2EE组件的平台独立性,使开发的应用不依赖于特定厂商的产品和API软件厂商和客户都能自由地选择符合其需求的产品和组件,分布式多层应用,应用逻辑按照功能分成若干组件,组成J2EE应用的各种应用组件按照多层J2EE环境中的层次结构,安装在不同的机器上。,分布式多层应用,安全在每个应用中使用平台无关的安全策略允许在部署时定义安全约束应用程序能够在多种安全实现上移植对应用开发者屏蔽实现安全特性的复杂性J2EE平台提供了标准的声明式访问控制规则,可由开发者定义并在应用部署到服务器时解释J2EE提供了标准的登录机制,开发者可以不用重复开发,分布式多层应用,J2EE组件AJ2EEcomponentisaself-containedfunctionalsoftwareunitthatisassembledintoaJ2EEapplicationwithitsrelatedclassesandfilesandthatcommunicateswithothercomponents.J2EE规范定义了如下组件:应用客户端(applicationclients)和Applets是客户端运行的组件Servlet和JSP组件是服务器上运行的web组件EnterpriseJavaBeans(EJB)组件是服务器上运行的业务组件,分布式多层应用,J2EE客户端Web客户端thinclient动态Web页面:由Web层运行的web组件生成Web浏览器:显示页面Applet应用客户端richeruserinterface直接访问企业Beans打开HTTP连接,与Web层的servlet通信JavaBeans组件瘦客户端可提升应用的可分布性、可部署性和可管理性,而富客户端可获得良好的用户体验。,分布式多层应用,服务器通信,分布式多层应用,Web组件ServletServletsareJavaprogramminglanguageclassesthatdynamicallyprocessrequestsandconstructresponses.JSPJSPpagesaretext-baseddocumentsthatexecuteasservletsbutallowamorenaturalapproachtocreatingstaticcontent.JavaBeans(optional),分布式多层应用,Web组件,分布式多层应用,业务组件SessionbeansAsessionbeanrepresentsatransientconversationwithaclient.Whentheclientfinishesexecuting,thesessionbeananditsdataaregone.EntitybeansAnentitybeanrepresentspersistentdatastoredinonerowofadatabasetable.Iftheclientterminatesoriftheservershutsdown,theunderlyingservicesensurethattheentitybeandataissaved.Message-drivenbeansAmessage-drivenbeancombinesfeaturesofasessionbeanandaJavaMessageService(JMS)messagelistener,allowingabusinesscomponenttoreceiveJMSmessagesasynchronously.,分布式多层应用,业务组件,JavaPersistenceEntitiesinJavaEE5,分布式多层应用,EIS(EnterpriseInformationSystem)层ERP数据库系统遗产系统,J2EE容器,为什么需要容器?瘦客户端多层应用程序开发面临的难题事务管理状态管理多线程资源池其它复杂的底层细节J2EE服务器对所有类型的组件,以容器的形式提供了一组底层服务。开发者不需重复开发,而只需关注业务问题,J2EE容器,容器服务容器是一个组件和支持组件的底层平台特定功能之间的界面Web组件、企业Bean、应用客户端组件必须组装成J2EE模块并部署于容器中才能执行组装过程包括为J2EE应用中每个组件定义容器方面的设置为J2EE应用本身定义设置项,J2EE容器,容器管理的服务有可配置的服务安全服务事务服务JNDI查找服务J2EE远程连接服务不可配置的服务企业Bean和Servlet寿命周期数据库连接资源池数据持久化访问其它J2EE平台API,同一J2EE应用中的应用组件依照部署方式不同而表现出不同的行为,J2EE容器,J2EE服务器和容器,对Webservices的支持,Webservices是基于Web的企业应用,它使用开放的、基于XML的标准和传输协议与调用它的客户端进行数据交换XML:跨平台、可扩展、基于文本的描述数据的标准。自定义标签(tag)用schema定义其格式用XSL定义处理和展现数据的方式SOAP:客户请求和web服务响应描述成SOAP消息信封(Envelope):定义了一个框架,该框架描述了消息中的内容是什么,包括消息的内容、发送者、接收者、处理者以及如何处理这些消息。编码规则:它定义了一种系列化机制,用于交换应用程序所定义的数据类型的实例。RPC表示:它定义了用于表示远程过程调用和应答协定。绑定:它定义了一种使用底层传输协议来完成在节点间交换SOAP信封的约定。,对Webservices的支持,WSDL:将Web服务描述定义为一组服务访问点,客户端可以通过这些服务访问点对包含面向文档信息或面向过程调用的服务进行访问。Types数据类型定义的容器Message通信消息的数据结构的抽象类型化定义Operation对服务中所支持的操作的抽象描述PortType对于某个访问入口点类型所支持的操作的抽象集合Binding特定端口类型的具体协议和数据格式规范的绑定Port定义为协议/数据格式绑定与具体Web访问地址组合的单个服务访问点Service相关服务访问点的集合UDDI和ebXML:在Internet上发布web服务信息的标准,对Webservices的支持,SOAP结构Webservices栈,打包应用,J2EE应用打包成EAR文件(EnterpriseArchive),包括J2EE模块部署描述符:描述应用、模块或组件的部署设置J2EE部署描述符运行时部署描述符应用服务器特定,打包应用,J2EE模块:一个J2EE模块包括一或多个具有相同容器类型的J2EE组件,以及一个组件部署描述符EJB模块企业bean(class)+EJB部署描述符.jarWeb模块Servlet(class)+JSP+其它Class+HTML+图片+Web部署描述符.war应用客户端模块Javaclass+应用客户端部署描述符.jar资源适配器模块Javainterface,class,nativelibraries,andotherdocumentation+资源适配器部署描述符.rar,打包应用,开发角色,J2EE规范定义了如下角色J2EEProductProvider实现J2EE产品,提供容器、实现API及其它J2EE特性ToolProvider提供组件开发、组装和打包工具ApplicationComponentProvider构建J2EE应用中使用的Web组件、企业Bean、Applets,或应用客户端ApplicationAssembler将应用模块组装成J2EE应用的EAR文件ApplicationDeployerandAdministrator配置和部署J2EE应用程序、管理计算和网络架构、监控运行环境,J2EEAPIs,J2EE1.4,J2EEAPIs,JavaEE5,J2EEAPIs(1),EnterpriseJavaBeans执行业务逻辑三种企业beanSessionbeansEntitybeans(在JavaEE5中被JavapersistenceAPIentities取代)Message-drivenbeansJavaServletJavaServerPagesJavaServerPagesStandardTagLibrary(JSTL,newinJavaEE5)封装了对许多JSP应用来说通用的核心功能。JSTL有迭代和条件Tag,可以处理流程控制;有处理XML文档的Tag;有用于国际化的Tag;有使用SQL访问数据库的Tag;及一些经常使用的功能。,J2EEAPIs(2),JavaServerFace(JSF,newinJavaEE5)是一个创建Web应用的用户界面框架主要组件包括一个GUI组件框架用于在不同的HTML或各种标记语言和技术下渲染组件的柔性模型一个用于生成HTML/4.01标记的标准RenderKitJavaMessageService(JMS)J2EE应用组件创建、发送、接收和读取消息的消息通信标准支持分布式通信,具有松散耦合、可靠、异步的特征JavaTransactionAPI(JTA)JTA提供了划分事务的标准接口,UserTransaction接口是核心大多数情况下使用容器管理的事务,而不是JTAJavaMailAPI发送email通知的API包括:一个应用级的接口;和一个服务提供者接口,J2EEAPIs(3),JavaBeansActivationFramework(JAF)JavaMail使用它,如处理MIME编码的邮件附件确定任意数据片断的类型;封装对其访问;发现其可用操作;创建可以执行这些操作的合适的JavaBean组件JavaAPIforXMLProcessing(JAXP)支持使用DOM、SAX和XSLT处理XML文档支持使用任何XML兼容的解析器和XSL处理器支持W3CXMLSchemaJavaAPIforXML-BasedRPC(JAX_RPC)使用SOAP标准和HTTP,可以在Internet上实现基于XML的远程过程调用支持WSDL,可以输出和输入WSDL文档可与运行在Java和非Java平台上的web服务客户端和服务器端实现互操作,J2EEAPIs(4),JavaAPIforXMLWebServices(JAX_WS,newinJavaEE5)是JAX-RPC的升级使用JAXBAPI绑定XML数据到Java对象引入了面向消息的功能,支持异步编程模型支持SOAP1.2可直接使用XML/HTTP绑定SOAPwithAttachmentsAPIforJava(SAAJ)是一个底层API允许生成和使用符合SOAP1.1和SOAP附件规范的消息一般不会直接被使用,而是使用JAX-RPC、JAX-WS,J2EEAPIs(5),JavaAPIforXMLRegistries(JAXR)支持ebXML注册和存储标准支持UDDI规范J2EEConnectorArchitecture(JCA)用于开发资源适配器基于J2EE的Web服务与已有EIS间同步或异步集成,这种集成是面向性能的、安全的、可扩展的、基于消息的、和事务的JDBCAPI用Java编程语言的方法调用SQL命令分成两部分应用级接口应用组件访问数据库服务提供者接口将JDBC驱动程序绑缚到J2EE平台上,J2EEAPIs(6),JavaNamingandDirectoryInterface(JNDI)提供目录和命名功能允许J2EE应用程序发现和获得任意类型的对象与实现无关,可以访问多种已有的命名
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025江西景德镇市总工会合同制工会社会工作者招聘15人(公共基础知识)综合能力测试题附答案
- 2026年四川长江职业学院单招(计算机)考试参考题库附答案
- 2026年保密员保密知识考试卷完整答案
- 2025年江西工业贸易职业技术学院单招(计算机)考试参考题库附答案
- 2025四川长虹虹微科技有限公司招聘冰箱工业设计师岗位1人(公共基础知识)测试题附答案
- 2025国都证券证券投资业务总部招聘(公共基础知识)测试题附答案
- 2025年安徽新安银行公开招聘(公共基础知识)测试题附答案
- 2026年长垣烹饪职业技术学院单招(计算机)考试备考题库附答案
- 2025河南大学体育学院人才招聘(公共基础知识)测试题附答案
- 2026年应天职业技术学院单招(计算机)考试参考题库附答案
- GB/T 30341-2025机动车驾驶员培训教练场技术要求
- 2025年脾胃科出科考试题及答案
- 河北省2025年职业院校嵌入式系统应用开发赛项(高职组)技能大赛参考试题库(含答案)
- 2025年公需课新质生产力试题及答案
- 2025年70岁老年人换新本驾驶证需考三力测试题及答案
- 城建档案规范化管理流程与操作指南
- 保安员冬季安全知识培训课件
- 智慧园区项目合作协议书
- 遗体火化师招聘考核试卷及答案
- 2025年大学消防指挥专业题库- 火灾现场搜救与救援
- 2024-2025学年山东省聊城市临清市七年级(上)期末数学试卷(含答案)
评论
0/150
提交评论