该用户从未签到
|
1. 前言! R; D( U% {7 k! E$ v! R
1)为什么要学习struts框架
$ }: k- s) p$ v- U8 d- w' d- X struts框架是MVC设计模式的实现,基于Struts开发可以简化开发难度,提高开发效率。/ c5 z! h: X, j H: [
2)如何学习Struts框架
& @- X4 W" H g0 p# x6 C! a 先掌握Struts框架的使用,有余力可以了解下实现原理。7 ]: a& d* [% l+ {' K5 j+ q
2. MVC在javaWeb程序的使用
8 }2 N3 ~( W* |0 i2 S& g! v2 l * 1) 什么是MVC?3 h z5 v$ E( t, w( T$ S& I6 H6 `
MVC是一种设计思想,根据职责不同将程序中的组件分成以下3个部分。
& v" ]9 A1 U- q& _ I/ ~. c! p V(View视图):负责与用户交互。将数据展现,或者是接收数据- ?/ T; X, Q( r" o! Y
M(Model模型):负责业务处理。业务模型,数据模型
, n# R1 I9 ^% \% p" I- X7 g C(Controller控制器):负责协同模型和视图工作。视图有请求调用模型处理,模型处理完毕调用视图响应。- ?, v; W. V) S% l; o( b
2)为什么使用MVC?( W% j$ _6 x! }( C3 V: o! w
MVC是一个非常优秀的设计思想,基于该思想架构程序,可以提高程序的结构灵活性,便于日后维护、扩展和升级。
+ {8 C/ j z3 F& }* | 3)MVC在javaWeb中的实现3 O: T. B6 Q L3 @. w6 V0 N! y
Servlet,JSP,Filter,JDBC! M) x0 z- X/ q
a.原ShoppingCart程序就是一个MVC结构实现
9 e) y; t0 F( WView实现部分:采用JSP组件实现9 }1 g7 z4 R- s$ _# H0 i
Model实现部分:采用DAO、Entity等组件实现) Q$ {% U. m) V8 D. ^ s
Controller实现部分:采用ActionServlet组件实现, ~0 a; L3 i" d6 D, w I
b.ShoppingCart程序虽然基于MVC,但结构还有一些问题
" z# \6 X2 C; Z: M 当请求数量比较多时,需要在Servlet中编写大量的if...else分支语句,而且Servlet代码量非常多。0 n3 X6 ]7 U9 ]$ _; O
改造方案:为Servlet提供一个XML配置文件,用于定义请求和Action组件的对应关系。然后将if...else分支中的代码提取到对应的Action组件中。2 x: E: B6 K+ E; l
*4) Struts2的主要工作流程
2 u2 ^7 ?0 B+ B, A, w- A a.首先客户端浏览器发送一个请求,请求到达控制器。
# q* ^5 F) @& t& \( [ b.控制器根据xml配置信息调用相应的Action组件/ I" [1 Y- b1 D
(XML配置了请求和Action对应关系), F# n& v5 E9 b
c.执行Action组件业务处理,该组件可以调用DAO,Cart,Entity等组件。
- a6 E! p/ U& ~) P% g d.控制器调用JSP视图组件生成一个响应界面给浏览器
4 p" ?* P6 E! `! L( b6 l' f" l+ o% v5 s/ E
4 s/ c& C7 S9 n
需要的留下邮箱 我会一一 发送。
! H! `! P+ G4 |- t4 m2 M8 S, u/ \# j3 Z- v7 Z" O9 \4 v. s
2 v7 O; \! ]: h; b( l已经上传 :链接:http://pan.baidu.com/s/1c0zmQLq 密码:prt04 H) u0 O( _1 S* n
|
|