这几天去sturs官网学习了一下,把示例翻译了一下,在这里和大家一起分享一下
strutsdemo学习网站
ttp://struts.apache.org/2.x/docs/simple-setup.html
Struts2学习笔记-part1: 快速起步
准备工作:
下载struts2: http://apache.mirror.phpchina.com/struts/binaries/struts-2.0.11.1-all.zip
准备Tomcat5.x
建立一个Java Web项目,提取最少运行Struts2应用的包集合(摘自Struts官方文档):
Install the Minimum Set of Libraries and Configuration Files
The following files are a minium requirement for your application.
Filename Description
struts2-core.jar Framework library itself, found in distribution root directory
xwork.jar XWork 2 library on which Struts 2 is built (version 2.0 or later)
ognl.jar Object Graph Navigation Language (OGNL), the expression language used throughout the framework
freemarker.jar All UI tag templates are written in Freemarker (also a good option for your own views)
commons-logging.jar Commons logging, which the framework uses to support transparently logging to either Log4J or JDK 1.4+
web.xml Java web application configuration file that defines the filters (and other components) for your web application
struts.xml Framework configuration file that defines the actions, results, and interceptors for your application
If any Struts 2 Plugins are included, then other JARs may be needed too. For example, the optional Spring Plugin requires the Spring JARs to be present.
目标:实现一个简单的用户登录.
下面是实现源码:
一、先实现登录页面
<%--
登录页面
User: leizhimin
Date: 2008-3-14
Time: 15:45:52
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=GBK" language="java" %>
<html>
<head><title>登录页面</title></head>
<body>
<form action="Login.action" method="post">
<table align="center">
<caption><h3>用户登录</h3></caption>
<tr>
<td>用户名:<input type="text" name="username"/></td>
</tr>
<tr>
<td>密 码:<input type="text" name="password"/></td>
</tr>
<tr align="center">
<td align="center">
<input type="submit" value="登录"/>
<input type="reset" value="重填"/>
</td>
</tr>
</table>
</form>
</body>
</html>
二、实现处理页面的Action
package stu;
/**
* 处理用户请求的Action
* File: LoginAction.java
* User: leizhimin
* Date: 2008-3-14 15:59:07
*/
public class LoginAction {
private String username;
private String password;
/**
* 处理用户请求的execute方法
* 因为Struts2的拦截机制,他们负责解析用户的请求参数,并将请求参数赋给Action对应的属性
*
* @return 当用户名为aaa并且密码为123时,返回success,否则,返回error.
* @throws Exception
*/
public String execute() throws Exception {
//当用户名为aaa并且密码为123时,返回success,否则,返回error.
if (getUsername().equals("aaa") && getPassword().equals("123")) {
return "success";
} else {
return "error";
}
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
三、配置Web.xml
<?xml version="1.0" encoding="GBK"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>Struts Blank</display-name>
<!--定义Struts2的FilterDispatcher的Filter-->
<filter>
<!--定义核心Filter的名字-->
<filter-name>struts2</filter-name>
<!--定义核心Filter的实现类-->
<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>
<welcome-file-list>
<welcome-file>/login.jsp</welcome-file>
</welcome-file-list>
</web-app>
四、配置Action处理结果和资源资源之间的映射关系
注意:此文件打包后位于WEB-INF/classes/目录下面,或者放入classpath。
<?xml version="1.0" encoding="GBK"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>Struts Blank</display-name>
<!--定义Struts2的FilterDispatcher的Filter-->
<filter>
<!--定义核心Filter的名字-->
<filter-name>struts2</filter-name>
<!--定义核心Filter的实现类-->
<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>
<welcome-file-list>
<welcome-file>/login.jsp</welcome-file>
</welcome-file-list>
</web-app>
五、增加登录成功和失败页面
<%@ page contentType="text/html;charset=GBK" language="java" %>
<html>
<head><title>登录成功页面</title></head>
<body>
登录成功!
</body>
</html>
<%@ page contentType="text/html;charset=GBK" language="java" %>
<html>
<head><title>登录失败</title></head>
<body>
登录失败!
</body>
</html>
六、打包并部署到tomcat,运行如下图:
参考资料:
http://struts.apache.org/2.x/docs/simple-setup.html
struts权威指南
本文出自"andyjames"博客,转载请与作者联系!谢谢!
分享到:
相关推荐
struts2-spring-plugin-2.3.15.2.jar ; struts2-json-plugin-2.3.16.3.jarstruts2-spring-plugin-2.3.15.2.jar ; struts2-json-plugin-2.3.16.3.jar
struts2-convention-plugin-2.3.32
Apache Struts 2 示例应用(struts-2.5.28.3-apps.zip),Apache Struts 2.5.28.3是一个优雅的、可扩展的框架,用于创建企业级 Java Web 应用程序。它可以在完整发行版中使用,也可以作为单独的库、源代码、示例和...
struts2-dojo-plugin-2.3.4 jar 日期控件的jar包 需要的自行下载
struts2-dojo-plugin-2.2.1.jar, 直接导入到Struts2项目里即可,注意版本。
struts2-convention-plugin-2.3.24.1
struts2-convention-plugin-2.3.15.1.jar
struts2-jquery-plugin-3.1.0.jar
struts2-jfreechart-plugin-2.1.8.1.jar
默认的struts2-config-browser-plugin包中的ftl文件include标签路径用的相对路径,会找到包内的include文件,将包内ftl里include的路径改成的/开头的全路径。
struts2-convention-plugin-2.1.6.jar
赠送jar包:struts2-json-plugin-2.3.24.jar; 赠送原API文档:struts2-json-plugin-2.3.24-javadoc.jar; 赠送源代码:struts2-json-plugin-2.3.24-sources.jar; 赠送Maven依赖信息文件:struts2-json-plugin-...
struts2-spring-plugin-2.3.31.jar
struts2-spring-plugin-2.0.6.jar
包含struts2-core-2.5.10.1.jar,struts2-jfreechart-plugin-2.5.10.1.jar,struts2-json-plugin-2.5.10.1.jar,struts2-junit-plugin-2.5.10.1.jar,struts2-bean-validation-plugin-2.5.10.1.jar,struts2-cdi-...
最新struts2-spring-plugin-2.3.24.1.jar
JavaEE源代码 struts2-spring-plugin-2.0.11JavaEE源代码 struts2-spring-plugin-2.0.11JavaEE源代码 struts2-spring-plugin-2.0.11JavaEE源代码 struts2-spring-plugin-2.0.11JavaEE源代码 struts2-spring-plugin-...
struts2-dojo-plugin-2.3.15.3.jar.zip
struts2-config-browser-plugin-2.3.24.jar, struts2-core-2.3.24.jar, struts2-jasperreports-plugin-2.3.24.jar, struts2-jfreechart-plugin-2.3.24.jar, struts2-pell-multipart-plugin-2.3.24.jar, struts2-...
struts2-spring-plugin-2.2.1.jarstruts2-spring-plugin-2.2.1.jarstruts2-spring-plugin-2.2.1.jar