|
该用户从未签到
|
1. 前言
0 k. G7 ~/ W0 L9 e, S6 \. g% W/ a0 U 1)为什么要学习struts框架1 V8 }- C( _3 s2 N, a ]) k1 \
struts框架是MVC设计模式的实现,基于Struts开发可以简化开发难度,提高开发效率。
- x# N, E- e+ H2 B 2)如何学习Struts框架
1 m Q% {* C" _1 u 先掌握Struts框架的使用,有余力可以了解下实现原理。 _/ v1 B1 P6 F+ B, R7 X3 l
2. MVC在javaWeb程序的使用$ w4 X+ T0 j9 H4 H
* 1) 什么是MVC?# m3 c, H) Q; m- i0 M, F- G
MVC是一种设计思想,根据职责不同将程序中的组件分成以下3个部分。! B- G: o! {+ x6 L
V(View视图):负责与用户交互。将数据展现,或者是接收数据
6 }0 E0 l: x7 r0 k& }6 \ M(Model模型):负责业务处理。业务模型,数据模型, z1 s# W7 ?2 o; T1 T4 e6 l
C(Controller控制器):负责协同模型和视图工作。视图有请求调用模型处理,模型处理完毕调用视图响应。
v( B8 E+ O" I 2)为什么使用MVC?
% _* u, t" x, ]3 @* U& g6 w- h MVC是一个非常优秀的设计思想,基于该思想架构程序,可以提高程序的结构灵活性,便于日后维护、扩展和升级。
4 B; z# K5 w0 L7 t# E) L% t6 L 3)MVC在javaWeb中的实现9 B- _* i# Q1 z3 r# K7 {" h
Servlet,JSP,Filter,JDBC# {3 e7 e- T( ?, }8 R; B0 ^
a.原ShoppingCart程序就是一个MVC结构实现* [; v' B4 R' U% U
View实现部分:采用JSP组件实现 W( u, j0 e6 D/ K9 ~) J
Model实现部分:采用DAO、Entity等组件实现
- X0 i1 w8 p; ?) F3 n y5 bController实现部分:采用ActionServlet组件实现
E( v9 m0 h7 u0 y1 x6 } b.ShoppingCart程序虽然基于MVC,但结构还有一些问题 ]- X X) r3 H* t- U) ~
当请求数量比较多时,需要在Servlet中编写大量的if...else分支语句,而且Servlet代码量非常多。/ l: t3 z6 Z9 m: q) x
改造方案:为Servlet提供一个XML配置文件,用于定义请求和Action组件的对应关系。然后将if...else分支中的代码提取到对应的Action组件中。
& C: L8 ]2 t$ k) d& g *4) Struts2的主要工作流程+ o4 d; P8 m4 ~$ l+ E
a.首先客户端浏览器发送一个请求,请求到达控制器。$ r- H, e6 ?& O4 x
b.控制器根据xml配置信息调用相应的Action组件
7 a# s' k4 c4 t6 c# ?2 q& O (XML配置了请求和Action对应关系)$ Q) [5 Z' J3 K' y1 }9 T; Y
c.执行Action组件业务处理,该组件可以调用DAO,Cart,Entity等组件。
2 @& m* n+ X& Q6 I3 {' K6 d( z8 [ d.控制器调用JSP视图组件生成一个响应界面给浏览器
4 g5 m: ?2 @+ |
+ q+ h6 x! V+ M7 w* F( h5 h2 E# _
* p; ?# P0 T6 q. Q6 O需要的留下邮箱 我会一一 发送。' R8 p& `% ^( H* M2 X7 h
6 a: |$ w# d' o2 R1 u8 y4 G" [" X1 M" q
7 U* A6 I# d& w7 z; q已经上传 :链接:http://pan.baidu.com/s/1c0zmQLq 密码:prt07 H# }. C( ?2 S$ Q4 O3 ]- }) d2 x
|
|