《基于JavaEE的电子商务网站建设》课件第4章.ppt

上传人(卖家):momomo 文档编号:7862620 上传时间:2024-08-28 格式:PPT 页数:118 大小:1.35MB
下载 相关 举报
《基于JavaEE的电子商务网站建设》课件第4章.ppt_第1页
第1页 / 共118页
《基于JavaEE的电子商务网站建设》课件第4章.ppt_第2页
第2页 / 共118页
《基于JavaEE的电子商务网站建设》课件第4章.ppt_第3页
第3页 / 共118页
《基于JavaEE的电子商务网站建设》课件第4章.ppt_第4页
第4页 / 共118页
《基于JavaEE的电子商务网站建设》课件第4章.ppt_第5页
第5页 / 共118页
点击查看更多>>
资源描述

1、第4章Java Web应用开发及开发平台第 4 章Java Web应用开发及开发平台4.1 Java EE简介简介 4.2 MVC模式概述模式概述 4.3 轻量级轻量级Java EE框架应用相关技术框架应用相关技术4.4 建立开发平台建立开发平台 第4章Java Web应用开发及开发平台4.1 Java EE简介简介4.1.1 Java EE及其模型及其模型Sun公司所提出的经典Java EE应用规范,往往以EJB(企业级Java Bean)为核心,以应用服务器为运行环境,所以通常开发、运行成本较高。第4章Java Web应用开发及开发平台轻量级容器提供了一种管理、定位业务对象的办法,用不着J

2、NDI寻址、定制服务器之类的额外辅助。轻量级容器为应用对象提供注册服务,其较之EJB容器而言,不仅功能强大,而且避免了容器强制业务对象采用特定的接口,最大程度地降低了侵入性,实现了效果极佳的架构重用。第4章Java Web应用开发及开发平台1.Java EE的概念Java EE是我们所熟知的Java 2三大平台之一J2EE(Java 2 Platform Enterprise Edition)的新名称,是Sun公司定义的一个开发分布式企业级应用的规范。J2EE技术的基础就是核心Java平台或Java 2平台的标准版。J2EE不仅巩固了标准版中的许多优点,同时还提供了对EJB(Enterpris

3、e Java Beans)、Java Servlets API、JSP(Java Server Pages)以及XML技术的全面支持。第4章Java Web应用开发及开发平台J2EE体系结构能够提供中间层集成框架来满足无需太多费用而又需要高可用性、高可靠性以及可扩展性的应用需求。通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成的强有力支持,完全支持Enterprise Java Beans,有良好的向导支持打包和部署应用,添加目录支持,既增强了安全机制,又提高了性能。第4章Java Web应用开发及开发平台2.Java EE模型和组件Java EE使

4、用多层的分布式应用模型,应用逻辑按功能划分为组件,各个应用组件根据它们所在的层分布在不同的机器上。Java EE的出现是为了解决两层模式(Client/Server,C/S)的弊端。在传统C/S模式中,虽然部署比较容易,但是客户端担当了过多的角色而显得臃肿,难于升级或改进,重用业务逻辑和界面逻辑非常困难,可伸展性也不理想。第4章Java Web应用开发及开发平台下面是Java EE典型的四层结构和图示(见图4-1):运行在客户端机器上的客户层组件;运行在J2EE服务器上的Web层组件;运行在J2EE服务器上的业务逻辑层组件;运行在EIS服务器上的企业信息系统(Enterprise Inform

5、ation System,EIS)层软件。第4章Java Web应用开发及开发平台图4-1 Java EE四层结构第4章Java Web应用开发及开发平台4.1.2 Java EE组件和结构组件和结构1.Java EE组件Java EE说明书中定义了以下四个组件:应用客户端程序和Applets是客户层组件;Java Servlet和JSP是Web层组件;EJB是业务层组件;企业信息系统层组件。第4章Java Web应用开发及开发平台1)客户层组件 Java EE应用程序可以是基于Web方式的,如静态HTML、脚本语言或各种标签等;也可以是基于传统客户机方式的,如专用的客户端程序或软件。2)We

