该用户从未签到
|
1. 前言1 j5 d6 x! L8 f" w( E8 u& ~
1)为什么要学习struts框架' ^! l8 S& E; F
struts框架是MVC设计模式的实现,基于Struts开发可以简化开发难度,提高开发效率。
" ^7 J# @% | S4 ` 2)如何学习Struts框架
/ ~5 e1 ?# v& z* W: l+ ~ 先掌握Struts框架的使用,有余力可以了解下实现原理。
, \3 e5 y# ~7 e' g' V8 g) V1 u2 @2. MVC在javaWeb程序的使用
; O N- E1 ~$ T( i0 L * 1) 什么是MVC?
0 B* F, Z" E7 g5 g; ^" S, b MVC是一种设计思想,根据职责不同将程序中的组件分成以下3个部分。
9 N ]( V7 _% l4 E F V(View视图):负责与用户交互。将数据展现,或者是接收数据
5 D/ R: L+ m c M(Model模型):负责业务处理。业务模型,数据模型' q) u( U7 _/ a1 i" O' o+ H
C(Controller控制器):负责协同模型和视图工作。视图有请求调用模型处理,模型处理完毕调用视图响应。
9 n" f5 \- C" ?2 j$ e" k0 ] 2)为什么使用MVC?
% }0 l$ m' e* o" b( W' _0 C MVC是一个非常优秀的设计思想,基于该思想架构程序,可以提高程序的结构灵活性,便于日后维护、扩展和升级。) }' U1 T+ L* @. M a7 d2 _
3)MVC在javaWeb中的实现, H6 }6 k/ t3 l" U7 a
Servlet,JSP,Filter,JDBC+ |0 N% }" f( g6 G( F/ X
a.原ShoppingCart程序就是一个MVC结构实现
" h, d8 d! F4 Y, G, g% NView实现部分:采用JSP组件实现
; D! Z0 p8 ?5 e& X- m5 D* RModel实现部分:采用DAO、Entity等组件实现8 u! j# e+ J8 _) ^7 r6 L
Controller实现部分:采用ActionServlet组件实现/ L3 d! [3 W0 G' L2 @5 S* Q- f
b.ShoppingCart程序虽然基于MVC,但结构还有一些问题! p; l% j; l- g
当请求数量比较多时,需要在Servlet中编写大量的if...else分支语句,而且Servlet代码量非常多。
5 @: H4 `6 j: c" u 改造方案:为Servlet提供一个XML配置文件,用于定义请求和Action组件的对应关系。然后将if...else分支中的代码提取到对应的Action组件中。
+ X4 a& J9 | t8 H# p9 B4 u2 j *4) Struts2的主要工作流程
. Q( a; q* b# {) A. a4 D a.首先客户端浏览器发送一个请求,请求到达控制器。/ v$ o- a3 \: A2 t' o
b.控制器根据xml配置信息调用相应的Action组件
- q i3 N8 F- t$ R: i: e" n (XML配置了请求和Action对应关系)
0 |# w& G+ G6 v c.执行Action组件业务处理,该组件可以调用DAO,Cart,Entity等组件。4 P. c# n- Y' y. T4 V, P
d.控制器调用JSP视图组件生成一个响应界面给浏览器
$ B) @) g- l( p) B6 k" \" }3 m* ^; p6 E$ Y6 ?9 ?
0 }# j+ o4 f2 [" D) d
需要的留下邮箱 我会一一 发送。8 R$ t6 B* N1 {( t5 w
, |3 W1 r1 N' d( E; a% w$ u- B
- O) o% M7 S1 J. ]
已经上传 :链接:http://pan.baidu.com/s/1c0zmQLq 密码:prt0. A2 C+ Z D3 T1 V7 e8 {5 V
|
|