Struts2的配置跟struts1基本类似。
1.首先是下载Struts2的jar包,从struts2的官网下载源代码和jar'包,主要需要用的jar包如下:
将这些jar包放到WEB-INF/lib目录下。
2.配置web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>index.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>/*</url-pattern>
</filter-mapping>
</web-app>
3.配置struts.xml,这个文件放在src文件夹下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.devMode" value="true" />
<constant name="struts.i18n.encoding" value="gbk"/><!--解决中文字符的问题 -->
<package name="user" extends="struts-default" namespace="/user">
<action name="user*" class="com.zhb.struts2.user.action.UserAction" method="{1}">
<result>/user{1}.jsp</result>
</action>
</package>
<!-- Add packages here -->
</struts>
上面的constant name是常量,下面的package可以任意添加,在package里添加action,注意namespace,class对应的名字等等。
这里的action的name采用了通配符*的方式,简化了代码,具体可以查阅文档。
result标签里写跳转后的页面,result默认的是success。
4.JSP视图
<a href="user/useradd">新增用户</a><br>,href里就是一个action。点击“新增用户”即可执行action。
5.action的代码:
package com.zhb.struts2.user.action;
import com.opensymphony.xwork2.ActionSupport;
public class UserAction extends ActionSupport{
public String add(){
return SUCCESS;
}
public String delete(){
return SUCCESS;
}
}