该用户从未签到
|
1. 前言
3 N- q! N, J& `$ L9 K 1)为什么要学习struts框架: [6 S! w( N% _: ?! K$ ?: B
struts框架是MVC设计模式的实现,基于Struts开发可以简化开发难度,提高开发效率。
+ Q- ^* Q4 @; a: x5 Q 2)如何学习Struts框架8 G; X/ }0 w5 i1 {
先掌握Struts框架的使用,有余力可以了解下实现原理。; [( b0 a k3 B8 O" j
2. MVC在javaWeb程序的使用, x* s+ m3 N" y4 Z U3 ?( n- H5 b% [/ N
* 1) 什么是MVC?2 e' A! [/ p( W
MVC是一种设计思想,根据职责不同将程序中的组件分成以下3个部分。
0 U3 r n% S* Z9 b; I% Y; Z V(View视图):负责与用户交互。将数据展现,或者是接收数据
1 ^! C3 z) U! B: w( g; l& _ M(Model模型):负责业务处理。业务模型,数据模型
& J/ D: F3 Y% b C(Controller控制器):负责协同模型和视图工作。视图有请求调用模型处理,模型处理完毕调用视图响应。
# s3 L8 d( g3 x$ Y& b* X1 y' [ 2)为什么使用MVC?: T( Z) i. a0 Z) S7 A" v1 ~
MVC是一个非常优秀的设计思想,基于该思想架构程序,可以提高程序的结构灵活性,便于日后维护、扩展和升级。/ r$ x+ h8 q! O* ~; a% O
3)MVC在javaWeb中的实现
; U2 w ^6 v1 {1 c$ ?5 j I Servlet,JSP,Filter,JDBC& S% A3 r/ J5 x4 }
a.原ShoppingCart程序就是一个MVC结构实现1 J& M3 J1 A5 b
View实现部分:采用JSP组件实现% f9 N# W3 S \' F3 ?) l; K
Model实现部分:采用DAO、Entity等组件实现
$ R+ f% x; {0 _" g* p2 T+ LController实现部分:采用ActionServlet组件实现4 _1 o* c, o4 i# b+ `, a+ j
b.ShoppingCart程序虽然基于MVC,但结构还有一些问题
: N& y( H' A8 B& Z5 @% h$ Q 当请求数量比较多时,需要在Servlet中编写大量的if...else分支语句,而且Servlet代码量非常多。 ~5 D5 o3 X5 T( d
改造方案:为Servlet提供一个XML配置文件,用于定义请求和Action组件的对应关系。然后将if...else分支中的代码提取到对应的Action组件中。( z2 u9 O' E0 }& X# |% ?; B4 J
*4) Struts2的主要工作流程* O1 S8 H# I8 G x( U. X# f6 v
a.首先客户端浏览器发送一个请求,请求到达控制器。9 X5 H6 @8 P) ]" E" W0 H4 _4 g
b.控制器根据xml配置信息调用相应的Action组件
$ s- p: ^! e# Q1 c (XML配置了请求和Action对应关系)
* z4 N5 C4 o; J, H2 W6 V c.执行Action组件业务处理,该组件可以调用DAO,Cart,Entity等组件。$ n5 m: C- {( m' w* g6 Y4 z+ Q
d.控制器调用JSP视图组件生成一个响应界面给浏览器6 R# {3 q% V4 t) [ X& u& Y4 u- H
8 X0 J6 ]3 B0 t! |- l$ ~" x
" J# R8 h! Y; k1 g% r5 C# u
需要的留下邮箱 我会一一 发送。/ k& x' O* l9 C9 |8 d' o) O
8 [3 ^! ?8 }" h8 q( R! e& h- D3 w& @9 M2 } k( W% ~3 E, B
已经上传 :链接:http://pan.baidu.com/s/1c0zmQLq 密码:prt0" F" ~. f z& y' d' k3 P
|
|