6、b层组件 Java EE的Web层组件可以是JSP页面或Servlets。如图4-2所示,Web层使用JavaBean实体来处理用户输入,并把输入发送给运行在业务层上的EJB来进行处理。第4章Java Web应用开发及开发平台图4-2 Web层组件第4章Java Web应用开发及开发平台3)业务层组件业务层代码的逻辑用来满足银行、零售和金融等特殊商务领域的需要,由运行在业务层上的EJB进行处理。图4-3表明了一个EJB是如何从客户端程序接收数据,进行处理,并发送到EIS(企业信息系统)层储存的。这个过程也可以逆向进行。第4章Java Web应用开发及开发平台图4-3 业务层组件第4章Java

7、Web应用开发及开发平台 会话Bean(Session Beans):会话Bean表示与客户端程序的临时交互。实体Bean(Entity Beans):实体Bean表示数据库表中一行永久的记录。当客户端程序中止或服务器关闭时,就会有潜在的服务保证实体Bean的数据得以保存。消息驱动Bean(Message-Driven Beans):消息驱动Bean结合了会话Bean和JMS消息监听器的特性,允许一个业务层组件异步接收JMS 消息。第4章Java Web应用开发及开发平台4)企业信息系统层组件企业信息系统层组件包括企业基础建设系统(ERP、CRM、SCM等)、大型机事务处理、数据库系统和其它的

8、遗留信息系统等。第4章Java Web应用开发及开发平台2.Java EE的结构1)容器和服务 Java EE安全(Security)模型:通过让开发者配置Web组件或EJB,使得只有被授权的用户才能访问系统资源。不同客户分别属于不同的角色,而每个角色只允许访问特定的方法。开发者只要在EJB的布置描述中声明角色和可被访问的方法,而不必编写加强安全性的规则。第4章Java Web应用开发及开发平台 Java EE事务管理(Transaction Management)模型:让开发者指定组成一个事务中所有方法间的关系,并将这些方法当成一个单一的单元。当在客户端激活一个EJB中的方法时,容器介入管理

9、事务,这使得开发者只需在布置描述文件中声明EJB的事务属性,而不用编写并调试复杂的代码。要求控制分布式事务的代码会非常复杂,容器将读取此文件并处理此EJB的事务。第4章Java Web应用开发及开发平台 JNDI寻址(JNDI Lookup)服务:为企业内的多重名字和目录服务提供了一个统一的接口,这样应用程序组件可以更方便地访问名字和目录服务。Java EE远程连接(Remote Client Connectivity)模型:管理客户端和EJB间的底层交互。当一个EJB被创建后,客户端可以像调用本地客户机的方法一样调用EJB。第4章Java Web应用开发及开发平台 生存周期管理(Life C

10、ycle Management)模型:管理EJB的创建和移除,容器创建EJB,并在可用实例池与活动状态中移动它,而最终将其从容器中移除,这就是EJB的生存周期。数据库连接池(Database Connection Pooling)模型:这是一个有价值的资源。容器通过管理连接池来缓和数据库连接时服务器的效率。第4章Java Web应用开发及开发平台2)容器类型 如图4-4所示,Java EE应用组件可以安装部署到以下几种容器中去。EJB容器:EJB和它们的容器运行在Java EE服务器上,管理所有Java EE应用程序中EJB的执行。Web容器:Web组件和它们的容器运行在Java EE服务器上

11、,管理所有Java EE应用程序中JSP页面和Servlet组件的执行。第4章Java Web应用开发及开发平台 应用程序客户端容器:应用程序客户端和它们的容器运行在客户端机器上,管理所有Java EE应用程序中应用程序客户端组件的执行。Applet容器:运行在客户端机器上,通常是Web浏览器和Java插件的结合。第4章Java Web应用开发及开发平台图4-4 Java EE结构第4章Java Web应用开发及开发平台3.Java EE的优势要回答这些问题,我们不能仅考虑系统开发过程,还需要考虑系统后期的维护、扩展;我们不能仅考虑那些小型系统,还要考虑大型系统的协同开发。对于学习、娱乐性的个

12、人站点,的确没有必要使用复杂的Java EE应用架构,采用纯粹的JSP就可以实现整个系统。但是对于大型的信息化系统而言,采用Java EE应用架构则有很大的优势。第4章Java Web应用开发及开发平台1)保留现存的IT资产Java EE拥有广泛的业界支持和一些重要的“企业计算”领域供应商的参与,每一个供应商都为现有的客户提供了不用废弃已有投资而进入可移植的Java EE领域的升级途径;再加上基于Java EE平台的产品几乎能够在任何操作系统和硬件配置上运行,现有的操作系统和硬件也能被保留使用。第4章Java Web应用开发及开发平台2)高效的开发Java EE允许公司把一些通用的、很繁琐的服

