struts2总结

1.问题:为什么使用struts2框架?
Struts2框架它是一个在web中应用的mvc框架, 我们使用struts2框架来完成web开发有什么优势?
1.原来需要在Servlet通过request.getParameter("username")来获取表单提交的数据;
2.原来要在Servlet通过response.sendRedirect或request.getRequestDispatcher来进行页面跳转;
3.原来携带数据到页面上通过request.setAttribute把数据存放到域对象,然后在页面上通过el表达式来获取数据
使用struts2框架可以简化这些麻烦的操作,因为框架已经封装好了,只要按照框架的规则定义属性、配置页面这些操作都可以自动的搞定


2.对应第一个问题,我们可以知道,Struts2框架在以下几个方面给我们提供了便利:
1.表单数据获取:提供了三种获取方式(由于action会被保存到valueStack中,valueStack又保存在request中):
1.属性驱动
a.直接在action类中提供与请求参数匹配的set属性,在请求时页面上提供set属性后字符串作为请求参数名称(首字母小写)
b.在action类中创建一个javaBean,对其提供get方法 ,在请求时页面上通过ognl对象导航方式来注;
以上两种方式的优缺点:
第一种:比较简单,但是请求参数值没有封装到User对象
第二种: 将请求参数值直接封装到了User中,但是要求在页面上必须使用ognl表达式user.username,
就存在页面请求参数名称不通用问题。

2.模型驱动
步骤:
1.让Action类要实现一个指定接口ModelDriven
2.实例化模型对象(就是要new出来javaBean)
3.重写getModel方法将实例化的模型返回
对于模型驱动它与属性驱动对比,在实际开发中使用比较多
2、关于路径跳转问题
是通过<result>来配置跳转的路径.
它的name属性是与action中的方法的返回值进行对比的。
它的type属性可以取哪些值?

dispatcher(默认值是这个) 它代表的是请求转发。针对于jsp页面
redirect  它代表的是重定向   针对于jsp页面 
chain  它类似于请示转发,只不过它是针对于action跳转
redirectAction 它类似于重定向  针对于action

3、关于路径跳转的配置
可以直接在<package>下创建全局的result
当Action类的方法返回的结果视图在自己的action配置下匹配不到result的时候就去action配置的外部找全局结果视图

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值