我就只说一句,Struts2是MVC的一种实现,Struts2运行机理相比Struts1有很大的不同,Struts2是基于WebWork的。
下面开始说怎么去运行一个Struts2程序。所需jar包等,请到http://struts.apache.org下载
1、 myeclipse新建web project
2、 下载Struts2之后加压,找到struts2-blank-xxx.war 再解压
3、 找到Struts2-blank中lib,把所有的*.jar复制到 myeclipse所建的web project的lib中
4、 配置Struts2的过滤器:在web project的web.xml中配置
Xml代码
<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>
5、 新建以下JSP页面
login.jsp
Html代码
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<html>
<head>
<title>My JSP 'index.jsp' starting page</title>
</head>
<body>
<form action="test.action" method="post">
用户名:<input type="text" name="username"><br>
密码:<input type="text" name="pwd"><br>
<input type="submit" value="Submit">
</form>
</body>
</html>
ok.jsp
Html代码
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<html>
<head>
<title>My JSP 'ok.jsp' starting page</title>
</head>
<body>
OK!!
</body>
</html>
no.jsp
Html代码
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<html>
<head>
<title>My JSP 'no.jsp' starting page</title>
</head>
<body>
NO!!
</body>
</html>
6、 新建一个类
TestAction.java
Java代码
/**
*
*/
package com.struts2.action;
/**
* @author Administrator
*
*/
public class TestAction {
/**
* 注意:属性名字要和jsp页面的表单元素名字一样,并且提供getter setter方法
*/
private String username;
private String pwd;
public String execute() {
if (username.equals(pwd)) {
return "OK";
} else {
return "NO";
}
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
}
7、 在src下建立struts.xml 并配置刚才建立的Action
Xml代码
<?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>
<package name="default" namespace="/" extends="struts-default">
<action name="test" class="com.struts2.action.TestAction">
<result name="ok">/ok.jsp</result>
<result name="no">/no.jsp</result>
</action>
</package>
</struts>