13、务端任务交给中间件供应商去完成。高级中间件供应商能够提供以下复杂的中间件服务:状态管理服务:开发人员不用关心如何管理状态,从而可以编写更少的代码,更快地完成程序开发。第4章Java Web应用开发及开发平台 持续性服务:开发人员在编写应用程序时,不用对数据访问逻辑进行编码,即可生成更轻巧、与数据库无关的应用程序,而且这种应用程序更易于开发与维护。CACHE服务:开发人员能编制高性能的系统,极大地提高整体部署的伸缩性。第4章Java Web应用开发及开发平台3)支持异构环境基于Java EE的应用程序不依赖任何特定的操作系统、中间件和硬件,因此只需开发一次就可部署到各种平台,这在典型的异构企业计

14、算环境中是十分关键的。Java EE标准也允许把Java EE兼容的第三方现成组件部署到异构环境中,这样可以节省企业信息化方案所需的费用。第4章Java Web应用开发及开发平台4)可伸缩性基于Java EE平台的应用程序可被部署到各种操作系统上,例如高端UNIX与大型机系统,这种系统单机可支持64至256个处理器(这是NT服务器所望尘莫及的)。Java EE领域的供应商还提供了更为广泛的负载平衡策略,能消除系统中的瓶颈,允许多台服务器集成部署。第4章Java Web应用开发及开发平台5)稳定的可用性一些Java EE可部署在Windows、Sun Solaris和IBM OS/390等可靠的

15、环境中,支持长期的可用性。Internet是全球化的、无处不在的,一个服务器端平台必须能全天候运转以满足公司客户、合作伙伴的需要,因此可靠的部署至关重要。第4章Java Web应用开发及开发平台4.1.3 Java EE常用服务器常用服务器在开源Java应用服务器领域,JBoss、Tomcat及Apache的Geronimo不仅是商业领域的领跑者,同时是技术领域的先行者。Geronimo是对Java EE5标准100%的实现,正在快速发展中。表4-1就JBoss 4.2、Geronimo 2及Tomcat 6的特性进行了全面的比较。第4章Java Web应用开发及开发平台第4章Java Web

16、应用开发及开发平台1)TomcatTomcat是一个免费的开源Web服务器,它实现了完整的Servlet规范,可作为Servlet和JSP技术的参考实现。Tomcat作为开放源代码的Web服务器,已经得到了广泛的应用,是Web应用程序很好的开发和运行平台,并且支持服务器集群。第4章Java Web应用开发及开发平台Tomcat 6本身就是一种轻量级的解决方案,所以它并不包括Java EE 5的所有特性,或是在JBoss及Geronimo中所提供的特性,但正是由于它的轻量级,才使它对内存的占有量比较少,并且比其它两种服务器运行起来更快。Tomcat是目前开发小型Java Web应用的最佳选择。第

17、4章Java Web应用开发及开发平台2)JBossJBoss是由开源社区开发,遵循商业友好的LGPL授权分发的全功能的J2EE应用服务器。JBoss应用服务器通过了Sun公司的J2EE认证,还可以和Tomcat或Jetty集成使用。3)Resin Resin是目前速度最快的Web服务器,它提供了极快的Servlet容器,能够完整地支持Java Web应用程序。此外,Resin还提供了一个快速的XSLT引擎以转换XML文档。第4章Java Web应用开发及开发平台4)Jetty Jetty是一个开放源代码的Web服务器,它提供了完整的Servlet和JSP技术的支持。Jetty既可以作为独立的

18、Web服务器来运行Java Web应用程序,也可以非常容易地嵌入到Java应用程序或其它J2EE应用服务器(如JBoss)中。第4章Java Web应用开发及开发平台4.2 MVC模式概述模式概述4.2.1 MVC的结构及优势的结构及优势MVC是Model-View-Controller的简称,即模型视图控制器。MVC是一种设计模式,它把应用程序分成三个核心模块:模型、视图和控制器,它们各自处理自己的任务。其结构如图4-5所示。第4章Java Web应用开发及开发平台图4-5 MVC结构第4章Java Web应用开发及开发平台在该结构中,视图是用户看到并与之交互的界面;模型是应用程序的主体部分

