greatjone

          BlogJava 聯(lián)系 聚合 管理
            7 Posts :: 24 Stories :: 3 Comments :: 0 Trackbacks

          開發(fā)步驟:
          1.導(dǎo)入jar包,配置相關(guān)文件.
               可以先配置web.xml文件,如下:

           1<?xml version="1.0" encoding="UTF-8"?>
           2<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
           3  <servlet>
           4      <servlet-name>actionServlet</servlet-name>
           5      <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
           6      <init-param>
           7          <param-name>config</param-name>
           8          <param-value>/WEB-INF/struts-config.xml</param-value>
           9      </init-param>
          10      <load-on-startup>0</load-on-startup>
          11  </servlet>
          12  <servlet-mapping>
          13      <servlet-name>actionServlet</servlet-name>
          14      <url-pattern>*.do</url-pattern>
          15  </servlet-mapping>
          16</web-app>

                在WEB-INF下建立一個(gè)struts-config.xml文件,文件內(nèi)容暫且如下:

          1<?xml version="1.0" encoding="gbk" ?>
          2
          3<!DOCTYPE struts-config PUBLIC
          4          "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
          5          "http://struts.apache.org/dtds/struts-config_1_3.dtd">
          6<struts-config>
          7</struts-config>


          2.書寫jsp頁面:login.jsp,success.jsp,error.jsp
              login.jsp:

           1<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
           2    pageEncoding="ISO-8859-1"%>
           3<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
           4<html>
           5<head>
           6<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
           7<title>Insert title here</title>
           8</head>
           9<body>
          10    <form action="login.do" method="post">
          11        username:<input type="text" name="username" /> <br/>
          12        password:<input type="password" name="password" /> <br/>
          13        <input type="submit" value="submit"/> 
          14    </form>
          15</body>
          16</html>

              success.jsp:

          1<body>
          2    <h1>login success !</h1>
          3    <h2>username:${requestScope.username}</h2>
          4    <h2>password:${requestScope.password}</h2>
          5</body>

              error.jsp:

          1<body>
          2    <h1><font color="red">login failed !</font></h1>
          3</body>


          3.編寫一個(gè)ActionForm的類,用來暫存請求傳給服務(wù)端的數(shù)據(jù)。

           1package per.struts1.web;
           2import org.apache.struts.action.ActionForm;
           3public class LoginActionForm extends ActionForm {
           4    private String username;
           5    private String password;
           6    public String getUsername() {
           7        return username;
           8    }

           9    public void setUsername(String username) {
          10        System.out.println(username);
          11        this.username = username;
          12    }

          13    public String getPassword() {
          14        return password;
          15    }

          16    public void setPassword(String password) {
          17        System.out.println(password);
          18        this.password = password;
          19    }
              
          20}

          21


          4.編寫一個(gè)Action類,并覆蓋其execute()方法

           1package per.struts1.web;
           2import javax.servlet.http.HttpServletRequest;
           3import javax.servlet.http.HttpServletResponse;
           4import org.apache.struts.action.Action;
           5import org.apache.struts.action.ActionForm;
           6import org.apache.struts.action.ActionForward;
           7import org.apache.struts.action.ActionMapping;
           8public class LoginAction extends Action {
           9    @Override
          10    public ActionForward execute(ActionMapping mapping, ActionForm form,
          11            HttpServletRequest request, HttpServletResponse response)
          12            throws Exception {
          13        LoginActionForm laf = (LoginActionForm)form;
          14        String username = laf.getUsername();
          15        String password = laf.getPassword();
          16        System.out.println(username+":"+password);
          17        if("jone".equals(username)&&"jone".equals(password)){
          18            request.setAttribute("username", username);
          19            request.setAttribute("password", password);
          20            return mapping.findForward("success");
          21        }
          else{
          22            return mapping.findForward("error");
          23        }

          24    }
              
          25}

          26


          5.對ActionForm類及Action類在struts-config.xml文件中進(jìn)行配置

           1<?xml version="1.0" encoding="gbk" ?>
           2<!DOCTYPE struts-config PUBLIC
           3          "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
           4          "http://struts.apache.org/dtds/struts-config_1_3.dtd">
           5<struts-config>
           6    <form-beans>
           7        <form-bean name="loginForm" type="per.struts1.web.LoginActionForm" >
           8        <!-- 為暫存數(shù)據(jù)的ActionForm類進(jìn)行配置,name是隨意取得,type為類的全限定名 -->
           9        </form-bean>
          10    </form-beans>    
          11        
          12    <action-mappings>
          13        <action path="/login" type="per.struts1.web.LoginAction" name="loginForm" scope="request" >
          14        <!-- 為Action類進(jìn)行配置,-條action標(biāo)簽對應(yīng)一個(gè)ActionMapping類,path為訪問路徑,不含.do,
          15            type為類的全限定名,name指的是上面已經(jīng)配置的ActionForm的name值,
          16            scope為所創(chuàng)建的ActionForm指明一個(gè)作用域。            
          17         -->
          18            <forward name="success" path="/success.jsp"></forward>
          19            <!-- forward標(biāo)簽是用于頁面跳轉(zhuǎn)的,path即為跳轉(zhuǎn)路徑,而name起一個(gè)標(biāo)識作用 -->
          20            <forward name="error" path="/error.jsp"></forward>
          21        </action>
          22    </action-mappings>
          23</struts-config>
          24

          至此可以進(jìn)行運(yùn)行測試了。只有當(dāng)username與password都為"jone"的時(shí)候,才會跳到success.jsp頁面。
             

          posted on 2010-10-13 17:57 jone 閱讀(1425) 評論(2)  編輯  收藏 所屬分類: struts2

          Feedback

          # re: Struts1的一個(gè)簡單示例:用戶登陸 2013-05-13 16:40 省市
          日發(fā)放  回復(fù)  更多評論
            

          # re: Struts1的一個(gè)簡單示例:用戶登陸[未登錄] 2013-06-03 23:21 張強(qiáng)
          這是一個(gè)比較好的范例  回復(fù)  更多評論
            


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          主站蜘蛛池模板: 晋江市| 安陆市| 东乡| 二连浩特市| 西乡县| 奎屯市| 吉隆县| 利津县| 华容县| 临夏县| 巴林右旗| 昆明市| 安徽省| 辉县市| 屯昌县| 印江| 昌黎县| 太原市| 阜宁县| 扎赉特旗| 红原县| 绵阳市| 巫山县| 大悟县| 拜泉县| 北京市| 邯郸县| 刚察县| 马关县| 新化县| 宁海县| 子洲县| 太和县| 霞浦县| 潞西市| 东丰县| 贵阳市| 临潭县| 高碑店市| 商南县| 探索|