学习Struts2框架之下册

ActionContext

在每次执行Action的方法之前都会创建新的ActionContext对象,所以ActionContext是线程安全的。struts2是采用ThreadLocal模式来保存ActionContext,ThreadLocal变量为每个线程提供独立的变量值的副本,使得每个线程都可以独立的使用自己的副本,从而不会跟其他线程发送冲突(使用map进行实现的)。

ThreadLocal原理代码

Alt text

ActionContext的6大对象

Alt text

  1. valueStack
    是什么:ValueStack是ActionContext的一个对象,是栈结构,FILO(先进后出)
    使用是:存放的就是Action对象,就是把Action的信息压入栈
    注意点: 由于是ActionContext的根对象,所以如果采用OGNL访问,可以直接访问

  2. OGNL(Object Graph Navigation Language)
    是什么:工作在视图层,用来取代页面中的 Java 脚本,简化数据的访问操作。
    怎么用: 常和strus2标签合起来用
    "#": 访问非根对象(is not valueStack)的属性,如 ActionContext 上下文加“#”前缀。
    “%”符号是在标签的属性值被理解为字符串类型时,告诉执行环境%{}里的是 OGNL表达式。

  3. struts标签库
    UI标签
    Alt text
    控制标签

<s:if test="表达式 1">
标签内容
</s:if>
<s:elseif test="表达式 2">
标签内容
</s:elseif>
<s:else>
标签内容
</s:else>

<s:iteractor></s:iteractor>

数据标签

<s:property value="">
<s:date name="#" format="yyyy年MM月dd日"/>

Alt text

<s:include value="foot.jsp"></s:include>

类型转换(typeconvert)

自定义类型转换
Point(x,y)

转换机制贴代码:

校验

(实例表单校验)贴代码:

拦截器(Interceptor)
  1. 记录访问时间
  2. 记录访问量
  3. 登陆拦截
国际化
  1. jdk国际化贴代码
  2. struts2国际化实现贴代码
文件上传下载的问题

struts2中的文件上传下载:

Struts2默认采用Common-FileUpload组件来实现文件上传,只是在此基础之后做了一层封装。所以,之前依赖的jar包依然需要
commons-fileupload-1.3.1.jar,commons-io-2.2.jar

表单重复提交问题

团队分模块开发, 就是在xml配置文件的时候进行包含操作, 进行集成。


口述总结篇

转载于:https://www.cnblogs.com/jwlxtf/p/8045271.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值