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

(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;
 
@Override
public 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>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值