10002---Struts2 的 Hello World

Struts2 概述

Struts2 是一个用来开发 MVC 应用程序的框架. 它提供了 Web 应用程序开发过程中的一些常见问题的解决方案: 
对来自用户的输入数据进行合法性验证
统一的布局
可扩展性
国际化和本地化
支持 Ajax
表单的重复提交
文件的上传下载


Struts2 VS Struts1
在体系结构方面更优秀:
类更少, 更高效:  在 Struts2 中无需使用 “ActionForm” 来封装请求参数. 
扩展更容易:  Struts2 通过拦截器完成了框架的大部分工作. 在 Struts2 中插入一个拦截器对象相当简便易行. 
更容易测试:
即使不使用浏览器也可以对基于 Struts2 的应用进行测试 不用servlet,不用web服务器


从 Struts1 升级到 Struts2
Struts2 从本质上讲已不是从 Struts1 扩展而来的, 说它是一个换了品牌标签的 WebWork更合适
从 Struts1 升级到 Struts2:
Struts1 里使用 ActionServlet 作为控制器; Struts2 使用了一个过滤器作为控制器
Struts1 中每个 HTML 表单都对应一个 ActionForm 实例. Struts2 中, HTML 表单将被直接映射到一个POJO.
Struts1 的验证逻辑编写在 ActionForm中; Struts2 中的验证逻辑编写在 Action 中.
Struts1 中, Action 类必须继承 org.apache.struts.action.Action类; Struts2 中任何一个 POJO 都可以是一个 Action 类. 
Struts2 在页面里使用 OGNL 来显示各种对象模型, 可以不再使用 EL JSTL 


搭建 Struts2 的环境:
--加入 jar 包:
复制 struts\apps\struts2-blank\WEB-INF\lib 下的所有 jar 包到当前 web 应用的 lib 目录下.
--在 web.xml 文件中配置 struts2: 复制 struts\apps\struts2-blank1\WEB-INF\web.xml 文件中的过滤器的配置到当前 web 应用的 web.xml 文件中
--在当前 web 应用的 classpath 下添加 struts2 的配置文件 struts.xml: 

   复制 struts1\apps\struts2-blank\WEB-INF\classes 下的 struts.xml 文件到当前 web 应用的 src 目录下. 


1. VS 自实现:


1). 搭建 Struts2 的开发环境


2). 不需要显式的定义 Filter, 而使用的是 struts2 的配置文件. 


3). details.jsp 比先前变得简单了.


${requestScope.product.productName} -> ${productName}


4). 步骤:


I.  由 product-input.action 转到 /WEB-INF/pages/input.jsp

在 struts2 中配置一个 action

<action name="product-input">
<result>/WEB-INF/pages/input.jsp</result>
</action>

II. 由 input.jsp 页面的 action: product-save.action 到 Product's save, 再到  /WEB-INF/pages/details.jsp


<action name="product-save" class="com.atguigu.struts2.helloworld.Product"
method="save">
<result name="details">/WEB-INF/pages/details.jsp</result>
</action>

在 Prodcut 中定义一个 save 方法, 且返回值为 details









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值