19、,它表示业务数据和业务逻辑,一个模型能为多个视图提供数据;控制器接受用户请求并决定调用哪个模型组件去处理请求,然后决定调用哪个视图来显示模型处理返回的数据。第4章Java Web应用开发及开发平台MVC模式的适用范围很广,这归功于MVC的如下优点:多个视图能共享一个模型,即同一个模型可以被不同的视图重用,大大提高了代码的可重用性。由于MVC的三个模块相互独立,改变其中一个不会影响其他两个,因此依据这种设计思想能构造良好的松耦合构件。第4章Java Web应用开发及开发平台 控制器提高了应用程序的灵活性和可配置性。控制器可以用来连接不同的模型和视图去完成用户需求,这样控制器可以为构造应用程序提供

20、强有力的手段。MVC更符合软件工程化管理的精神。不同的层各司其职,每一层的组件具有相同的特征,有利于通过工程化和工具化产生管理程序代码。第4章Java Web应用开发及开发平台4.2.2 MVC在在JSP Model 2中的实现中的实现Java Web编程技术经历了所谓的Model 1和Model 2两个时代,而在Model 2中引入了MVC模式,使得它更适用于大规模应用的开发。所谓Model 1模式就是整个Web应用几乎全部由JSP页面组成,用少量的JavaBean来处理与数据库相关的操作,如数据库连接、数据库CRUD等操作。第4章Java Web应用开发及开发平台JSP代码既可以用来接收处

21、理客户端请求,又可以直接对请求处理并做出响应,同时实现了视图和控制逻辑的功能。因此Model 1模式的实现比较简单,适用于快速开发小规模项目,特别是初学者理解起来很容易。但从工程化的角度看,它的局限性非常明显,JSP页面中夹杂着HTML,不仅使代码看起来混乱,也导致代码的重用性非常低,不利于在工程化思想中实现代码的可扩展性和可维护性,同时还不利于编程者的分工合作。第4章Java Web应用开发及开发平台在Model 2架构中,前端控制器由Servlet实现,并且Servlet只包含控制逻辑和简单的前端处理,负责接收客户端发送的请求;然后,调用后端JavaBean来完成实际的逻辑处理;最后,转发

22、到相应的JSP页面来处理显示逻辑。其具体的实现方式如图4-6所示。第4章Java Web应用开发及开发平台图4-6 Model 2的程序流程第4章Java Web应用开发及开发平台Model 2已经是基于MVC架构的设计模式。正如在图4-6中看到的,Model 2仅仅用于将结果呈现给用户,不再承担控制器的责任。JSP页面的请求与Servlet(控制器)交互,而Servlet负责与后台的JavaBean通信。在Model 2模式下,模型(Model)由JavaBean充当,视图(View)由JSP页面充当,而控制器(Controller)则由Servlet充当。第4章Java Web应用开发及开

23、发平台由于引入了MVC模式,因而使Model 2具有了组件化的特点,易于项目开发人员分工合作,但也增加了应用开发的复杂程度。原本需要一个简单的JSP页面就能实现的应用,在Model 2中被分解成多个协同工作的部分,需花更多时间才能真正掌握其设计和实现过程。因此,对于小型的Web应用,如果后期的更新、维护工作不是特别大,则可以使用Model 1模式来开发。第4章Java Web应用开发及开发平台4.3 轻量级轻量级Java EE框架应用相关技术框架应用相关技术4.3.1 Struts框架简介框架简介1.Struts1框架Struts1是世界上第一个发布的MVC框架。对于Struts1框架而言,因

24、为它与JSP/Servlet耦合非常紧密,因而导致了许多不可避免的缺陷,随着Web应用的逐渐扩大,这些缺陷逐渐变成制约Struts1发展的重要因素。第4章Java Web应用开发及开发平台列举Struts1中存在的种种缺陷:支持的表现层技术单一,仅支持JSP作为表现层技术。与Servlet API严重耦合,难于测试。代码严重依赖于Struts1 API,属于侵入式设计,导致了较低的代码复用。第4章Java Web应用开发及开发平台2.WebWork框架WebWork虽然没有Struts1那样赫赫有名,但也是出身名门,它来自另外一个优秀的开源组织opensymphony。WebWork采用了一种

