struts2的欄位校驗型別和struts2實現檔案上傳
使用struts2的輸入校驗
欄位校驗器 配置風格
<field name=”被校驗的欄位”>
<field-validator type=”校驗器名”>
<param name=”引數名”>引數值</param>
<message/>
</field-validator>
</field>
每個field元素指定Action必須遵守的準則,name屬性指定校驗欄位,如果該屬性需要多個規則,則在該field下面新增多個.該元素可以包含多個子元素來指定校驗器引數。另外每個必須指定用來提示不滿足規則的提示資訊。
非欄位校驗器配置
<validator type=”校驗器名”>
<param name=”fileName”>需要被校驗的欄位</param>…
<message/>
</validator>
使用strurts2 控制檔案上傳
Struts2 預設使用的是Jakarta 的Common-FileUpload的檔案上傳框架,如需要使用struts2的檔案上傳功能,就要新增倆個jar包。Commons-io-x.x 和Commons-fileUpload-x.xx。
步驟:1、畫表單2、寫Action。屬性 有 表單中的name屬性 以及uploadFileName、uploadContentType。其中uploadFileName封裝上傳檔案的檔名,uploadContentType用於封裝上傳檔案的型別。可以認為如果一個檔案域包含一個屬性名為xxx,那麼Action就需要File xxx; String xxxFileName;String xxxContentType;來封裝這個檔案。還包含了savePath成員變數。該成員變數的值通過配置檔案來設定。如下圖所示
手動實現檔案過濾
Web應用不允許瀏覽者自由上傳,尤其不能上傳可執行檔案,還對檔案大小可能還會有限制,因此檔案上傳必須過濾。主要是在Action裡新增 filterTypes()方法。如下
public String filterTypes(String[] types) {
String fileType = getUploadContentType();
for(String type:types) {
if(type.equals(fileType)) {
return null;
}
}
return ERROR;
}
public void validate() {
String filterResult = filterTypes(allowTypes.split(","));
if(filterResult!= null) {
addFieldError("upload", "上傳的檔案不符合規定");
}
}
其中allowTypes 是一個可以在struts.xml檔案中配置的引數。標明瞭允許上傳的檔案型別。
最後結果圖可能如圖
其實還有更簡單的方法 那就是在struts.xml檔案中配置攔截器。
<interceptor-ref name="fileUpload">
<param name="allowedTypes">image/png,image/gif</param>
<param name="maximumSize">20</param>
</interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref>
當出錯提示資訊為英文 時,可以加入mess.properties檔案 來使資源國際化。當然需要在struts.xml檔案中配置。如下
<constant name="struts.custom.i18n.resources" value="mess"></constant>
結果如下圖
相關推薦
struts2的欄位校驗型別和struts2實現檔案上傳
使用struts2的輸入校驗 欄位校驗器 配置風格 <field name=”被校驗的欄位”> <field-validator type=”校驗器名”> <param name=”引數名”>引
案例使用node.js的第三方模組(express和multer)實現檔案上傳
首先,先按照這兩個第三方模組,按照命令:cnpm i express multer --save 第一步:把express伺服器思路先寫好: 1.匯入模組; 2.例項化物件; 3.寫路由; 4.開啟監聽; 程式碼如下: //上傳檔案的使用(express結合multer的使用
FastDFS和nginx實現檔案上傳詳解
1.什麼是FastDFS FastDFS 是用 c 語言編寫的一款開源的分散式檔案系統FastDFS 為網際網路量身定製,充分考慮了冗餘備份、負載均衡、線性擴容等機制,並注重高可用、高效能等指標,使用 FastDFS很容易搭建一套高效能的檔案伺服器叢集提供檔案上傳、下載等服務。 FastDF
MVC5:使用Ajax和HTML5實現檔案上傳功能
引言在實際程式設計中,經常遇到實現檔案上傳並顯示上傳進度的功能,基於此目的,本文就為大家介紹不使用flash 或任何上傳檔案的外掛來實現帶有進度顯示的檔案上傳功能。基本功能:實現帶有進度條的檔案上傳功能高階功能:通過拖拽檔案的操作實現多個檔案上傳功能背景HTML5提供了一種標
SpringBoot專案總結--(1)欄位校驗與加密
一、多欄位校驗 提供Validator的實現類,並且實現Validator介面的supports和validate方法。supports方法用於判斷當前類是不是需要校驗的類。只有當supports方法返回的結果為true時,validate方法才會執行進行校驗。 p
AntDesign Form表單欄位校驗的三種方式
1.使用getFieldDecorator的rules規則 最簡單的方法就是使用getFieldDecorator中的rules驗證。rules中定義校驗規則,message為校驗不通過時的提示文字。 {getFieldDecorator('inputContent', {
Element 表單驗證,取消部分表單欄位校驗結果
<template> <div> <el-form ref="formRules" :model="form" :rules="rules" :inline="true"> <el-form-item prop="name">
更改oracle資料庫中某個表中的某個欄位的資料型別和長度
不廢話需求:在plsql中更改oracle資料庫中的info_agency表中的county欄位的資料型別 為varchar 長度為255實現:alter TABLE INFO_AGENCY MODIFY (county VARCHAR(255));親用 則 可用
JAVA欄位校驗(validation)
在開發業務時,不可避免的需要處理一些校驗, 如果是寫if-else這種程式碼去校驗, 那會有一大段這樣的程式碼。不過還好有個校驗外掛:javax.validation.validation-api,不過一般會引用hibernate的校驗元件:org.hibern
Struts2單個檔案和多個檔案上傳
<一>簡述: Struts2的檔案上傳其實也是通過攔截器來實現的,只是該攔截器定義為預設攔截器了,所以不用自己去手工配置,<interceptor name=”fileUpload” class=”org.apache.struts2.interceptor.
Struts2的一個和多個檔案上傳的實現
在Struts2中,上傳檔案時,只要使用java.io.File類來描述上傳檔案即可,比直接使用Commons-FileUpload元件要簡單的多。 上傳單個檔案: 如果上傳的是單個檔案,則在Action類中定義一個File型別的變數。該變數的名字與JSP頁面上的<input />標籤的nam
js相容ie和chrome的檔案上傳大小校驗
js 檔案上傳功能在ie8和chrome下的語法會有不一樣的地方,取決於瀏覽器對file檔案物件的獲取不一樣。ie通過FileSystemObject此物件獲取,而chrome獲取$(“input[name=’file’]”).file[0].size獲取。
CRC校驗原理和verilog實現方法(一)
1.CRC簡介 CRC全稱迴圈冗餘校驗(Cyclic Redundancy Check, CRC),是通訊領域資料傳輸技術中常用的檢錯方法,用於保證資料傳輸的可靠性。網上有關這方面的部落格和資料很多,本文儘量簡潔的梳理一下它的原理。後面還會結合自己的實踐經驗(不多),說一說如何使用verilog語
struts2實現檔案上傳與下載功能
一、Demo介紹 基於struts2框架,實現多檔案的上傳和下載功能。 實現原理圖: 部分介面圖: 上傳成功及下載頁面: 二、主要程式碼 uploadFile.jsp:在form表單中包含一個文字框(上傳使用者的姓名)和兩個檔案上傳選項. <%@
【SSH網上商城專案實戰13】Struts2實現檔案上傳功能
轉自:https://blog.csdn.net/eson_15/article/details/51366384 上一節我們做完了新增和更新商品的功能,這兩個部分裡有涉及到商品圖片的上傳,並沒有詳細解說。為此,這篇文章詳細介紹一下Struts2實現檔案上傳的功能。 1
Struts2 實現檔案上傳下載
檔案上傳對Struts2來說是一件非常容易的事情。Struts2檔案上傳依賴如下jar包 commons-fileupload-x.x.x.jar commons-io-x.x.x.jar 檔案上傳大致步驟: 編寫頁面 配置struts.xml 攔截器會自動接收上傳的檔
如何在struts2框架下實現檔案上傳(重要步驟)
檔案上傳前臺頁面的三大要素1)form表單的提交方式必須是post提交2)form表單的提交型別必須是enctype.必須多段式.enctype="multipart/form-data"3)檔案上傳使用 <input type="file" name="photo"
struts2 實現檔案上傳原理
通過struts2實現檔案上傳功能,主要jar包是不可少的包括: aopalliance.jar ------------------------------------為aop(面向切面)提供了最普通和通用的介面 asm-3.3.jar ----------------------------
struts2實現檔案上傳與下載
一、單檔案上傳 1、檔案上傳條件: (1)請求方法必須是post (2)enctype的屬性值必須為multipart/form-data (3)提供一個檔案選擇域 2、檔案上傳jsp程式碼 <%@ page language="java" c
struts2中實現檔案上傳功能
package com.upload.action; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import java.i