Struts2-----2、Struts2的下载和安装

来源:互联网 发布:医学软件大全下载 编辑:程序博客网 时间:2024/04/28 17:45

(1)、为Web应用增加Struts2支持

1.下载Struts2

      Struts2文件结构:

      apps:包含了基于Struts2的示例应用

      docs:包含了Struts2的相关文档,包括Struts2的快速入门、Struts的文档,以及API文档等内容

      lib:包含了Struts2框架的核心类库,以及Struts2的第三方插件类库

      src:包含了Struts2框架的全部源代码


2.将Struts2的lib文件夹下的

   commons-fileupload-1.3.1.jar 、commons-io-2.2.jar、commons-lang3-3.1.jar、freemarker-2.3.19.jar、javassist-3.11.0.GA.jar、ognl-3.0.6.jar、struts2-core-2.3.16.1.jar、xwork-core-2.3.16.1.jar

   必需类库复制到Web应用WEB-INF/lib下(如需在Web应用中使用Struts2的更多特性,则需将相应的JAR复制过去)

 

   若Struts2的lib目录下无javassist-3.7.ga.jar(一个动态编辑、生成Java字节码的类库);可登陆http://www.javassist.org/下载或在Hibernate3.6的lib/bytecode/javassist路径下找到该JAR包

   如需在DOS或Shell窗口下手动编译Struts2相关程序,应将struts2-core-2.2.1.jarxwork-core-2.2.1.jar添加到系统的CLASSPATH环境变量里


             3.编辑Web应用的web.xml配置文件配置Struts2的核心Filter

  <!—定义Struts2的核心Fitler -->  <filter>     <filter-name>struts2</filter-name>     <fitler-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>  </filter>  <!—定义Struts2的核心Fitler拦截所有请求 -->  <filter-mapping>     <filter-name>struts2</filter-name>     <url-pattern>/*</url-pattern>  </filter-mapping>


上面步骤完成了为Web应用添加Struts2支持,但依然没有使用Struts2功能,使用Struts2功能至少需要一个struts.xml配置文件,该配置文件默认放在Web应用的类加载路径下


(2)、简单登陆实现

              1.配置核心Filter (web.xml)

<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">      <filter>       <filter-name>struts2</filter-name>       <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>   </filter>   <!-- 定义Struts2的核心Filter拦截所有请求 -->   <filter-mapping>       <filter-name>struts2</filter-name>       <url-pattern>/*</url-pattern>   </filter-mapping></web-app>

               2.编写Action

package org.app.action;public class LoginAction extends ActionSupport {private String username;private String password; @Overridepublic String execute() throws Exception {    if ("xxx".equals(username) && "123".equals(password)) {        return SUCCESS;    } else {        return ERROR;    }}// username、password的getter、setter方法}

                3.配置Action(struts.xml)
<?xml version="1.0" encoding="GBK"?><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN" "http://struts.apache.org/dtds/struts-2.1.7.dtd"><struts><package name="demo1" extends="struts-default">    <action name="loginAction" class="<span style="font-family:Arial, Helvetica, sans-serif;">org.app.action.LoginAction</span>">        <result name="success">/welcome.jsp</result>        <result name="error">/error.jsp</result>    </action></package></struts>
                4.编写视图资源

login.jsp<%@ page language="java" contentType="text/html; charset=gb2312" pageEncoding="gb2312" %><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><body><form action="loginAction.action">    user: <input type="text" name="username"><br>password: <input type="password" name="password"><br>          <input type="submit" value="submit"> </form></body></html> welcome.jsp<%@ page language="java" contentType="text/html; charset=ISO-8859-1"%><html><body>welcome!</body></html> error.jsp<%@ page language="java" contentType="text/html; charset=ISO-8859-1"%><html><body>error!</body></html>

 

0 0
原创粉丝点击