【Java开源代码栏目提醒】:网学会员为需要Java开源代码的朋友们搜集整理了本科毕业(论文)设计 J2EE技术 给Web应用程序的开发 - 学士论文相关资料,希望对各位网友有所帮助!
摘 要 在今天J2EE技术 1给Web应用程序的开发提供了非常灵活的选择。
如何把这些技术组合起来形成一个适应项目需要的稳定架构是项目开发过程中一个非常重要的步骤。
长期以来
Java开发者致力于找到一种完美的Web层应用框架从而规范这一层软件的开发。
本文结合易通国际货运代理公司信息管理系统项目,介绍了Struts 框架的体系结构和工作原理,并给出了系统客户信息登记的实现。
文章首先介绍了有关WEB应用开发的模型的相关知识,其中重点介绍了MVC设计模式。
然后文章介绍了Struts框架的体系结构和工作原理然后结合项目实例进行具体
代码分析。
MVC是Model模型、View视图、Controller控制的缩写,MVC是适用于大型WEB应用开发的架构技术,其目的是最大限度的降低系统各部分之间的耦合性,增强系统的可扩展维护性,提高
代码重用率。
本文结合了MVC设计模式,说明了Struts的体系结构,讲述了Struts实现MVC模式Web应用的过程。
在应用实例中,讲述了一个简单的Struts程序要展示的内容,以及为完成这个程序需要创建的文件;然后对这些文件的内容,即源
代码,进行具体分析,最后还叙述了这个实例的工作过程。
研究了易通国际货运代理公司的组织结构和业务流程,结合B/S结构和Struts框架的特点和优势,提出了系统实现
方案。
关键词:J2EE,MVC,struts,框架 1 Abstract Today J2EE technology has provided very flexible choice for development ofWeb application program. It is the project how to combine the technology totransform into a steady framework of meeting the needs of project to develop a veryimportant step in course. For a long time Web layer of application frame that it isperfect that
Java developer is devoted to finding one kind of thus standardize thedevelopment of web layer of software. This text combines the item of ETs MISintroduce system structure of Struts frame and operation principle and therealization providing its customers information and registering. The article has introduced the relevant knowledge about model of WEBapplication program at first among them has recommended especially that MVC .Then the article has introduced system structure of Struts frame and operationprinciple then combine the project carry on concrete code analysis. MVC is theabbreviations of Model model View view Controller controls MVC is theframework technology which is suitable for large-scale WEB development itspurpose is coupling between every part of a maximum reducing system canstrengthen a systematic one expansion maintaining raise the putting of codes in anposition rate. This text has combine MVC has stated the system structure of Strutshave told that Struts realizes the course of MVC. In the instance has told a contentthat simple Struts procedure should show and in order to finish the file that this 2procedure need establishing Then to the content of these files namely source codemake a concrete analysis of also narrated the working course of this instance finally. Have studied institutional framework and business procedure of ET combiningthe characteristic and advantage of B/S structure and Struts frame have put forwardthe scheme for the system realizing.KEY WORDS: J2EE,MVC,Struts,Framework 3 目 录摘 要 .............................................................. 1Abstract ........................................................... 2目 录 .............................................................. 4前 言 .............................................................. 5 发展现状 ....................................................... 5 课题背景及意义 ................................................. 6
论文的组织结构 ................................................. 7第一章 WEB 应用开发的模型 ........................................... 8 1.1 基于 Web 的方式............................................. 8 1.2 MVC ....................................................... 9 1.3 小结 ..................................................... 12第二章 Struts 结构介绍............................................ 13 2.1 Framework 概念............................................ 13 2.2 Struts 概述............................................... 14 2.3 Struts 体系结构........................................... 15 2.4 Struts 标签库............................................. 24 2.5 小结 ..................................................... 25第三章 Struts 框架应用实例 ......................................... 26 3.1 系统介绍 ................................................ 26 3.2 系统开发环境和运行平台 .................................. 27 3.3 具体
代码分析 .......................................... 28 3.4 小结 .................................................... 41第四章 结论与体会 ................................................ 42 4.1 结论 ..................................................... 42 4.2 体会 ..................................................... 43致谢 .............................................................. 44参考文献 .......................................................... 45 4 前 言发展现状 Struts 最早是作为 Apache Jakarta 项目的组成部分,项目的创立者希望通过对该项目的研究,改进和提高 JavaServer Pages 、Servlet、标签库以及面向对象的技术水准。
Struts 这个名字来源于在建筑和旧式飞机中使用的支持金属架。
这个框架之所以叫quotStrutsquot,是为了提醒我们记住那些支撑我们房屋,建筑,桥梁,甚至我们踩高跷时候的基础支撑。
这也是一个解释 Struts 在开发Web 应用程序中所扮演的角色的精彩描述。
当建立一个物理建筑时,建筑工程师使用支柱为建筑的每一层提供支持。
同样,软件工程师使用 Struts 为业务应用的每一层提供支持。
它的目的是为了帮助我们减少在运用 MVC 设计模型来开发 Web 应用的时间。
Struts 是 Apache 软件基金下 Jakarta 项目的一部分。
除 Struts 之外,还有其他成功的
开源产品,包括 Tomcat, Ant 和 Velocity。
2000 年 Craig R.McClanahan 先生贡献了他编写的 JSP Model 2 架构之 Application Framework原始程序
代码给 Apache 基金会,成为 Apache Jakarta 计划 Struts Framework前身。
开始的
代码基础从 2000 年 5 月开始开发,直到 2001 年 6 月,1.0 版本发布。
有 30 多个开发者参与进来,并有数千人参与到讨论组中。
Struts
代码基 到础由一个志愿的 Commnitter 团队来管理。
2002 年,Struts 小组共有 9 个志 5愿 Commnitter。
Struts 到目前已经达到一个稳定成熟的状态,并足以支持产品级应用。
世界上很多的站点(包括企业内部应用和外部的 internet 站点)都在运行基于Struts 的产品级应用。
Struts 作为一个基于 WEB 的卓越的应用程序框架,已经掀起了一个风潮。
课题背景及意义 在全球
经济一体化的大环境下 企事业的规模逐渐向跨地区、跨国发展单纯的办公自动化已不能满足需要 只有构建网上办公系统 将工作开展到网上 才能使企业的业务快捷有效的运作。
虽然每个企业具体的业务不同 但是大致的功能、性能及业务流程还是有很大的相似之处 这就提倡利用软件复用可以缩短同一专业领域中的系统的开发周期 提高开发质量。
随着软件技术的发展,软件复用越来越被重视。
软件复用分为三个等级:
代码复用、设计模式复用和框架复用,而框架复用是三者中最高级的复用,它主要为专用领域提供通用的基础结构。
基于框架构建系统最大程度的提供复用技术使开发简单 成本大大降低。
将 本文是基于易通国际货运代理公司信息管理系统项目, Struts 框架应用到其中,构建了一个基于 B/S 模式的分布式系统。
希望在该项目投入运行后,能够根据该企业的生产,合理的整合企业的物流、资金流和信息流,提高企业的生产力,加速信息的流通和处理,降低生产成本,为企业进一步的发展打好基础。
学习、理解和掌握 Struts 是我们每个基于 J2EE 软件开发人员一门必修的
课程,也是我们对企业 J2EE 技术应用的进一步深化。
6
论文的组织结构 本文主要讨论 Struts 框架的体系结构及其相关知识和
工作原理然后结合项目实例进行具体
代码分析,讲述了 Struts 实现 MVC 模式 Web 应用的过程。
第一章讲述了Web应用开发模型的相关知识,介绍了什么是“基于WEB的方式”,说明了B/S结构与C/S结构的区别,同时说明了使用B/S结构的好处;介绍了MVCModel/ View/ Controller 设计模式,叙述了MVCModel/ View/Controller中Model、View、 Controller三个方面以及Model 1和Model 2的区别。
第二章重点介绍了Struts 框架的体系结构及其工作原理包括Struts概述、struts结构MVC模式实现组件以及标签库。
第三章结合项目实例进行具体
代码分析,讲述了Struts 实现MVC 模式Web 应用的过程;当然其中还介绍了项目的背景、系统功能模块以及系统开发环境与运行平台。
第四章是总结与体会。
7 第一章 WEB 应用开发的模型 随着 Internet 和网络化的日渐成熟,无论是属于单个组织的计算机还是属于多个组织的
计算机都想通过 Internet 彼此交流。
借助更基本的 Internet 通信协议,可能需要几个月的时间和大量的资本开发自己的系统。
而且当使用该系统和另一个组织的系统进行
通信时,两个
系统之间的转换也许并不容易,甚至是不可能的,最后得到的只是一团糟。
过去人们引入分布式架构系统以解决这个问题。
大多数系统本身的缺点甚至妨碍了它们在企业范围内的部署,更别说在全球的部署。
为此带来了 Web 服务。
Web 服务就是一个应用程序,它向外界暴露出一个能够通过 Web 进行调用的 API。
这就是说,你能够用编程的方法通过 Web 来调用这个应用程序。
1.1 基于 Web 的方式 在网络技术逐渐渗入社会生活各个层面的今天,传统的办公系统也面临着变革,而网上办公则是一个很重要的方向。
基于数据库和
网络应用的网上办公系统有多种实现技术,可以采用传统的客户机/服务器(Client/Server)模式,也可以采用目前流行的浏览器/服务器(Browser/Server)模式,即基于 WEB 的方式。
所谓 Client/Server 模式,是指把数据库内容放在远程的服务器上,在客户机上安装相应软件。
Client/Server 结构在技术上虽然很成熟,但该结构的程序往往只局限在小型的局域网内部,不利于扩展。
并且,该结构的每台客户 8机都需要安装相应的客户端程序。
由于网上办公系统拥有的用户量比较多,因此,如果采用该结构,系统的安装与维护工作比较繁重。
同时,由于应用程序直接安装在客户机,客户机直接和数据库服务器交换数据,系统的安全性也受到一定影响。
基于 WEB 的方式其实是一种特殊的 Client/Server 方式。
在这种方式中,客户端是各种各样的浏览器,浏览器作为通用的用户
程序界面,主要提供人机接口服务,而服务器则响应用户请求并提供用户需要的信息。
Browser/ Server模式采用三层体系结构,即包括数据库服务器、Web 服务器、客户浏览器三部分。
由于采用了互联网的相关技术,Browser/ Server 结构的系统开放性好,易维护和扩展。
客户浏览器只跟 Web 服务器交换数据,数据安全性比较高,同时,由于客户端不需要安装专用程序,可大大降低运行维护费用。
当然,Browser/Server 结构在网络安全方面也有其弱点。
在 Client/ Server 结构中,应用程序是在客户机上运行的独立程序,如果这台计算机安全的话,那么应用程序就是安全的。
而在 Browser/Server 结构中,众多的客户浏览器访问同一个 Web服务器,Web 服务器会成为攻击活动的对象。
用 基于上述考虑, Browser/Server 模式来设计易通国际货运代理公司信息
管理系统比较合适。
所有的系统升级和更新均只要在服务器端完成,从而减少系统升级、更新的工作量,同时可进行远程系统维护和管理。
1.2 MVC 随着Web 应用的快速发展网页的开发技术也经历了从简单到成熟的过程使用HTML开发网页很容易且易于
学习但设计开发灵活、易于维护和扩展的网页却不那么简单。
我们常见的创建网页的方法有下列几种2: 9 1 HTML 与JSP 的自由组合此种方法
代码混乱程序难于维护和扩展。
2
HTML 、JSP 与Bean 的功能结合。
利用Bean 的委托功能实现了
Java 代码的封装通过Bean间接访问业务对象使页面和业务对象分离JSP页面单独负责处理输入的请求和回复客户端此种模型被称为Model 1 架构。
如图1-1所示。
图1-1:JSP Model 1 的构架示意图 这种开发方式最大的优势是直接、简单,对于小型应用,可以很方便、快速地进行开发。
但这种模型的缺点是JSP页面不仅表示内容还要负责生成内容而生成内容总是需要
Java 代码的这使得网页制作者和业务对象的开发人员并不能完全地分工而且应用的实现一般是基于过程的一组JSP页面实现一个业务流程如果要进行改动必须在多个地方进行修改。
3 用Servlet 、
JSP 及Bean 或EJB 实现MVC 模型、视图、控制器 结构。
此即我们通常讲的Model 2 结构Model 2 是基于MVC 模式的框架。
MVC是 3Model View Controller 的简写 MVC Model 2结构如图1-2 所示。
10 图1-2 MVC Model 2的结构 对照图1-2,MVC Model 2的组成部分包括: 1模型(Model) 模型是应用程序的核心,它封装了应用程序的数据结构和事务逻辑,集中体现了应用程序的状态。
JavaBean很适合扮演这个角色,因为其能够处理绝大部分事务逻辑和数据结构,还能与数据库或文件系统进行交互,承担维护应用程序数据的责任。
2)视图(View) 视图实现模块的外观,它是应用程序的外在表现。
它可以访问模型的数据,却不了解模型的情况,同时它也不了解控制器的情况。
当模型发生改变时,视图会得到通知,它可以访问模型的数据,但不能改变这些数据。
JSP页面适合完成这个功能,它只包含很少的非HTML
代码。
3)控制器(Controller) 控制器对用户的输入做出反应,并且将模型和视图联系在一起,它创建并设置模块。
Servlet 能够接受客户端的HTTP请求,并且根据需要创建所需的JavaBean,然后将模块产生的变化通知给视图。
11 通过这种
设计模型把应用逻辑、处理过程和显示逻辑分成不同的组件实现。
将内容的产生与显示分离开来是很有益处的因为大部分
Java代码都用来产生内容把
Java代码封装起来使得软件开发人员可以致力于Servlet和业务对象的开发网页制作者则致力于JSP页面的生成并且组件可以进行交互和重用从而弥补了Model 1的不足。
Model 2具有组件化的优点使其更易于实现对大规模系统的开发和管理。
Model 1和MVC架构的主要区别在于请求是在哪里处理的。
在Model 1 架构中请求通过JSP 接收并由其处理。
如果JSP 页面需要一个数据库的服务那么须从页面做适当的调用把数据返回到页面安排数据的格式并显示出来也可以把一些
代码放到JavaBean 中但是这么做本身没有将逻辑同显示完全分离。
MVC 方法则采用Servlet 接收请求Servlet 控制输入的请求和输出的回应JSP 页面只作为显示层。
因为MVC Model 2本身就是一个非常复杂的系统,所以采用它来实现Web应用时,最好选一个现成的框架。
Struts框架是一个开放源码项目,它的设计完全基于MVC Model 2,它有详细完整的
文档,加上它使用方便,正在吸引越来越多的Web 应用开发者。
1.3 小结 本章讲述了Web应用开发模型的相关知识,介绍了什么是“基于WEB的方式”;重点介绍了MVCModel/ View/ Controller 设计模式,叙述了MVCModel/View/ Controller中Model、View、 Controller三个方面以及Model 1和Model2的区别。
得出用Browser/Server结构,结合MVC设计模式来设计易通国际货运代理公司信息管理系统比较合适。
下一章将讲述Struts结构体系和工作原理。
12 第二章 Struts 结构介绍2.1 Framework 概念 Framework 概念并不是很新了,伴随着软件开发的发展,在多层的软件开发项目中,可重用、易扩展的,而且是经过良好测试的软件组件,越来越为人们所青睐。
这意味着人们可以将充裕的时间用来分析、构建业务逻辑的应用上,而非繁杂的
代码工程。
于是人们将相同类型
问题的解决途径进行抽象,抽取成一个应用框架。
这也就是我们所说的 Framework。
Framework 的体系提供了一套明确机制,从而让开发人员很容易的扩展和控制整个 Framework 开发上的结构。
通常,Framework 的结构中都有一个“命令和控制”组件(quotcommand and controlquot component)——Framework Factory andManager。
其结构如图 2-1。
图 2-1 Framework 体系 132.2 Struts 概述 Struts 是 Apache 基金会 Jakarta 项目组的一个 Open Source 项目,它采用 MVC 模式,能够很好地帮助
java 开发者利用 J2EE 开发 Web 应用。
和其他的
java 架构一样,Struts 也是面向对象设计,将 MVC 模式quot分离显示逻辑和业务逻辑quot的能力发挥得淋漓尽致。
Structs 框架的核心是一个弹性的控制层,基于如
Java Servlets,JavaBeans,ResourceBundles 与 XML 等标准技术,以及Jakarta Commons 的一些类库。
Struts 有一组相互协作的类(组件)、Serlvet以及 jsp tag lib 组成。
基于 struts 构架的 web 应用程序基本上符合 JSP Model2的设计标准,可以说是一个传统 MVC 设计模式的一种变化类型。
Struts 有其自己的控制器(Controller),同时整合了其他的一些技术去实现模型层(Model)和视图层(View)。
在模型层,Struts 可以很容易的与数据访问技术相结合,如 JDBC/EJB , 以 及 其 它 第 三 方 类 库 , 如Hibernate/iBATIS ,或者 Object Relational Bridge对象关系桥。
在视图层,Struts 能够使用 JSP,包括 JSTL 与 JSF,以及 Velocity 模板,XSLT 与其它表示层技术。
既然 struts 叫做
web framework,那么其肯定主要基于 web 层的应用系统开发。
按照 J2EE Architecture 的标准,Struts 应当和 jsp/servlet 一样,存在于 web container 一层。
Struts 为每个专业的 Web 应用程序做背后的支撑,帮助为你的应用创建一个扩展的开发环境。
.