Java开发中的关键技术.pdf
《Java开发中的关键技术.pdf》由会员分享,可在线阅读,更多相关《Java开发中的关键技术.pdf(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1、servlet 技术 Servlet(Server Applet),全称 Java Servlet.是用 Java 编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态 Web 内容。狭义的 Servlet 是指 Java 语言实现的一个接口,广义的 Servlet 是指任何实现了这个 Servlet 接口的类。Servlet 运行于支持 Java 的应用服务器中。从实现上讲,Servlet 可以响应任何类型的请求,但绝大多数情况下 Servlet 只用来扩展基于 HTTP 协议的 Web 服务器.Servlet 技术的实现过程:最早支持 servlet 技术的是 JavaS
2、oft 的 Java Web Server,此后,一些其他的基于 Java的 Web Server 开始支持标准的 Servlet API,Servlet 的主要功能在于交互式地浏览和修改数据,生成动态 Web 内容.这个过程为:1)客户端发送请求至服务器 2)服务器将请求发送至 Servlet;3)Servlet 生成响应内容并将其传给服务器,响应内容动态生成,通常取决于客户端的请求;4)服务器将响应返回给客户端。Servlet 的生命周期:1 客户端请求该 Servlet;2 加载 Servlet 类到内存;3 实例化并调用 init()方法初始化该 Servlet;4 Service()
3、根据请求方法的不同调用 doGet()或 doPost()等实现方法;5 Destory();对于更多的客户端请求,Server 创建新的请求和响应对象,仍然激活此 Servlet 的 service()方法,将这两个对象作为参数传递给它.如此重复以上的循环,但无需再次调用 init()方法.一般 Servlet 只初始化一次(只有一个对象),当 Server 不再需要 Servlet 时(一般当 Server 关闭时),Server 调用 Servlet 的 destroy()方法。Servlet 技术相比传统的 CGI 技术或类似 CGI 技术的技术相比,Java Servlet 具有更高
4、的效率,更容易使用,功能更强大,具有更好的可移植性,更节省投资。*方便 Servlet 提供了大量的实用工具例程,例如自动地解析和解码 HTML 表单数据、读取和设置 HTTP 头、处理 Cookie、跟踪会话状态等。*功能强大 在 Servlet 中,许多使用传统 CGI 程序很难完成的任务都可以轻松地完成。例如,Servlet 能够直接和 Web 服务器交互,而普通的 CGI 程序不能.Servlet 还能够在各个程序之间共享数据,使得数据库连接池之类的功能很容易实现。*可移植性好 Servlet 用 Java 编写,Servlet API 具有完善的标准。因此,为 IPlanet Ent
5、erprise Server 写的 Servlet 无需任何实质上的改动即可移植到 Apache、MicrosoftIIS 或者 WebStar。几乎所有的主流服务器都直接或通过插件支持 Servlet。*节省投资 不仅有许多廉价甚至免费的 Web 服务器可供个人或小规模网站使用,而且对于现有的服务器,如果它不支持 Servlet 的话,要加上这部分功能也往往是免费的(或只需要极少的投资)。2、JSP 技术 JSP 全名为 Java Server Pages,中文名叫 java 服务器页面,其根本是一个简化的 Servlet设计,它是由 Sun Microsystems 公司倡导、许多公司参与
6、一起建立的一种动态网页技术标准.JSP 技术有点类似 ASP 技术,它是在传统的网页 HTML(标准通用标记语言的子集)文件(。htm,.html)中插入 Java 程序段(Scriptlet)和 JSP 标记(tag),从而形成JSP 文件,后缀名为(*.jsp)。用 JSP 开发的 Web 应用是跨平台的,既能在 Linux 下运行,也能在其他操作系统上运行。它实现了 Html 语法中的 java 扩展(以%,形式)。JSP 与 Servlet 一样,是在服务器端执行的。通常返回给客户端的就是一个 HTML 文本,因此客户端只要有浏览器就能浏览。JSP 技术使用 Java 编程语言编写类
7、XML 的 tags 和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过 tags 和 scriptlets 访问存在于服务端的资源的应用逻辑.JSP 将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于 Web 的应用程序的开发变得迅速和容易。JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从 Servlet 中分离出来。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP 具备了 Java 技术的简单易用,完全的面向对象,具有平台无关性且安全可
8、靠,主要面向因特网的所有特点。JSP 技术主要有以下的一些特点:1)将内容的生成和显示进行分离 用 JSP 技术,Web 页面开发人员可以使用 HTML 或者 XML 标识来设计和格式化最终页面,并使用 JSP 标识或者小脚本来生成页面上的动态内容(内容是根据请求变化的,例如请求账户信息或者特定的一瓶酒的价格等)。生成内容的逻辑被封装在标识和 JavaBeans 组件中,并且捆绑在脚本中,所有的脚本在服务器端运行.由于核心逻辑被封装在标识和 JavaBeans 中,所以 Web 管理人员和页面设计者,能够编辑和使用 JSP 页面,而不影响内容的生成。2)可重用组件 绝大多数 JSP 页面依赖于
9、可重用的、跨平台的组件(JavaBeans 或者 Enterprise JavaBeans 组件)来执行应用程序所要求的复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者和客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。3)采用标识 Web 页面开发人员不会都是熟悉脚本语言的编程人员。JSP 技术封装了许多功能,这些功能是在易用的、与 JSP 相关的 XML 标识中进行动态内容生成所需要的。标准的 JSP 标识能够访问和实例化 JavaBeans 组件,设置或者检索组件属性,下载Applet,以
10、及执行用其他方法更难于编码和耗时的功能。4)适应平台 几乎所有平台都支持 Java,JSP+JavaBeans 几乎可以在所有平台下通行无阻。从一个平台移植到另外一个平台,JSP 和 JavaBeans 甚至不用重新编译,因为 Java 字节码都是标准的与平台无关的。5)数据库连接 Java 中连接数据库的技术是 JDBC,Java 程序通过 JDBC 驱动程序与数据库相连,执行查询、提取数据等操作。Sun 公司还开发了 JDBCODBC bridge,利用此技术Java 程序可以访问带有 ODBC 驱动程序的数据库,大多数数据库系统都带有 ODBC驱动程序,所以 Java 程序能访问诸如 O
11、racle、Sybase、MS SQL Server 和 MS Access等数据库。JSP 技术图解 3、MVC 框架 MVC 全名是 Model View Controller,是模型(model)视图(view)控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑.MVC 被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。MVC 是一种使用 MVC 设计创建的 Web 应用程序的模式:Model(模型)表示应
12、用程序核心(比如数据库记录列表)。View(视图)显示数据(数据库记录)。Controller(控制器)处理输入(写入数据库记录).MVC 模式同时提供了对 HTML、CSS 和 JavaScript 的完全控制。Model(模型)是应用程序中用于处理应用程序数据逻辑的部分.通常模型对象负责在数据库中存取数据。View(视图)是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据.MVC 分层有助于管理复杂的应用程序,因为您可以在一个时间内专门关注一个方面。例如,您
13、可以在不依赖业务逻辑的情况下专注于视图设计。同时也让应用程序的测试更加容易。MVC 分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。MVC 框架图解 MVC 组件类型的关系和功能 MVC 框架的优点:耦合性低 视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码,同样,一个应用的业务流程或者业务规则的改变只需要改动 MVC 的模型层即可。因为模型与控制器和视图相分离,所以很容易改变应用程序的数据层和业务规则。重用性高 随着技术的不断进步,需要用越来越多的方式来访问应用程序.MVC 模式允许使用各种不同样式的视图来访问同一个服务器端的代码,因为
14、多个视图能共享一个模型,它包括任何WEB(HTTP)浏览器或者无线浏览器(wap),比如,用户可以通过电脑也可通过手机来订购某样产品,虽然订购的方式不一样,但处理订购产品的方式是一样的.由于模型返回的数据没有进行格式化,所以同样的构件能被不同的界面使用。例如,很多数据可能用 HTML 来表示,但是也有可能用 WAP 来表示,而这些表示所需要的命令是改变视图层的实现方式,而控制层和模型层无需做任何改变。由于已经将数据和业务规则从表示层分开,所以可以最大化的重用代码了。模型也有状态管理和数据持久性处理的功能。生命周期成本低 MVC 使开发和维护用户接口的技术含量降低。部署快 使用 MVC 框架使得
15、开发时间得到相当大的减少,它使程序员集中精力于业务逻辑,界面程序员集中精力于表现形式上。可维护性高 分离视图层和业务逻辑层使得 WEB 应用更易于维护和修改。有利软件工程化管理 由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通过工程化工具化管理程序代码.控制器也提供了一个好处,就是可以使用控制器来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段.给定一些可重用的模型和视图,控制器可以根据用户的需求选择模型进行处理,然后选择视图将处理结果显示给用户。4、Struts 技术 Struts 是 Apache 基金会 Jakarta 项目组的一个 O
16、pen Source 项目,它采用 MVC 模式,能够很好地帮助 java 开发者利用 J2EE 开发 Web 应用.和其他的 java 架构一样,Struts 也是面向对象设计,将 MVC 模式”分离显示逻辑和业务逻辑”的能力发挥得淋漓尽致。Struts 框架的核心是一个弹性的控制层,基于如 Java Servlets,JavaBeans,ResourceBundles 与 XML 等标准技术,以及 Jakarta Commons 的一些类库。Struts 由一组相互协作的类(组件)、Servlet 以及 jsp tag lib 组成。基于 struts 构架的 web 应用程序基本上符合
17、JSP Model2 的设计标准,可以说是一个传统 MVC 设计模式的一种变化类型。Struts 的流程:服务器启动后,根据 web。xml 加载 ActionServlet 读取 struts-config。xml 文件内容到内存。以登录为例:第一次进 login.jsp 会先实例化 Form、把默认值(String 默认为空字符串,整型默认为 0)赋给表单元素.输入用户名密码提交表单、提交到 action 属性的login。action,通过 ActionServlet 读 strutsconfig。xml 文件找到 action 下的 path 属性找到。action,通过 name 属
18、性找 formbeans 中的 formbean 的 name 属性得到ActionForm 的包名类名,先实例化 form,把表单的值填充给 form,调用 form 的 validate方法验证、ActionErrors 返回 null 表示验证通过,否则失败返回 input 指定的页面.验证通过会实例化 Action,执行 Action 的 execute 方法.Struts 的实现流程 Struts 的优点:Struts 跟 Tomcat 等诸多的 Apache 项目一样,是开源软件,这是它的一大优点,使开发者能够更深入的了解其内部的实现机制。除此之外,struts 的优点主要集中体现
19、在两个方面:Taglib 和页面导航。Taglib 是 Struts的标签库,灵活应用,能大大提供开发的效率.另外,就是目前国内的 JSP 开发者而言,除了使用 JSP 自带的常用标签之外,很少开发自己的标签,Struts 是一个很好的起点。关于页面导航,能够使系统的脉络更加清晰,通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有莫大的好处,尤其是另外一批开发者接手这个项目时,这种优势体现的更加明显。5、Hibernate 技术 Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 开发 中的 关键技术
限制150内