国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

淺談Struts2驗證框架及用戶注冊

開發 后端
本文將對Struts2驗證框架如何用戶注冊進行講解,其中Struts2比起Struts1的驗證框架來更加方便。

Struts2驗證比起Struts1驗證框架來,好用多了,使程序更加清晰易讀,充分利用了配置文件的作用,也算是解耦的表現吧.

核心代碼如下:

1.用戶注冊頁面register.jsp

  

    < ?xml:namespace prefix = s />< s:fielderror>< /s:fielderror>
    < /FONT>
   

    < !-- 讀取顯示提示信息 -->
    < TABLE>
    
     
       用戶名:
     
     
      
     
    
    
     
       密碼:
     
     
       < INPUT type=password name=user.password>
     
    

    
     
       確認密碼:
     
     
       < INPUT type=password name=user.rePassword>
     
    

 

    


     
       年齡:
     
     
       < INPUT name=user.age>
     
    
    
     
       生日:
     
     
       < INPUT name=user.birthday>
     
    
    
     
      
     
    
   


  

2.注冊成功歡迎頁面welcome.jsp

congratulations!${user.userName} 

3.注冊處理action RegisterAction

package org.kingtoon.action;

import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.ServletActionContext;
import org.kingtoon.bean.User;
import com.opensymphony.xwork2.ActionSupport;

public class RegisterAction extends ActionSupport {

 

private User user;
@Override
public String execute() throws Exception {
   if(!(user.getPassword().equals(user.getRePassword()))){
      this.addFieldError("password", "請輸入相同的密碼");
      return "input";
   }
   else
   {
    HttpServletRequest request = ServletActionContext.getRequest ();
    request.setAttribute("user", user);
    return SUCCESS;
   }
 
}
public User getUser() {
   return user;
}
public void setUser(User user) {
   this.user = user;
}
}

4. 用戶Bean User.java

package org.kingtoon.bean;

import java.util.Date;

public class User {

private String userName;
private String password;
private String rePassword;
private Integer age;
private Date birthday;
public Integer getAge() {
   return age;
}
public void setAge(Integer age) {
   this.age = age;
}
public Date getBirthday() {
   return birthday;
}
public void setBirthday(Date birthday) {
   this.birthday = birthday;
}
public String getPassword() {
   return password;
}
public void setPassword(String password) {
   this.password = password;
}
public String getRePassword() {
   return rePassword;
}
public void setRePassword(String rePassword) {
   this.rePassword = rePassword;
}
public String getUserName() {
   return userName;
}
public void setUserName(String userName) {
   this.userName = userName;
}

}

5.配置驗證文件RegisterAction-validation.xml

< VALIDATORS>

   < !-- 驗證字符串不能為空 -->
   < FIELD-VALIDATOR type="requiredstring">
    < !-- 去空格 -->
    < PARAM name="trim">true
    < !-- 錯誤提示信息 -->
    < MESSAGE>用戶名不能為空
   < /FIELD-VALIDATOR>
 
   < !-- 驗證字符串長度 -->
   < FIELD-VALIDATOR type="stringlength">
    < PARAM name="minLength">2< /PARAM>
    20
    < MESSAGE>用戶名長度應在2到18個字符間
  


   < FIELD-VALIDATOR type="requiredstring">
    true
    < MESSAGE>密碼不能為空
   < /FIELD-VALIDATOR>
 
   < FIELD-VALIDATOR type="stringlength">
    < PARAM name="minLength">6< /PARAM>
    18
    密碼長度應在6到18個字符之間< /MESSAGE>
   < /FIELD-VALIDATOR>
< /FIELD>


   < FIELD-VALIDATOR type="int">
    < PARAM name="min">1
    < PARAM name="max">150
    < MESSAGE>年齡應在1到150之間
   < /FIELD-VALIDATOR>

< !-- 驗證字符串為日期類型 -->

   < FIELD-VALIDATOR type="date">
    < PARAM name="min">1900-01-01
    < PARAM name="max">2008-10-16< /PARAM>
    < MESSAGE>出生日期應在1900-01-01到2008-10-16< /MESSAGE>
  
< /FIELD>
< /VALIDATORS>

6.struts2框架默認加載的配置文件struts.xml

< STRUTS>
    < CONSTANT name="struts.custom.i18n.resources" value="messageResource">< /CONSTANT>
  
   
   
       < RESULT name="success">/welcome.jsp< /RESULT>
       < RESULT name="input">/register.jsp< /RESULT>
    < /ACTION>
    < /PACKAGE>
