Structs2 HelloWorld-01 环境搭建

一、创建structs2工程的步骤

1、创建webproject,添加structs支持

2、加入jar包,用myeclipse添加structs支持时,会自动添加

3、配置web.xml,配置structs的核心控制器StrutsPrepareAndExecuteFilter,在添加structs支持的同时,已经添加好了

web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>Structs2-01</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  <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>*.action</url-pattern>
  </filter-mapping>
</web-app>

4、添加 DTD 约束

5、编写action类,处理业务逻辑

1.action 代表一个struct请求
2.action类 能够处理struct请求的类
3.action类的特点

  • 属性的名字必须遵守与javabeans属性名相同的命名规范
  • 必须有一个不带参的构造器
  • 至少有一个供structs在执行这个action时调用的方法
  • 一个action类可能包含多个action方法
  • struct2惠威每个http请求创建一个新的action实例,即action不是单例的,是线程安全的
6、配置structs.xml ,注册action类
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" 
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
	<!-- 使用packet来组织模块 -->
	<package name="helloworld" extends="struts-default">

		<!-- 配置action 一个structs2的请求就是一个action name对应一个structs2的请求的名字,
		(或者是对应一个servlet-path,但去除/和扩展名) 
			不包含扩展名 result表示结果
			return 可能有多个结果,多个结果之间用name属性标识
			还有一个type属性,表示结果的类型,默认为dispatcher,转发到结果
		 -->
		<action name="product-input">
			<!-- 配置结果 -->
			<result>WEB-INF/pages/input.jsp</result>
		</action>

		<!-- 这个action请求指定class,并且调用对应类的方法
			方法的返回值必须和name相同
		 -->
		<action name="product-save" class="com.weixuan.structs2.Product"
			method="save">
			<result name="details" type="dispatcher">WEB-INF/pages/details.jsp</result>
		</action>
	</package>
</struts>    

7、访问action
http://localhost/appName/<PackageNamespace>/<ActionName>.<Extension>
<PackageNamespace> 代表你在struts.xml中配置package的namespace,action配置中name! <Extension>默认可不写或者是.action

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值