struts2.5初步使用教程

1新建一个动态web应用,默认带web.xml;

2.将struts需要的包添加到WEB-INF/lib目录下,需要的包如图所示:


3.编辑web.xml,如下(关键要注意filter-class里面的内容,和前面的版本相比,这个):

<?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>SSHProject</display-name>
  
  <filter>
  	<filter-name>struts2</filter-name>
  	<!-- 这里没有ng.filter的ng -->
  	<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
  	
  </filter>
  
  <filter-mapping>
  	<filter-name>struts2</filter-name>
  	<url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>
4,在src目录下创建struts.xml,内容如下

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC  
    "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"  
    "http://struts.apache.org/dtds/struts-2.5.dtd">  
<struts>
	
	<!-- 指定默认编码集 -->  
    <constant name="struts.i18n.encoding" value="UTF-8"></constant>  
     
    <!-- 制定全局国际化资源文件 -->  
	<constant name="struts.custom.i18n.resources" value="mess"/>
	
	<package name="package1" extends="struts-default">
		<action name="login" class="cn.nju.fxd.login.LoginAction">
			<result name="input">/login.jsp</result>
			<result name="error">/error.jsp</result>
			<result name="success">/welcome.jsp</result>
		</action>
	</package>
</struts>
5.在包内创建你需要的action,在struts.xml里面配置好即可。

关键是2.5版本的 struts有一些东西和前面的不一样了,总结下就是:

1.所需要的基本包比以前多了;

2.filter-class的名称也变了;

2.17号补充:action访问Servlet API

struts2提供了一个ActionContext类,用它可以访问Servlet API,常见的方法有:

Object get(Object key):类似于调用HttpServeltRequest 的 getAttribute(String name)方法;

void put(Object name,Object value):类似于调用

Map getApplication():返回一个map对象,该对象模拟了该应用的ServletContext实例;

static ActionContext getContext():静态方法,返回一个ActionContext实例,也就是从这里开始可以调用其他方法;

Map getParameters():相当于HttpServletRequest的getParameterMap()方法;

Map getSession():返回一个map对象,该map对象模拟了HttpSession实例;

void setApplication(Map application):直接传入一个map实例,将该map实例里的key-value对直接转换成application的属性名,属性值;

void setSession(Map session):直接传入一个map实例,将该map实例里的key-value对直接转换成session的属性名,属性值;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值