25、松耦合的设计,让系统的Action不再与Servlet API耦合,使单元测试更加方便,这对于Struts1存在的那些先天性不足而言,显得更加优秀。第4章Java Web应用开发及开发平台 用于处理或代理请求的分发器(Dispatcher);支持多种视图技术(JSP、Velocity、JasperReports、XML、FreeMaker)的结果类型;一个小而强大的JSP标签库和Velocity宏定义;分发器调用XWork活动来访问和操作模型(Model),并为视图显示模型数据提供方便的途径。第4章Java Web应用开发及开发平台3.Struts2框架面对大量新的框架蓬勃兴起,Struts1

26、也开始了血液的更新。目前,Struts已经分化成两个框架:第一个框架就是传统Struts1和WebWork结合后的Struts2框架;另外一个框架是Shale,这个框架远远超出了Struts1原有的设计思想,与原有的Struts1的关联很少,使用了全新的设计思想。第4章Java Web应用开发及开发平台Struts2以WebWork优秀的设计思想为核心,吸收了Struts1的部分优点,建立了一个兼容WebWork和Struts1的框架。Struts2的目标是希望可以让原来使用Struts1、WebWork的开发人员,都可以平稳过渡到使用Struts2框架。第4章Java Web应用开发及开发平

27、台Struts2的优点概括如下:简化设计,类与类之间是松散的耦合;取消了ActionForm类,Action可以直接获得用户参数。使用OGNL进行参数传递,大大简化了开发人员在获取各种作用域中数据时的代码量。强大的拦截器功能,并且拦截器是可配置与重用的,可以将一些通用的功能如登录验证、权限验证等置于拦截器中以简化编码。第4章Java Web应用开发及开发平台 易于扩展的插件机制。在Struts2中添加扩展时只需将所需的Jar包放到WEB-INF/lib文件夹中,在struts.xml中做一些简单的设置就可以实现扩展。易于测试。Struts2的Action都是简单的POJO,这样可以方便的对St

28、ruts2的Action编写测试用例,大大方便了Java Web项目的测试。第4章Java Web应用开发及开发平台4.3.2 JSF框架简介框架简介准确地说,JSF是一个标准,而不是一个产品。JSF的行为方法在POJO中实现,JSF的Managed Bean无需继承任何特别的类。因此,无需在表单和模型对象之间实现多余的控制器层。JSF中没有控制器对象,控制器行为通过模型对象实现。第4章Java Web应用开发及开发平台JSF的事件框架可以细化到表单中的每个字段。JSF依然是基于JSP/Servlet的,仍然是JSP/Servlet架构,因而学习起来相对简单。在实际使用过程中,JSF也存在一些

29、不足:作为新兴的MVC框架,用户相对较少,相关资源也不是非常丰富。JSF并不是一个完全组件化的框架,它依然是基于JSP/Servlet架构的。JSF的成熟度还有待进一步提高。第4章Java Web应用开发及开发平台4.3.3 Spring框架简介框架简介Spring提供了一个细致完整的MVC框架。该框架为模型、视图、控制器之间提供了一个非常清晰的划分,各部分耦合极低。Spring框架以DispatchServlet为核心控制器,该控制器负责拦截用户的所有请求,并将请求分发到对应的业务控制器。第4章Java Web应用开发及开发平台Spring还包括处理器映射、视图解析、信息国际化、主题解析、文

30、件上传等功能。所有控制器都必须实现Controller接口,该接口仅定义ModelAndView handleRequest(request,response)方法。通过实现该接口来实现用户的业务逻辑控制器。第4章Java Web应用开发及开发平台Spring框架有一个极好的优势,就是它的视图解析策略:它的控制器返回一个ModelAndView对象,该对象包含视图名字和Model,Model提供了Bean的名字及其对象的对应关系。视图名解析的配置非常灵活,抽象的Model完全独立于表现层技术,不会与任何表现层耦合,而且JSP、Velocity或者其他表现层技术都可以和Spring整合。第4章J

31、ava Web应用开发及开发平台 Spring的MVC与Servlet API耦合,难以脱离Servlet容器而独立运行,降低了Spring MVC框架的可扩展性。太过细化的角色划分显得太过繁琐,降低了应用的开发效率。过分追求架构的完美,有过度设计的危险。第4章Java Web应用开发及开发平台4.3.4 ORM框架简介框架简介1.ORM技术对象关系映射ORM(Object Relational Mapping)是对象持久化的核心,它随着面向对象的软件开发方法的发展而产生,能够解决面向对象与关系数据库存在的互不匹配的现象。第4章Java Web应用开发及开发平台一般的ORM包括以下四部分:一个

