javan

i like java
随笔 - 0, 文章 - 28, 评论 - 2, 引用 - 0
数据加载中……

总结Struts1.2 Validator验证框架(原创) 代码经测试

struts配置文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">

<struts-config>
    <!-- 定义数据源 -->
    <data-sources>
        <data-source type="org.apache.commons.dbcp.BasicDataSource">
            <set-property
                property="driverClassName"
                value="com.mysql.jdbc.Driver"/>
            <set-property
                property="url"
                value="jdbc:mysql://localhost:3306/test" />
                
            <set-property value="root" property="username"/>
            <set-property value="root123" property="password"/>
            
        </data-source>
    </data-sources>      
    
    <form-beans>
        <form-bean name="loginForm" type="com.hsia.form.LoginForm"></form-bean>
    </form-beans>
    <global-exceptions/>   <!--定义全局异常-->
    <global-forwards/>       <!--定义全局转发-->
    <action-mappings>
    <action
        name="loginForm"
        attribute="lgForm"
        path="/login"
        scope="request"
        input="/index.jsp"
        type="com.hsia.action.LoginAction">
        <forward name="success" path="/jsp/login.jsp"></forward>
        <forward name="error" path="/jsp/error.jsp"></forward>
    </action>
    </action-mappings>
    
    <message-resources parameter="com.validator.struts.ApplicationResource"></message-resources>
    
    <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
        <set-property property="pathnames"
                    value="/WEB-INF/validator-rules.xml,/WEB-INF/validator.xml"/>
  </plug-in>

</struts-config>

validator.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE form-validation PUBLIC
          "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.1.3//EN"
          "http://jakarta.apache.org/commons/dtds/validator_1_1_3.dtd">
 
<form-validation>
       <formset>
      <form name="lgForm">
     
          <field property="name" depends="required,minlength">
              <arg0 key="name"/>
              <arg1 key="${var:minlength}" resource="false" />
              <var>               
                  <var-name>minlength</var-name>
                  <var-value>4</var-value>
            </var>
          </field>
         
         <field
               property="password"
               depends="required,minlength,maxlength">
            <arg0 key="password"/>           
            <arg1 key="${var:maxlength}" resource="false" />
            <arg2 key="${var:minlength}" resource="false" />
            <var>
                  <var-name>maxlength</var-name>
                  <var-value>6</var-value>
            </var>
            <var>               
                  <var-name>minlength</var-name>
                  <var-value>1</var-value>
            </var>
       </field>    
      
            
      </form>           
   </formset>      
</form-validation>

validator-rules.xml文件是在strut1.2.9-lib中找到的。对应于每一个版本的struts都有该文件,一般不去修改其中的代码

资源文件applicationResource.properties
errors.required={0} is required.
errors.minlength={0} can not be less than {1} characters.
errors.maxlength={0} can not be greater than {1} characters.
name=name
password=password
login=login

# Errors
errors.header=<h3><font color"="red">Validation "u9519"u8BEF"uFF01"uFF01"uFF01</font>



jsp文件:

Java代码
  1. <%@ page language="java" contentType="text/html; charset=UTF-8"  
  2.     pageEncoding="UTF-8"%>  
  3. <%@taglib prefix="bean" uri="/WEB-INF/struts-bean.tld"%>  
  4. <%@taglib prefix="html" uri="/WEB-INF/struts-html.tld" %>  
  5. <%@taglib prefix="logic" uri="/WEB-INF/struts-logic.tld" %>  
  6.   
  7.   
  8. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
  9. <html>  
  10. <head>  
  11. <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">  
  12. <title>Insert title here</title>  
  13.   
  14. <script type="text/javascript">  
  15.   
  16.     function sm()  
  17.     {  
  18.         alert("郁闷!!");    
  19.     }  
  20.   
  21. </script>  
  22.   
  23. </head>  
  24.       
  25. <!-- 下面的标签用于输出出错信息 -->    
  26.  <html:errors/>   
  27. <body>  
  28.   
  29.   
  30. <html:form action="login.do" method="post">  
  31.     <table border="0">  
  32.   
  33.         <tr>  
  34.   
  35.             <td>name:</td>  
  36.   
  37.             <td><html:text property="name"></html:text></td>  
  38.   
  39.         </tr>  
  40.   
  41.         <tr>  
  42.   
  43.             <td><bean:message key="password"/>:</td>  
  44.   
  45.             <td><html:text property="password"></html:text></td>  
  46.   
  47.         </tr>  
  48.   
  49.         <tr>  
  50.               
  51.             <td colspan="2" align="center"><input type="button" value="郁闷" onclick="sm();"/></td>  
  52.             <td colspan="2" align="center"><html:submit><bean:message key="login"/></html:submit></td>  
  53.         </tr>  
  54.   
  55.     </table>  
  56.   
  57. </html:form>  
  58. </body>  
  59. </html>  

posted on 2009-05-22 11:17 whl 阅读(576) 评论(1)  编辑  收藏

评论

# re: 总结Struts1.2 Validator验证框架(原创) 代码经测试[未登录]  回复  更多评论   

<form name="lgForm">

<form-bean name="loginForm" type="com.hsia.form.LoginForm"></form-bean>

这也叫代码经过验证?
2009-08-14 10:54 | Lee

只有注册用户登录后才能发表评论。


网站导航: