1-strut2入门-环境搭建

1.    strutrs2功能

1)      数据合法性验证

2)      统一布局

3)      可扩展性

4)      国际化和本地化

5)      支持Ajax

6)      表单的重复提交

7)      文件的上传下载

2.    和struts1的异同

1)      struts1 里使用ActionServlet 作为控制器; struts2 使用了一个过滤器作为控制器

2)      struts1 中每个 HTML 表单都对应一个ActionForm 实例. struts2 中, HTML 表单将被直接映射到一个 POJO

3)      struts1 的验证逻辑编写在ActionForm 中; Struts2 中的验证逻辑编写在 Action 中.

4)      struts1 中, Action 类必须继承org.apache.struts.action.Action 类; struts2 中任何一个 POJO 都可以是一个 Action 类.

5)      struts2 在页面里使用 OGNL 来显示各种对象模型, 可以不再使用 EL 和 JSTL

3.    环境搭建

a)        加入 jar 包: 复制 struts\apps\struts2-blank\WEB-INF\lib 下的所有 jar 包到当前 web 应用的 lib 目录下.

b)        在 web.xml文件中配置 struts2: 复制 struts\apps\struts2-blank1\WEB-INF\web.xml 文件中的过滤器的配置到当前 web 应用的 web.xml 文件中,即添加一个类名为org.apache.struts2.dispatcher.ng.filter.strutsPrepareAndExecuteFilter的拦截所有资源的拦截器

	<filter>
		<filter-name>struts2</filter-name>
		<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>struts2</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>


c)        在当前 web 应用的 classpath 下添加 struts2的配置文件 struts.xml: 复制 struts1\apps\struts2-blank\WEB-INF\classes 下的 struts.xml 文件到当前 web 应用的 src 目录下.详细见第4步


d)        添加dtd约束: 将http://struts.apache.org/dtds/struts-2.3.dtd关联到struts-2.3.15.3\src\core\src\main\resources:windows-> preferences->xml->xml catalog ->add填写key type和key

4.    struts.xml文件配置

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
	<!-- 
		1.name:标识,供其他package引用
		2.extends:继承包,struts-default中包含许多常规配置
		3.namespace:默认是/,如果加上,则action路径的前面需要加上namespace才能访问
	 -->
	<package name="helloworld" extends="struts-default" namespace="/version">
		<!-- 
			1.name:必须有,和jsp页面中的action一一对应
			2.class:默认com.opensymphony.xwork2.ActionSupport,可指定为自己定义的Action
			3.method:默认execute,可指定为自己在Action类中定义的方法
		 -->
		<action name="person-input" >
			<!-- 
				1.name:默认success,和<action/>标签指定的class中的method方法中的返回值对应
				2.type:默认dispatcher,此外常用的还有redirect
				3.<result/>中的值对应WEB-INF中的文件
			 -->
			<result>/WEB-INF/pages/input.jsp</result>
		</action>
		
		<action name="person-save" class="com.version.s.helloworld.Person" method="save">
			<result name="detail" type="dispatcher">/WEB-INF/pages/detail.jsp</result>
		</action>
	</package>
	
</struts>


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值