32、对持久化对象进行CRUD操作的API;一个语言或API用来规定与类和类属性相关的查询;一个规定mapping metadata的工具;一种可以让ORM的实现同事务对象一起进行dirty checking、lazy association fetching以及其他的优化操作的技术。第4章Java Web应用开发及开发平台1)繁琐的代码问题用JDBC的API编程访问数据库时,代码量较大,特别是访问字段较多的表的时候,代码显得尤其繁琐,容易出错。一般情况下,程序员需要耗费大量的时间和精力去编写具体的数据库访问SQL语句,还要十分小心其中大量重复的源代码是否有疏漏,而不能集中精力于业务逻辑的开发。第4

33、章Java Web应用开发及开发平台2)数据库对象连接问题关系数据对象之间存在各种关系,包括1对1、1对多、多对1、多对多、级联等。在数据库对象更新的时候,如果采用JDBC编程,程序员必须十分小心地处理这些关系,以保证维持这些关系不会出现错误,而这是一个很痛苦的过程。ORM建立Java对象与数据库对象关系映射的同时,也自动根据数据库对象之间的关系创建Java对象的关系,并且提供了维持这些关系的完整、有效的机制。第4章Java Web应用开发及开发平台3)系统架构问题JDBC属于数据访问层,但是使用JDBC编程时,程序员必须知道后台使用了什么数据库、有哪些表、各个表有哪些字段、各个字段的类型是什

34、么、表与表之间是什么关系、创建了什么索引等与后台数据库相关的详细信息,相当于软件程序员兼职数据库(DBA)。第4章Java Web应用开发及开发平台使用ORM技术,可以将数据库层完全隐蔽,呈献给程序员的只有Java的对象,程序员只需根据业务逻辑的需要调用Java对象的Getter和Setter方法,即可实现对后台数据库的操作,程序员不必知道后台采用什么数据库、有哪些表、有什么字段、表与表之间有什么关系。于是,系统设计人员在搭建好ORM后,将Java对象交给程序员去实现业务逻辑,使数据访问层与数据库层清晰分界。第4章Java Web应用开发及开发平台4)性能问题采用JDBC编程,在很多时候存在效

35、率低下的问题。采用ORM技术后,ORM框架将根据具体数据库操作需要,会自动延迟向后台数据库发送SQL请求,当所有操作完成后,一次向数据库发送操作请求,从而大大降低通信量,提高运行效率。ORM也可以根据实际情况,将数据库访问操作合成,以尽量减少不必要的数据库操作请求。第4章Java Web应用开发及开发平台2.Hibernate框架Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲地使用对象编程思想来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序中使用,也可以在Servlet/

36、JSP的Web应用中使用。最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。第4章Java Web应用开发及开发平台Hibernate是一种强大的可提供对象关系持久化和查询服务的中间件,它可以使程序员依据面向对象的原理开发持久化类,实现对象之间的关联、继承、多态、组合、集合等。Hibernate提供了其特有的数据库查询语言HQL。这种查询语言屏蔽了不同数据库之间的差别,使用户可以编写统一的查询语句执行查询。不同于其他持久化解决方案的是,Hibernate并没有把SQL的强大功能屏蔽掉,而是仍然兼容SQL,这使以往的关系技术依然有效。第4章Ja

37、va Web应用开发及开发平台Hibernate是一个非常优秀的持久层解决方案,具有以下发展趋势:与其他开发框架的集成将越来越成熟:如与Struts、Spring、Jbpm的集成,充分发挥了Hibernate自身的优势,也吸取了对方框架的优势,在软件系统的各个层各司其职;产品线逐渐完善:通过增加若干的工具套件,并支持.net平台,使Hibernate具有更强大的生命力;第4章Java Web应用开发及开发平台 与EJB更好的集成:集成EJB,开始将重点转向重量级应用,使得Hibernate在企业级应用中必将占据一席之地。Hibernate的轻量级ORM模型逐步确立了其在Java ORM架构中的

