该用户从未签到
|
1. 前言6 x- S$ F# u' o, {& P7 {
1)为什么要学习struts框架
1 M2 ?! V7 l0 e; \& b struts框架是MVC设计模式的实现,基于Struts开发可以简化开发难度,提高开发效率。" R( T4 _! E% n# o
2)如何学习Struts框架
) u; h# P8 C' n+ `- b 先掌握Struts框架的使用,有余力可以了解下实现原理。! I t% W/ Q7 y' ?; Y
2. MVC在javaWeb程序的使用
4 }, s; o4 p- Z; N, c * 1) 什么是MVC?
4 }6 _1 I0 Q1 l: z MVC是一种设计思想,根据职责不同将程序中的组件分成以下3个部分。8 x! Z$ _, Y! o( a! ]
V(View视图):负责与用户交互。将数据展现,或者是接收数据
5 K$ e3 P, P0 R5 M1 I) h" k M(Model模型):负责业务处理。业务模型,数据模型 K: `. g/ P1 p* z! r4 N. R6 Y0 _
C(Controller控制器):负责协同模型和视图工作。视图有请求调用模型处理,模型处理完毕调用视图响应。4 s) s4 _( o+ n# }" v% [! o2 {& Z6 P
2)为什么使用MVC?, @& c; H; s$ Y
MVC是一个非常优秀的设计思想,基于该思想架构程序,可以提高程序的结构灵活性,便于日后维护、扩展和升级。$ k1 n1 t2 [8 J
3)MVC在javaWeb中的实现7 O: v4 T0 ^$ i- }
Servlet,JSP,Filter,JDBC
1 p! g% \' v/ s: q a.原ShoppingCart程序就是一个MVC结构实现3 X0 F* F( \ b5 x
View实现部分:采用JSP组件实现/ N3 X6 t' ^* V, M
Model实现部分:采用DAO、Entity等组件实现
8 l" r6 z+ \5 \# k' ^Controller实现部分:采用ActionServlet组件实现0 f9 ^" }( P5 |0 \0 H
b.ShoppingCart程序虽然基于MVC,但结构还有一些问题3 L8 \* ~9 c# S: V) K) i
当请求数量比较多时,需要在Servlet中编写大量的if...else分支语句,而且Servlet代码量非常多。
A3 t* b- T7 e. O 改造方案:为Servlet提供一个XML配置文件,用于定义请求和Action组件的对应关系。然后将if...else分支中的代码提取到对应的Action组件中。" |+ b7 M! w% j2 N$ V# S9 z3 i" X$ R
*4) Struts2的主要工作流程( d- u+ Z9 |( J4 }
a.首先客户端浏览器发送一个请求,请求到达控制器。
, A+ N2 v: |: j4 x b.控制器根据xml配置信息调用相应的Action组件
# G! ^5 v4 {2 ?# d7 j. ]7 U r (XML配置了请求和Action对应关系) d" v6 B5 i* \8 V M/ |
c.执行Action组件业务处理,该组件可以调用DAO,Cart,Entity等组件。+ b. ~; {& @3 K3 u% U- x/ C; x5 U
d.控制器调用JSP视图组件生成一个响应界面给浏览器9 G7 d C. r' z _' A9 e; G! j
* @3 t6 o( \( K. r6 o
% b5 Z8 N- [' F0 g) h' F4 ?需要的留下邮箱 我会一一 发送。
1 R* C3 o5 n5 H# w) y9 h4 _6 g1 L* c. A2 Y5 V
# F9 i. m7 {+ G5 a6 B# e) K) d
已经上传 :链接:http://pan.baidu.com/s/1c0zmQLq 密码:prt0) `4 I) d0 M" P" {4 I8 z
|
|