Struts2 入门学习
最近似乎没事做,无聊的很….. 我这个人感觉挺怪的,有事做感觉还好,没事做感觉就是不舒服。是在没办法N久前听说许多企业都在用Struts2 了,今天准备学学,希望对以后有所帮助……
不管怎么样,先入门,打通经脉,以后再着重细节,主要内容如下:
1. Struts2 的介绍
2. 下载
3. 环境搭建、创建项目
3.1创建Web工程Struts2Demo,引入相应的jar文件,最基本的需要如下几个:
3.2 创建一个Login.java类
3.3 创建三个jsp文件
3.3.1 登陆页面index_login.jsp
3.3.2 登陆成功页面success.jsp
3.3.3 登陆失败页面fail.jsp
3.4 在src目录上创建struts.xml文件
3.5 修改web.xml,增加一个过滤器(在Struts1中是新加一个Servlet)
4. 测试地址
5. 疑问
6. 此demo中的下载地址
1. Struts2 的介绍
虽然Struts2号称是一个全新的框架,但这仅仅是相对Struts 1而言。Struts 2 与Struts 1相比,确实有很多革命性的改进,但它并不是新发布的新框架,而是在另一个赫赫有名的框架:WebWork基础上发展起来的。从某种程度上来讲,Struts2没有继承Struts 1的血统,而是继承WebWork的血统。或者说,WebWork衍生出了Struts2,而不是Struts 1衍生了Struts2.因为Struts2是WebWork的升级,而不是一个全新的框架,因此稳定性、性能等各方面都有很好的保证:而且吸收了Struts 1和WebWork两者的优势,因此,是一个非常值得期待的框架。
Apache Struts2是一个优雅的,可扩展的JAVA EE web框架。框架设计的目标贯穿整个开发周期,从开发到发布,包括维护的整个过程。
Apache Struts 2即是之前大家所熟知的WebWork 2.在经历了几年的各自发展后,WebWork和Struts社区决定合二为一,也即是Struts 2。
2. 下载
http://struts.apache.org/download.cgi#struts2014
3. 环境搭建、创建项目
3.1创建Web工程Struts2Demo,引入相应的jar文件,最基本的需要如下几个:
ü xwork-core-2.1.6.jar
ü struts2-core-2.1.8.1.jar
ü ognl-2.7.3.jar
ü freemarker-2.3.15.jar
ü commons-logging-1.0.4.jar
ü commons-fileupload-1.2.1.jar
3.2 创建一个Login.java类
package com.zsw.action;
public class Login {
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(){ if(userName.equals("zsw") && password.equals("123")){ return "success"; }else{ return "fail"; } } } |
3.3 创建三个jsp文件
3.3.1 登陆页面index_login.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>登陆页面</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> </head> <body> <form action="login.action"> <hr> <div style="text-align:center">登陆界面</div> 用户名:<input name="userName" /> <br/> 密 码:<input type="password" name="password" /><br/> <input type="submit" name="submit" /> <input type="reset" /> </form> </body> </html> |
3.3.2 登陆成功页面success.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>成功页面</title> </head> <body> 登陆成功! <br> </body> </html>
|
3.3.3 登陆失败页面fail.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>失败页面</title> </head> <body> 登录失败!!!<br> <a href="javascript:history.go(-1)" >重新登陆</a> </body> </html>
|
3.4 在src目录上创建struts.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> <include file="struts-default.xml"></include> <package name="com.bshi.struts2.action" extends="struts-default"> <action name="HelloWorld" class="com.zsw.action.HelloWorldAction"> <!-- 重定向 request参数无效 <result type="redirect">/jsp/helloWorld.jsp</result> --> <!-- WEB-INF 外面 <result>/jsp/helloWorld.jsp</result> --> <result>/WEB-INF/jsp/helloWorld.jsp</result> </action>
<action name="login" class="com.zsw.action.Login"> <result name="success">/WEB-INF/jsp/success.jsp</result> <result name="fail">/WEB-INF/jsp/fail.jsp</result> </action> </package> </struts>
|
3.5 修改web.xml,增加一个过滤器(在Struts1中是新加一个Servlet)
<?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"> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
<welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
|
4. 测试地址
http://localhost:8080/Struts2Demo/index_login.jsp
5. 疑问
也是刚接触Struts2,还请知道的帮我解决解决哈… …
Action标签中的类一定要继承ActionSupport类吗,为什么?
6. 此demo中的下载地址
http://download.csdn.net/source/2567380