38、领导地位,甚至取代复杂而又繁琐的EJB模型而成为事实上的Java ORM工业标准,而且其中的许多设计均被J2EE 标准组织吸纳而成为最新的EJB3.0规范的标准。第4章Java Web应用开发及开发平台3.JPA框架以下简单介绍一下JPA的优势。1)标准化JPA是JCP组织发布的Java EE标准之一,因此任何声称符合JPA标准的框架都遵循同样的架构,提供相同的访问API。这保证了基于JPA开发的企业应用能够经过少量的修改就能够在不同的JPA框架下运行。第4章Java Web应用开发及开发平台2)对容器级特性的支持JPA框架支持大数据集、事务、并发等容器级事务,这使得JPA超越了简单持久化框架

39、的局限,在企业应用中发挥了更大的作用。第4章Java Web应用开发及开发平台3)简单易用,集成方便JPA的主要目标之一就是提供更加简单的编程模型:在JPA框架下创建实体和创建Java类一样简单,没有任何的约束和限制,只需要使用javax.persistence.Entity进行注释;JPA的框架和接口也都非常简单,没有太多特别的规则和设计模式要求,开发者可以很容易掌握。JPA基于非侵入式原则设计,因此可以很容易地和其它框架或者容器集成。第4章Java Web应用开发及开发平台4)可媲美JDBC的查询能力JPA的查询语言是面向对象而非面向数据库的,它以面向对象的自然语法构造查询语句,可以看成是

40、Hibernate HQL的等价物。JPA定义了独特的JPQL(Java Persistence Query Language),JPQL是EJB QL的一种扩展,它是针对实体的一种查询语言,操作对象是实体,而不是关系数据库的表,而且支持批量更新和修改、JOIN、GROUP BY、HAVING等通常只有SQL才能够提供的高级查询特性,甚至还能够支持子查询。第4章Java Web应用开发及开发平台5)支持面向对象的高级特性JPA能够支持面向对象的高级特性,如类之间的继承、多态和类之间的复杂关系,这样的支持能够让开发者最大限度地使用面向对象的模型设计企业应用,而不需自行处理这些特性在关系数据库的持

41、久化。第4章Java Web应用开发及开发平台4.4 建立开发平台建立开发平台4.4.1 搭建开发环境搭建开发环境1.安装JDK(1)双击可执行文件,开始安装(本书使用的是jdk-6u1-windows-i586-p.exe)。(2)在安装窗口中接受协议并多次单击【下一步】按钮,直至出现如图4-7所示的界面,选择JDK安装的路径。注意图中的默认路径为C:Program FilesJavajdk1.6.0_01。第4章Java Web应用开发及开发平台图4-7 安装JDK第4章Java Web应用开发及开发平台(3)若采用默认安装,则继续安装直至完成,如图4-8所示。安装完成后,一般要求重启操作

42、系统。图4-8 完成JDK的安装第4章Java Web应用开发及开发平台(4)设置环境变量。JAVA_HOME=C:Program FilesJavajdk1.6.0_01PATH=%JAVA_HOME%bin;CLASSPATH=.;%JAVA_HOME%libdt.jar;%JAVA_HOME%libtools.jar;打开环境变量设置窗口的步骤为:在Windows XP系统中,右击桌面上的【我的电脑】图标,在弹出的菜单中选择【属性】命令,显示如图4-9所示的对话框,并选择【高级】选项卡。第4章Java Web应用开发及开发平台图4-9 设置环境变量第4章Java Web应用开发及开发平台

43、点击图中的【环境变量】按钮,将显示如图4-10所示的对话框,对不存在的变量选择【新建】按钮,对存在的变量选择【编辑】按钮,可获得黑框标出来的界面,这时就可以设置我们所需要的值了。第4章Java Web应用开发及开发平台图4-10 环境变量对话框第4章Java Web应用开发及开发平台在完成设置后,可以到cmd窗口验证JDK是否配置成功。在命令行输入java和javac命令,如果回车后显示相关命令,则说明配置成功,如图4-11所示。第4章Java Web应用开发及开发平台图4-11 cmd窗口第4章Java Web应用开发及开发平台2.安装Tomcat在Windows和Linux平台上的安装和配

44、置基本相同,以下介绍其在Windows平台下的下载和安装。(1)本书使用Tomcat6.0.18版本,可到http:/tomcat.apache.org站点下载zip包。建议不要下载安装文件,因为安装文件的Tomcat看不到启动、运行时控制台的输出,不利于开发者使用;另外,Tomcat在多次部署运行后会显得很臃肿,在一定时间内要清空重装,压缩包的安装也比较方便。第4章Java Web应用开发及开发平台(2)解压下载的压缩包,可解压在任何路径。在环境变量中设置Tomcat运行的环境变量JAVA_HOME,该环境变量指向JDK安装路径,以上JDK已配置好。(3)启动Tomcat,只需双击Tomca

