毕业论文
┆
论文范文
┆
课程设计
┆
实践报告
┆
法律论文
┆
英语论文
┆
教学论文
┆
医学论文
┆
农学论文
┆
艺术论文
┆
行政论文
┆
管理论文
┆
计算机安全
您现在的位置:
毕业论文
>>
论文
>> 正文
java+Oracal9i电子申请系统 第6页
更新时间:2008-4-26: 来源:
毕业论文
Java电子申请系统
第
3
章 应用系统开发工具
3.1 Struts
架构及
MVC
开发模式介绍
Struts
是
Apache
基金会
Jakarta
项目组的一个
Open Source
项目,它采用
MVC
模式,能够很好地帮助
java
开发者利用
J2EE
开发
Web
应用。和其他的
java
架构一样,
Struts
也是面向对象设计,将
MVC
模式
[4]"
分离显示逻辑和业务逻辑
"
的能力发挥得淋漓尽致。
Structs
框架的核心是一个弹性的控制层,基于如
Java Servlets
,
JavaBeans
,
ResourceBundles
与
XML
等标准技术,以及
Jakarta Commons
的一些类库。
Struts
有一组相互协作的类(组件)、
Serlvet
以及
jsp tag lib
组成。基于
struts
构架的
web
应用程序基本上符合
JSP Model2[4]
的设计标准,可以说是一个传统
MVC
设计模式的一种变化类型。
Struts
有其自己的控制器(
Controller
),同时整合了其他的一些技术去实现模型层(
Model
)和视图层(
View
)。在模型层,
Struts
可以很容易的与数据访问技术相结合,如
JDBC / EJB
,以及其它第三方类库,如
Hibernate / iBATIS
,或者
Object Relational Bridge(
对象关系桥
)
。在视图层,
Struts
能够与
JSP
,包括
JSTL
与
JSF
,以及
Velocity
模板,
XSLT
与其它表示层技术。
Struts
为每个专业的
Web
应用程序做背后的支撑,帮助为你的应用创建一个扩展的开发环境。
3.1.1 Struts
的体系结构与工作原理
MVC
即
Model-View-Controller
的缩写,是一种常用的设计模式。
MVC
减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。
MVC
的工作原理
,
如下图
1
所示:
.
若图片无法显示请联系
QQ752018766
图
2-1
Struts
是
MVC
的一种实现,它将
Servlet
和
JSP
标记(属于
J2EE
规范)用作实现的一部分。
Struts
继承了
MVC
的各项特性,并根据
J2EE
的特点,做了相应的变化与扩展。
Struts
的体系结构与工作原理如下图
2
所示:
..
若图片无法显示请联系
QQ752018766
图
2-2
从图
2
中我们可以知道,
Struts
的体系结构包括模型(
Model
),视图(
View
)和控制器(
Controller
)三部分。
下面让我们从
MVC
角度来看看
struts
的体系结构(
Model 2
)与工作原理:
1
)模型(
Model
)
[4]
在
Struts
的体系结构中,模型分为两个部分:系统的内部状态和可以改变状态的操作(事务逻辑)。内部状态通常由一组
ActinForm Bean
表示。根据设计或应用程序复杂度的不同,这些
Bean
可以是自包含的并具有持续的状态,或只在需要时才获得数据(从某个数据库)。大型应用程序通常在方法内部封装事务逻辑(操作),这些方法可以被拥有状态信息的
bean
调用。比如购物车
bean
,它拥有用户购买商品的信息,可能还有
checkOut()
方法用来检查用户的信用卡,并向仓库发定货信息。 小型程序中,操作可能会被内嵌在
Action
类,它是
struts
框架中控制器角色的一部分。当逻辑简单时这个方法很适合。建议用户将事务逻辑(要做什么)与
Action
类所扮演的角色(决定做什么)分开。
2
)视图(
View
)
[4]
视图主要由
JSP
建立,
struts
包含扩展自定义标签库(
TagLib
),可以简化创建完全国际化用户界面的过程。目前的标签库包括:
Bean Tags
、
HTML tags
、
Logic Tags
、
Nested Tags
以及
Template Tags
等。
3
)控制器(
Controller
)
[4]
在
struts
中,基本的控制器组件是
ActionServlet
类中的实例
servelt
,实际使用的
servlet
在配置文件中由一组映射(由
ActionMapping
类进行描述)进行定义。对于业务逻辑的操作则主要由
Action
、
ActionMapping
、
ActionForward
这几个组件协调完成的,其中
Action
扮演了真正的业务逻辑的实现者,
ActionMapping
与
ActionForward
则指定了不同业务逻辑或流程的运行方向。
struts-config.xml
文件配置控制器。
3.1.2
从
struts
的组件来看
Struts
的工作原理
对于
Struts
如何控制、处理客户请求,让我们通过对
struts
的四个核心组件介绍来具体说明。这四个组件就是:
ActionServlet
、
Action Classes
,
Action Mapping
以及
ActionFrom Bean
。
1
)
Struts ActionServlet
ActionServlet
继承自
javax.servlet.http.HttpServlet
类,其在
Struts
体系结构中扮演的角色失控制器,控制器
ActionServlet
主要负责将
HTTP
的客户请求信息组装后,根据配置文件的指定描述,转发到适当的处理器。
按照
Servelt
的标准,所有得
Servlet
必须在
web
配置文件(
web.xml
)声明。同样,
ActoinServlet
必须在
Web Application
配置文件(
web.xml
)中描述。
当用户向服务器端提交请求的时候,实际上信息是首先发送到控制器
ActionServlet
,一旦控制器获得了请求,其就会将请求信息传交给一些辅助类(
help classes
)处理。这些辅助类知道如何去处理与请求信息所对应的业务操作。在
Struts
中,这个辅助类就是
org.apache.struts.action.Action
。通常开发者需要自己继承
Aciton
类,从而实现自己的
Action
实例。
2
)
Struts Action Classes
一个
Action
类的角色,就像客户请求动作和业务逻辑处理之间的一个适配器(
Adaptor
),其功能就是将请求与业务逻辑分开。这样的分离,使得客户请求和
Action
类之间可以有多个点对点的映射。而且
Action
类通常还提供了其它的辅助功能,比如:认证(
authorization
)、日志(
logging
)和数据验证(
validation
)。
3
)
Struts ActionMapping
将特定请求映射到特定
Action
的相关信息存储在
ActionMapping
中,
ActionServelt
将
ActionMapping
传送到
Action
类的
perform()
方法,
Action
将使用
ActionMapping
的
findForward()
方法,此方法返回一个指定名称的
ActionForward
,这样
Action
就完成了本地转发。若没有找到具体的
ActionForward
,就返回一个
null
。
4
)
Struts ActionForm Bean
一个应用系统的消息转移(或者说状态转移)的非持久性数据存储,是由
ActionForm Bean
的负责保持的。
ActionForm
的主要功能就是为
Action
的操作提供与客户表单相映射的数据(如果在客户指定的情况下,还包括对数据进行校验)。
Action
负责对系统数据状态的保持,而
Action
则负责根据业务逻辑的需要,对数据状态进行修改,在改变系统状态后,
ActionForm
则自动的回写新的数据状态并保持。
在
ActionForm
的使用中,
Struts
提倡使用到值对象。这样将客户或开发人员,对数据状态与对象状态能够更加清晰的理解和使用。
对于每一个客户请求,
Struts
体系结构在处理
ActionForm
的时候,一般需要经历如下几个步骤:
1) 检查
Action
的映射,确定
Action
中已经配置了对
ActionForm
的映射;
2) 根据
name
属性,查找
form bean
的配置信息;
3)检查
Action
的
formbean
的使用范围,确定在此范围下,是否已经有此
form bean
的实例;
4)假如当前范围下,已经存在了此
form bean
的实例,而是对当前请求来说,是同一种类型的话,那么就重用;
5) 否则,就重新构建一个
form bean
的实例;
6)
form bean
的
reset()
方法备调用;
7) 调用对应的
setter
方法,对状态属性赋值;
8) 如果
validatede
的属性北设置为
true
,那么就调用
form bean
的
validate()
方法。
如果
validate
()方法没有返回任何错误,控制器将
ActionForm
作为参数,传给
Action
实例的
execute
()方法并执行。
3.2 JAVA
编程语言介绍
3.2.1
背景
1991
年
,SUN MicroSystem
公司的
Jame Gosling
、
Bill Joe
等人
,
为在电视、控
上一页
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
...
下一页
>>
java+Oracal9i电子申请系统 第6页下载
如图片无法显示或论文不完整,请联系qq752018766
上一篇文章:
用单片机实现温度远程显示
下一篇文章:
C++财务管理系统
相关论文
温度控制电路系统
8088端口实验接线表
8255A并行口实验
上海电机学院课程设计任务书
DJ88K实验箱使用说明
电子信息学院课程设计任务书
机械厂35/6KV总降压变电所设计
存储器管理---动态分区分配算法的模拟
C++课程设计学生成绩管理系统
IIS5.0+Access酒店网上订餐系统
热门论文
纸带式穿孔机在国内外的发展前景研究现
浅谈家庭教育
幼儿园小班语言教案:小草醒来了
一堂好物理课的标准
幼儿园保教环境的创设
教师继续教育学后感
关于补牙的论文
幼儿园毕业典礼上的家长讲话稿
单片机智能快速充电器设计(框图+原理图
湖南科大学生领袖峰会LEC 策划书
推荐论文
中央空调通风管道清扫机器人设计+Solid
钢筋混凝土楼盖设计毕业论文+主次梁设计
铁轨自动刷镀机车体及驱动机构设计+CAD
SERS二文结构SiO2-ZnO-Ag薄膜的制备及光
金属-有机晶态材料多功能基元的自组装及
关于小学生的害羞及小学生羞耻感研究论
JSP和JDBC访问数据库英文文献和翻译
AT89C51单片机打铃系统设计+图纸+材料清
EasyARM1138城市公交路线智能查询机设计
建筑安装公司的税务筹划研究开题报告+国
设为首页
|
联系站长
|
友情链接
|
网站地图
|
copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。