我的漫漫程序之旅

          專注于JavaWeb開發
          隨筆 - 39, 文章 - 310, 評論 - 411, 引用 - 0
          數據加載中……

          用Struts2中的ActionSupport中的validate方法進行表單驗證

          在你的的web中加入struts2的jar包支持.
          第一步:web.xml:
          <?xml version="1.0" encoding="UTF-8"?>
          <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
              xmlns:xsi
          ="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation
          ="http://java.sun.com/xml/ns/j2ee 
              http://java.sun.com/xml/ns/j2ee/web-app_2_4.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>

          第二步:在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>
              
          <package name="com" extends="struts-default">
                  
          <action name="login" class="com.LoginAction">
                      
          <result name="input">/index.jsp</result>
                      
          <result name="success">/ok.jsp</result>
                  
          </action>
              
          </package>
          </struts>    

           

          第三步:建立兩個jsp
          1.index.jsp:

          <%@page language="java" pageEncoding="GB18030"%>
          <%@taglib prefix="s" uri="/struts-tags"%>
          <html>
              
          <head>
                  
          <title>My JSP 'index.jsp' starting page</title>
              
          </head>
              
          <body>
                  
          <s:form action="login" method="post">
                      
          <s:textfield name="username" label="User Name:"/><br />
                      
          <s:password name="password" label="Password:"/><br />
                      
          <s:submit value="Submit" />
                  
          </s:form>
              
          </body>
          </html>

          2.ok.jsp:
          <%@page language="java" pageEncoding="GB18030"%>
          <%@taglib prefix="s" uri="/struts-tags"%>
          <html>
              
          <head>
                  
          <title>ok</title>
              
          </head>
              
          <body>
              UserName:
          <s:property value="username"/>
              Password:
          <s:property value="password"/>
              
          </body>
          </html>

          第四步:寫出Action
          LoginAction:
          package com;

          import com.opensymphony.xwork2.ActionSupport;

          public class LoginAction extends ActionSupport
          {
              
          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;
              }


              @Override
              
          public String execute() throws Exception
              
          {
                  
          if("admin".equals(this.getUsername().trim()) && "admin".equals(this.getPassword().trim()))
                  
          {
                      
          return SUCCESS;
                  }

                  
          else
                  
          {
                      
          this.addFieldError("username""UserName or password is wrong!");
                      
          return INPUT;
                  }

              }


              @Override
              
          public void validate()
              
          {
                  
          if(null == this.getUsername() || "".equals(this.getUsername().trim()))
                  
          {
                      
          //第一個參數表示表單中的textfield的name,第二參數是提示信息
                      this.addFieldError("username""UserName is required!");
                  }

                  
          if(null == this.getPassword() || "".equals(this.getPassword().trim()))
                  
          {
                      
          this.addFieldError("password""Password is required!");
                  }

              }


              
          private static final long serialVersionUID = 4771028725069625041L;

          }


          好了,全部完成.源碼可在網盤下載.
          這種方法省去了配置xxx-validtion.xml文件的麻煩,對于代碼編寫來說也比較簡單.


          posted on 2007-11-24 17:19 々上善若水々 閱讀(9173) 評論(2)  編輯  收藏 所屬分類: Struts2

          評論

          # re: 用Struts2中的ActionSupport中的validate方法進行表單驗證  回復  更多評論   

          很受用!不錯!
          2008-08-07 17:51 | amy

          # re: 用Struts2中的ActionSupport中的validate方法進行表單驗證  回復  更多評論   

          dfgdggfgfgdfgdf
          2014-03-19 10:24 | fdgdf
          主站蜘蛛池模板: 海兴县| 光泽县| 拜泉县| 平武县| 东乡| 长葛市| 资溪县| 潼关县| 交城县| 石城县| 邻水| 石林| 通化市| 三门县| 厦门市| 南平市| 沙洋县| 绵阳市| 卢氏县| 松原市| 陇南市| 通海县| 辰溪县| 苏尼特左旗| 荥阳市| 日照市| 寻乌县| 前郭尔| 淳化县| 武穴市| 工布江达县| 曲阳县| 汉寿县| 行唐县| 余姚市| 北流市| 洪雅县| 麦盖提县| 阿拉善左旗| 韶关市| 临澧县|