45、t安装路径下bin路径的startup.bat文件即可。启动之后打开浏览器,Tomcat的默认端口号为8080,因此在地址栏输入http:/localhost:8080,将出现如图4-12所示的界面,安装成功。第4章Java Web应用开发及开发平台图4-12 Tomcat安装成功界面第4章Java Web应用开发及开发平台3.安装和配置MyEclipse(1)在http:/站点下载所需软件,本书用的是MyEclipse_7.0M1_ E3.4.0_Installer.exe版本。(2)此IDE的安装就是“傻瓜化”的最简单安装形式,基本上是完成一系列【NEXT】按钮的操作。安装完成后,打开软件

46、可看到如图4-13所示的界面,选择工作空间,这是以后进行程序开发工作的地方。第4章Java Web应用开发及开发平台图4-13 设置工作空间第4章Java Web应用开发及开发平台(3)如果是初次启动,MyEclipse将显示一个欢迎界面,如图4-14所示。图4-14 MyEclipse7欢迎界面第4章Java Web应用开发及开发平台(4)成功启动MyEclipse后,第一件要做的事就是把Tomcat配置成MyEclipse的Web服务器,这样就可以利用MyEclipse自有的功能来完成Web对Tomcat的自动部署。每个不同的项目只需部署一次,无论修改多少次都不需要再次部署。第4章Java

47、 Web应用开发及开发平台首先,在MyEclipse工作环境中选择菜单【Window】的子菜单【Preferences】,将出现如图4-15所示的界面。在左边的导航条菜单中选择图中的【JDK】子菜单,其中默认的JDK为MyEclipse 7.1M1,点击右上角的【Add】按钮,添加上面安装的jdk1.6.0_01,选择安装根目录C:Program FilesJavajdk1.6.0_01,就会出现图中的JDK名字。第4章Java Web应用开发及开发平台图4-15 Tomcat中JDK的设置界面第4章Java Web应用开发及开发平台其次,选择图4-16中的【Tomcat 6.x】子菜单,配置

48、右边的服务器,只要选择Tomcat的安装目录即可。另外,千万记住把服务器状态选为Enable,使服务器处于可用状态。第4章Java Web应用开发及开发平台图4-16 Tomcat设置界面 第4章Java Web应用开发及开发平台(5)完成以上步骤后,在MyEclipse中启动Tomcat服务,验证配置是否成功,如图4-17所示,启动Tomcat服务后,在IE中输入http:/localhost:8080,如果出现图4-12所示的界面,则说明配置成功。第4章Java Web应用开发及开发平台图4-17 Tomcat在MyEclipse中的启动按钮第4章Java Web应用开发及开发平台4.4.

49、2 开发一个简单的开发一个简单的Java Web实例实例1.创建工程(1)点击MyEclipse主菜单的【File】子项【New】的【Web Project】菜单,如图4-18所示。(2)在弹出的如图4-19所示的界面中,在【Project Name】中输入新建工程的名字,在【Location】中选择存放工程的文件夹,还可以在此界面选择工程所遵循的J2EE规范,点击【Finish】完成工程的建立。第4章Java Web应用开发及开发平台图4-18 新建Web工程菜单第4章Java Web应用开发及开发平台图4-19 新建Web工程界面第4章Java Web应用开发及开发平台(3)选中新建的ch

50、04工程中的WebRoot目录,用鼠标右键单击,在弹出的快捷菜单中选择【NEW】中的【JSP】菜单,将弹出如图4-20所示的界面,其中【File Name】就是建立的JSP文件的名字。设置好后,点击【Finish】完成JSP页面。第4章Java Web应用开发及开发平台图4-20 新建JSP页面第4章Java Web应用开发及开发平台(4)以上步骤完成了工程ch04的建立,在MyEclipse的【package explorer】视图中的显示如图4-21所示。图4-21 工程目录第4章Java Web应用开发及开发平台2.运行工程在MyEclipse中运行工程ch04的步骤如下:(1)选中工程

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(《基于JavaEE的电子商务网站建设》课件第4章.ppt)为本站会员(momomo)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|