S2SH配置过程 详解(2)

3 配置Struts2.0

3.1 基础配置

 

       1)引入Struts必需的五个jar包。下载struts-2.1.6-all.zip解压后,struts-2.1.6/lib目录下是struts所有的相关jar包。这么多jar包并不是struts必须得,使用struts只需要把下面五个引入即可,以后用到什么jar包,再引入。
 

²        Commons-logging-1.0.4.jar

²        Freemarker-2.3.13.jar

²        Ognl-2.6.11.jar

²        Struts2-core-2.1.6.jar

²        Xwork-2.1.2.jar

 

2)修改WEB-INF下的web.xml文件,增加struts2的配置。增加代码如下:这些配置代码对于struts2是不变的,直接复制到web.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 >


 

3)添加struts配置文件。 WEB-INF/classes目录下,新建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 >
</ struts >


 

好了,struts基本配置完毕,是不是很简单?

现在把工程发布到tomcat上去测试一下,在工程名字上点击右键,选择MyEclipseàAdd and Remove project Deployments,在打开的窗口里,点击Add,选择我们之前配置好的tomcat6服务器,如下图:


 

发布好了,启动tomcat,如果启动无异常,则说明配置成功。

注意:可能会出现struts-default.xml相关异常,根据提示引入相关jar包。我测试的时候是缺少fileupload相关jar包,于是引入了commons-fileupload-1.2.1.jar

 

3.2 配置一个Action

下面开始配置一个Action吧,以用户登录为例:

1)首先新建一个登陆页面login.jsp,代码如下:

<% @ page language="java" import="java.util.*" pageEncoding="UTF-8" %>
<% @ taglib prefix="s" uri="/struts-tags"  %>
<! 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" >     
  
</ head >
  
< body >
   
< s:form  name ="form1"  action ="login"   >
       
< s:textfield   name ="username"  label ="username"   ></ s:textfield >
       
< s:password  name ="password"  label ="password"   ></ s:password >
       
< s:submit  label ="submit" ></ s:submit >
   
</ s:form >
   
< s:actionerror />
  
</ body >
</ html >


 

2)在我们已经建好的struts.xml中来配置登录的action。这里定义登录action的名字为login,配置代码如下:

<? 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 ="struts2"  extends ="struts-default" >
        
< action  name ="login"  class ="test.LoginAction" >
            
< result  name ="success"  type ="redirect" > index.jsp </ result >
            
< result  name ="input" > login.jsp </ result >
            
< result  name ="error" > login.jsp </ result >
        
</ action >
    
</ package >
</ struts >

 

3)下面就来编写具体的action类了。代码如下:

 

 1 package  test;
 2 import  com.opensymphony.xwork2.ActionSupport;
 3 public   class  LoginAction  extends  ActionSupport  {
 4    public String username;
 5    public String password;
 6    public String execute(){
 7        if(!username.equals("admin")){
 8            super.addFieldError("username""用户名错误!");
 9            return ERROR;
10        }

11        if(!password.equals("001")){
12            super.addFieldError("password""密码错误!");
13            return ERROR;
14        }

15        return SUCCESS;
16    }

17    public void validate(){
18        if(username==null||username.length()==0){
19            super.addActionError("用户名不能为空");
20        }

21        if(password==null||password.length()==0){
22            super.addActionError("密码不能为空");
23        }

24    }

25}

26


 

4)好了,一个Action就创建完成了,重启tomcat测试一下吧。如果第一次使用struts,你可能你明白上面的代码,以后慢慢学习即可,现在先来看一下效果吧。

打开登录页面http://localhost:8080/test/login.jsp,输入正确或错误的用户名和密码,看看有什么提示。

你可能感兴趣的:(S2SH配置过程 详解(2))