Struts2与Spring结合使用及Result组件详解

Struts2+Spring整合

Struts2和Spring整合,程序结构如下

  1. 列表显示

struts2版本

struts2+spring版本

  1. 追加Spring开发包ioc,aop,dao,spring-web.jar和applicationContext.xml
  2. 将Action组件扫描到Spring容器中
  3. 在web.xml配置ContextLoaderListener
  4. 引入struts2-spring-plugin.jar包
  5. 修改struts.xml中元素的class属性,改成Spring容器中Action对象的id名

  1. 利用JdbcTemplate编写DeptDao,给Action注入使用

    1. 编写实体类Dept
    2. 编写DeptDao接口
    3. 编写JdbcDeptDao实现类
    4. 配置JdbcDeptDao类,(扫描+注入JdbcTemplate)
    5. 配置JdbcTemplate和连接池(dbcp或c3p0)
    6. 给Action注入DeptDao使用
  2. 部门删除

/delete?id=xx-->Filter控制器-->DeleteAction-->DeptDao -->Result-->列表刷新(继续发出/list)

  • 扩展DeptDao的delete方法
  • 编写DeleteAction组件
  • 在struts.xml配置< action>和< result>

Result组件

  1. JSP响应
  2. <result name="" type="dispatcher">xxx.jsp</result>
  • 转发 dispatcher
  • 重定向 redirect
  1. Action响应(构建一个Action链)

请求-->Action1--Result-->Action2-->xxx.jsp

  • 重定向请求调用下一个Action redirectAction
  • 转发请求调用下一个Action chain
  1. Json响应
    请求-->Action-->Result-->json字符串输出
<!--前提条件:需要导入struts2-json-plugin.jar包,<package extends="json-default">-->
<!--默认情况下,会将Action对象所有属性以json方式输出-->
<result name="success" type="json"></result>
<!--会将Action对象指定名字的属性以json方式输出-->
<result name="success" type="json">
	<param name="root">属性名</param>
</result>

<!--会将Action对象指定名字的属性以json方式输出-->
<result name="success" type="json">
	<param name="includeProperties">属性名1,属性名2</param>
</result>
  1. 字节流响应

请求-->Action-->Result-->将信息以字节流输出

例如:下载、验证码等功能
/image_code-->ImageCodeAction-->stream-->以字节方式往外输出

  1. Result组件原理(了解)
  • 编写Result组件类,实现Result接口
  • 在struts.xml中配置
  • 在使用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值