1)首先新建一个web工程:struts2demo
2)在此web工程webcontent下WEB-INF,lib下导入必要的jar,文件:commons-logging-1.1.jar;ognl-206011.jar;struts2-core-2.0.6.jar;xwork-2.0.1.jar;
3)web.xml文件添加如下:
<!-- 定义Struts2的FilterDispathcer的Filter -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<!-- FilterDispatcher用来初始化struts2并且处理所有的WEB请求。 -->
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
4)WebContent目录下复制文件:
login.jsp,
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<title><s:text name="loginPage"/></title>
</head>
<body>
<s:form action="login">
<s:textfield name="username" key="user"/>
<s:textfield name="password" key="pass"/>
<s:submit key="login"/>
</s:form>
</body>
</html>
error.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<title><s:text name="errorPage"/></title>
</head>
<body>
<s:text name="failTip"/>
</body>
</html>
welcome.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<title><s:text name="succPage"/></title>
</head>
<body>
<s:text name="succTip">
<s:param>${sessionScope.user}</s:param>
</s:text><br>
</body>
</html>
5)src目录下添加文件:
messageResource_zh_CN.properties,struts.properties,struts.xml
内容分别如下:
loginPage=登陆页面
errorPage=错误页面
succPage=成功页面
failTip=对不起,您不能登录!
succTip=欢迎,{0},您已经登录!
viewLink=查看作者李刚已出版的图书
bookPageTitle=作者李刚已出版的图书
bookName=书名:
user=用户名
pass=密 码
login=登陆
user.required=用户名必须输入!
pass.required=密码必须输入!
------------------------------
struts.custom.i18n.resources=messageResource
----------------------------------------
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="lee" extends="struts-default">
<action name="login" class="lee.LoginAction">
<result name="input">/login.jsp</result>
<result name="error">/error.jsp</result>
<result name="success">/welcome.jsp</result>
</action>
</package>
</struts>
6)loginAction.java
package lee; import com.opensymphony.xwork2.ActionSupport; import com.opensymphony.xwork2.ActionContext; public class LoginAction extends ActionSupport { /** * */ private String username; private String password; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String execute() throws Exception { if (getUsername().equals("scott") && getPassword().equals("tiger")) { System.out.println("getUsername()===>"+getUsername()); ActionContext.getContext().getSession().put("user", getUsername()); return SUCCESS; } else { return ERROR; } } }