Struts2 In Action 读书笔记 第一章 Struts2 现代Web框架

1.Struts2概览:MVC模式
MVC(Model-View_Controller)设计模式:即模式、视图、控制器

2.三个核心框架组件
(1)控制器:FilterDispatche
Struts中使用的MVC变体被称为前端控制器(front controller)MVC。 在Struts2中,控制器总是第一个被触发的组件,它负责为URL找到对应的Action。
FilterDispache在struts2中扮演这个控制器的角色。 可以通过注解和XML两种方式进行配置,让框架为URL找到对应的Action。 由于Struts2 是朝着零配置发展的,所以注解的方式更好一点。

(2)模型:Action
模型这个概念,可以理解为 “数据模型”和“业务逻辑”的结合体。
Struts2中的Action主要做两个工作:
1 Action将业务逻辑调用封装到一个单独的工作单元中。
2 Action是一个数据传输的场所。
Action完成工作之后,就会想提交请求的用户返回视图即result了。

(3)视图:Result
向前台呈现页面,JSP,Velocity等等。 是MVC模式的呈现组件。

3.Struts2的工作原理
(1)拦截器
[color=red]拦截器是Struts2框架的核心部分[/color],每一个动作都有一组拦截器与之相关联。可以在动作之前、之后调用。
[color=red] 拦截器可以将常见的、横切的任务在简洁、可重用的组件中定义。之后只要调用这个拦截器就可以完成功能, 实现了和动作代码的分离。[/color]

(2)ValueStack和OGNL
1 ValueStack是保管和请求处理相关的所有数据的一个存储区域。Struts2将所有相关的数据集中保存在ValueStack中。
2 OGNL是一种允许我们对ValueStack中数据引用和操作的表达式语言。
3 ValueStack和OGNL不属于框架中的任务组件,它独立贯穿于整个数据处理的过程。因为ValueStack存储在一个线程本地对象(ThreadLoacl)中,它的名字叫做ActionContext。
ActionContext中包含所有的数据,使用ThreadLocal可以在相同线程中的任何地方访问到这些数据。 因为[color=red]Struts2中每一个请求的处理都发生在同一个线程中[/color]。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值