struts2資料校驗

2021-08-21 11:56:27 字數 2160 閱讀 8094

當前端通過form表單或者js**將資料提交給後台之後,我們需要對資料進行校驗。

一.通過**方式驗證

在使用**的方式進行資料校驗時,我們只需要在需要資料校驗的action中重寫 validate() 方法,在方法內部寫入校驗的**即可。***會自動為action中的每個方法增加該驗證。如果需要對action中特定的某個方法增加資料校驗,則資料校驗方法的方法需按:validate+方法名 格式命名,**如下。

package com.xalo.action;

import com.opensymphony.xwork2.actionsupport;

/* * 如果action中要使用struts2提供的資料校驗***,

* 需要繼承actionsupport介面

*/public class valaction extends actionsupport

public void setusername(string username)

public string getpassword()

public void setpassword(string password)

private static final long serialversionuid = 1l;

@override

public string execute() throws exception

//增加

public string add()

//刪除

public string delete()

//修改

public string update()

//查詢

public string query()

/** 用作資料校驗的方法,前端提交的資料需要在此方法中進行校驗,

* 如果校驗不通過,不會執行action中的其餘方法。尋找result中

* 名稱為input的介面去跳轉

* * 對當前action中所有的方法都加資料校驗

*/@override

public void validate()

if(password == null || password.length()==0)

super.validate(); }

//對指定方法加資料校驗 validata+要資料校驗的方法名

/* * 校驗通過還是不通過,根據root中的fielderrors中是否有資訊來判斷

* 如果該map中有資訊,驗證就不通過,在***中return "input"

* 如果該map中沒有資訊,驗證就通過,這行下乙個***

* return invcation.invoke();放行

*/public void validateadd() }

public void validatequery()

}

二.通過配置檔案方式

運用**方式可以完成對資料的校驗,但是在使用時候相對繁瑣,因此通常都是採用配置檔案的方式完成對資料的校驗。在使用配置檔案進行資料校驗時,檔案命名格式:actionname-validate.xml,其中actionname就是需要進行資料校驗的action的類名。

若要對action中某個方法執行資料校驗,則命名格式:actionname-actionmethodname-validation.xml,其中actionname就是需要進行資料校驗的action的類名,actionmethodname就action中要進行資料校驗的方法的方法名。

<?xml version="1.0" encoding="utf-8"?>

使用者名稱不能為空

年齡不能為空

2023年齡超出範圍

身高不能為空

1.62.26

身高不在範圍內

校驗型別有很多種,我們根據需求填入系統提供校驗器的名稱。

系統提供校驗器的位置如下:struts2-core-2.5.16.jar/com.opensymphony.xwork2.validator.validators/default.xml中。

源**如下

<?xml version="1.0" encoding="utf-8"?>

Struts2 資料校驗

在action中編寫校驗 步驟 1 action繼承actionsupport類,並實現其中的validate 方法 2 在struts.xml中配置action,可以選擇通過在jsp介面新增來顯示,也可通過對action定義跳轉來實現 定義result 定義s fielderror 3 針對指定的...

struts2 資料校驗

資料校驗 兩種方式 編碼校驗 框架校驗 action繼承 actionsupport類 方法呼叫順序 set方法 validate方法 伺服器端驗證 execu方法 當輸入校驗不通過 就進入到 result中 input 指向的頁面 1.validate方法中進行校驗時用 this.addactio...

Struts2資料校驗

通過編碼方式進行校驗 以前使用js完成資料校驗 客戶端的校驗方式。struts2的資料校驗 屬於伺服器端校驗。1 public class useraction extends actionsupport210 public void setuname string uname 1114 publi...