该用户从未签到
|
1. 前言
! x1 E% ?' J$ K 1)为什么要学习struts框架' r2 g& S7 v& _4 W( q
struts框架是MVC设计模式的实现,基于Struts开发可以简化开发难度,提高开发效率。+ S4 g$ n( h) z& c
2)如何学习Struts框架
. W7 p. g4 l. O 先掌握Struts框架的使用,有余力可以了解下实现原理。
7 _9 X }; C8 a/ q2. MVC在javaWeb程序的使用- R9 K) C! j9 i( k6 N; A7 h: q
* 1) 什么是MVC? b% s+ S' [" X
MVC是一种设计思想,根据职责不同将程序中的组件分成以下3个部分。
( L/ A; P# g' Z9 w' H( y V(View视图):负责与用户交互。将数据展现,或者是接收数据$ N3 O& t1 }5 @" ]6 v' x
M(Model模型):负责业务处理。业务模型,数据模型/ W+ ~8 z# L, E" g- I
C(Controller控制器):负责协同模型和视图工作。视图有请求调用模型处理,模型处理完毕调用视图响应。
! g+ I- f9 t% Z 2)为什么使用MVC?
' J) c; Q8 T* q# H$ ?9 {) c. k MVC是一个非常优秀的设计思想,基于该思想架构程序,可以提高程序的结构灵活性,便于日后维护、扩展和升级。
/ p9 `7 h7 G3 E: e0 E( m 3)MVC在javaWeb中的实现5 g3 I. h. d; f" _
Servlet,JSP,Filter,JDBC2 J& B. O" l* ]( R0 a
a.原ShoppingCart程序就是一个MVC结构实现
& C0 ^% J, H3 ]- i0 ?5 TView实现部分:采用JSP组件实现& x9 X/ Q6 B3 G8 _7 q3 j/ Q" w# i' _
Model实现部分:采用DAO、Entity等组件实现8 t: H7 Z' _5 g) x8 r. ?7 Y# n
Controller实现部分:采用ActionServlet组件实现
2 ] s. H f/ o _ b.ShoppingCart程序虽然基于MVC,但结构还有一些问题
: P9 l" c$ ?, e4 T) P; s2 U 当请求数量比较多时,需要在Servlet中编写大量的if...else分支语句,而且Servlet代码量非常多。9 [/ s9 A4 w: e" Y- Z; Z, V) w/ i) d
改造方案:为Servlet提供一个XML配置文件,用于定义请求和Action组件的对应关系。然后将if...else分支中的代码提取到对应的Action组件中。2 U* Z+ W! ~6 _+ h6 n) R
*4) Struts2的主要工作流程3 B! f8 t" W, r% t
a.首先客户端浏览器发送一个请求,请求到达控制器。
- @- r G5 `7 x b.控制器根据xml配置信息调用相应的Action组件7 Q) W3 `; V" B; q- T1 g
(XML配置了请求和Action对应关系)6 s0 |* x2 Y5 f$ W, y% W0 T* b
c.执行Action组件业务处理,该组件可以调用DAO,Cart,Entity等组件。
7 [) Y! q1 b$ L" n f: E d.控制器调用JSP视图组件生成一个响应界面给浏览器
) a3 V9 z6 v* h0 g# Z7 \" H) G: h
% h L# k) r1 O5 g
9 u6 G: e0 x# t% v$ J# V; m0 ^需要的留下邮箱 我会一一 发送。
, {: e$ l/ E: g0 u1 a& d. p$ I* {* f% V
2 Y. O. P3 k/ ~1 L: |
已经上传 :链接:http://pan.baidu.com/s/1c0zmQLq 密码:prt0' h; |! |. v8 Q9 F5 t
|
|