< /STRUTS>

 

7.web服務器啟動時加載Struts 配置文件 web.xml

< ?XML:NAMESPACE PREFIX = [default] < web-app 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>struts-cleanup
  
    org.apache.struts2.dispatcher.ActionContextCleanUp
  

< filter>
   < filter-name>struts2
  
    org.apache.struts2.dispatcher.FilterDispatcher
  

< filter-mapping>
   < filter-name>struts-cleanup< /filter-name>
   /*

< filter-mapping>
   < filter-name>struts2< /filter-name>
   < url-pattern>/*< /url-pattern>

< welcome-file-list>
   < welcome-file>register.jsp< /welcome-file>
< /welcome-file-list>
< /web-app>

至此,完畢.不過需要注意:

1.配置Struts2驗證xml文檔的名字有講究:格式為:Action名字-validation.xml;

2.驗證文檔里的中的type類型要和VO中的User屬性類型一致,否則會報類型轉換錯誤

【編輯推薦】

  1. 在Eclipse中開發struts應用程序
  2. 手把手教你在Eclipse中配置開發Struts
  3. Eclipse下開發struts完整解決亂碼問題
  4. Struts相關背景介紹
  5. 使用Easy Struts for Eclipse開發Struts
責任編輯:張燕妮 來源: 新浪博客
相關推薦

2009-06-25 15:37:12

Struts2教程Validation框

2011-03-30 09:03:57

struts2

2009-02-04 13:13:03

2009-06-04 09:41:50

struts2上傳文件

2009-06-04 11:08:32

struts2 val框架

2009-06-25 15:33:12

Struts2教程使用validate驗證數據

2009-06-05 10:48:01

struts2 ite功能

2009-06-08 16:44:00

Struts2文件上傳

2009-07-29 09:54:34

struts2和str

2009-02-04 12:00:08

2012-08-30 09:48:02

Struts2Java

2009-06-04 08:01:25

Struts2攔截器原理

2009-06-04 08:45:01

Struts2下載

2009-06-25 15:11:28

Struts2教程Struts2程序

2009-02-04 10:51:07

2009-06-08 16:44:00

2011-06-28 09:14:23

Struts 2WebWork

2009-06-05 10:43:29

struts2 checheckbox實例

2011-11-25 13:01:16

JavaMVCstruts2

2009-07-03 09:35:57

Struts2 JSP
點贊
收藏

51CTO技術棧公眾號

jizzjizzjizz亚洲日本| 先锋欧美三级| 在线不卡免费欧美| 亚洲视频国产| 亚洲精品免费在线视频| 蜜桃一区二区三区在线| 在线观看完整版免费| 日韩av综合网站| 欧美久久综合| 一二三四社区在线视频6| 爱福利视频一区| 国模大尺度一区二区三区| 国产 日韩 欧美在线| 亚洲乱码精品一二三四区日韩在线| 手机av在线播放| 99久久精品免费看国产四区| 亚洲天堂免费看| 免费影视亚洲| 国产欧美在线一区二区| 玉米视频成人免费看| 韩日一区二区三区| 免费在线观看亚洲视频| 欧美日韩国产成人| 2021久久国产精品不只是精品| 蜜桃av在线播放| 青草视频在线观看视频| 日韩中文字幕视频在线观看| 美女视频一区在线观看| 一二三四视频在线中文| 欧美大香线蕉线伊人久久| 国产精品久久久久蜜臀| 国产69精品久久久久99| 奇米影视在线99精品| 免费影视亚洲| 日韩精品成人一区二区在线观看| 亚洲人成毛片在线播放| 精品国产一区二区三区性色av | 日韩欧美一中文字暮专区| 99热这里只有精品免费| 色综合天天综合网天天看片| 欧美视频三区| 男女污污的视频| 国产精品成久久久久三级| 一区二区三区不卡在线观看| 深夜成人影院| 夜夜嗨aⅴ免费视频| 亚洲91av视频| 日韩欧美一二三区| 久久精品国产第一区二区三区| 亚洲专区**| 成视频年人免费看黄网站| 欧美日韩精品不卡| 日韩免费不卡av| 欧美午夜丰满在线18影院| 精久久久久久久久久久| av在线不卡免费| 色爽爽爽爽爽爽爽爽| 国产精品久久久久久久久免费| 亚洲天堂免费看| 9人人澡人人爽人人精品| 性欧美videos另类喷潮| 成年人视频免费在线播放| 欧美性受xxxx黑人猛交88| 4p变态网欧美系列| 国产午夜精品免费一区二区三区| 一区二区三区日韩在线观看| 99久久精品一区二区| 国内黄色精品| 日本片在线观看| 一女二男3p波多野结衣| 成人一区二区av| 亚洲一区影院| 亚洲一区二区免费视频软件合集| 国产精品美女www爽爽爽视频| 亚洲人成在线播放| 亚洲高清免费观看高清完整版| 亚洲综合在线第一页| 亚洲国产国产亚洲一二三| 亚洲素人在线| 国产精品一线| caoporn视频在线| 欧美边添边摸边做边爱免费| 在线毛片网站| 在线中文字幕视频观看| 91这里只有精品| 黄色网页在线免费看| 免费网站成人| 国产高清中文字幕在线| 在线看小视频| 色欲av无码一区二区人妻| 91美女片黄在线观| 欧美中文字幕精品| 国产成人精彩在线视频九色| 久久久久久亚洲精品中文字幕| 97精品国产91久久久久久| 亚洲精品视频在线播放| 欧美日韩在线免费观看| 欧美性猛交xxxx黑人交| 久久一日本道色综合| 91亚洲国产成人精品一区二区三 | 亚洲ai欧洲av| 一本色道无码道dvd在线观看| 久草福利资源站| 国产网站免费在线观看| 日韩精品第一页| 精品少妇人妻av免费久久洗澡| 国产精品igao| 强开小嫩苞一区二区三区网站 | 亚洲成a人片在线不卡一二三区| 一区二区三区中文字幕| 在线亚洲一区二区| 欧美日韩国产高清一区二区三区 | 久久中文资源| 亚洲精品黄色| 久久婷婷色综合| 99国产精品久久久久久久久久久| 成人福利视频网站| 成人免费av网站| 一本在线高清不卡dvd| 日韩欧美综合在线视频| 亚洲激情av在线| 亚洲一区二区三区四区在线| 亚洲精品一区二区三区99| 日韩精品专区在线影院重磅| 久久91精品国产91久久久| 日本一区二区三区精品视频| 亚洲男男gay视频| 成人免费在线电影| 情侣黄网站免费看| 四虎精品欧美一区二区免费| 四虎影院一区二区三区| 亚洲电影小说图| 草草视频在线| 一区二区三区成人精品| 一区二区三区日韩欧美| 欧美日韩卡一卡二| 国产一区在线播放| 黄页免费观看| 免费的黄网站在线观看| 福利在线导航136| 欧美精品国产| 久久综合久久综合亚洲| 日韩av在线网页| 欧美日韩免费观看一区| 国产在线视频网站| 一区二区日韩欧美| 韩国精品久久久| 一区二区三区四区在线播放| 不卡中文字幕av| 欧美黄色性生活| 都市激情亚洲欧美| 国产手机视频一区二区| 欧美日韩综合色| 国产精品久久久久久久久粉嫩av| 8848hh四虎| 91大神精品| 国产精品亚洲专一区二区三区| 亚洲国产精品推荐| 99国产在线| www.久草| 99久久99热这里只有精品| 91国偷自产一区二区三区观看| 国内外成人免费激情在线视频网站 | 精品视频在线一区| 久久久蜜桃一区二区人| 俺去啦;欧美日韩| 免费观看国产视频在线| 青青国产在线| 日韩电影av| 99精品综合| 国产精品久99| 精品美女国产在线| 欧美三级日本三级少妇99| 久久精品久久久久久国产 免费| 欧美巨乳在线观看| 波多野结衣一区二区三区在线观看| 成人区一区二区| 伊人网在线观看| 日韩男人天堂| 成人97精品毛片免费看| 亚洲精品国产无天堂网2021| av蓝导航精品导航| 成av人片在线观看www| 国产精品女主播av| 国产免费亚洲高清| 中文在线最新版地址| 久久久久久一二三区| 2020久久国产精品| 久久www人成免费看片中文| 91亚洲无吗| 97aⅴ精品视频一二三区| 精品小视频在线| 美女的诞生在线观看高清免费完整版中文| 亚洲视频成人| 国产成人午夜视频网址| 三妻四妾的电影电视剧在线观看| 精品久久久久久久久久ntr影视| 国产91在线免费| 免费观看30秒视频久久| av成人观看|