最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java實(shí)現(xiàn)入?yún)?shù)據(jù)批量數(shù)據(jù)校驗(yàn)詳解

 更新時(shí)間:2024年02月05日 09:10:49   作者:Xiao5xiao122  
在業(yè)務(wù)處理中一般入?yún)⑹菃螚l數(shù)據(jù),這樣數(shù)據(jù)校驗(yàn)比較容易,但是這種方法對(duì)于集合數(shù)據(jù)的校驗(yàn)不適用,下面我們就來看看如何對(duì)入?yún)?shù)據(jù)進(jìn)行批量數(shù)據(jù)校驗(yàn)吧

入?yún)?shù)據(jù)批量數(shù)據(jù)校驗(yàn)

在業(yè)務(wù)處理中一般入?yún)⑹菃螚l數(shù)據(jù),這樣數(shù)據(jù)校驗(yàn)比較容易,直接用注解標(biāo)注對(duì)應(yīng)的校驗(yàn)用注解就可以了,但是這種方法對(duì)于集合數(shù)據(jù)的校驗(yàn)不適用。但是業(yè)務(wù)中也有可能是傳入的批量數(shù)據(jù),還要校驗(yàn)每個(gè)字段值是否合規(guī)。我搜過其他猿友寫的批量校驗(yàn)的邏輯,感覺很繁瑣,所以我記錄一下我的我感覺比較簡(jiǎn)便的方法,代碼量減少,還能滿足校驗(yàn)要求。廢話不多說,看代碼。

package com.sydata.zt.common.utils;

import javax.validation.Valid;
import java.util.*;

/**
 * 能被注解@Valid校驗(yàn)的List
 * @author XX
 * @date 2023-12-25
 */
public class ValidableList<E> implements List<E> {

    @Valid
    private List<E> list;

    public ValidableList() {
        this.list = new ArrayList<>();
    }

    public ValidableList(List<E> list) {
        this.list = list;
    }

    public List<E> getList() {
        return list;
    }

    public void setList(List<E> list) {
        this.list = list;
    }

    @Override
    public int size() {
        return list.size();
    }

    @Override
    public boolean isEmpty() {
        return list.isEmpty();
    }

    @Override
    public boolean contains(Object o) {
        return list.contains(o);
    }

    @Override
    public Iterator<E> iterator() {
        return list.iterator();
    }

    @Override
    public Object[] toArray() {
        return list.toArray();
    }

    @Override
    public <T> T[] toArray(T[] a) {
        return list.toArray(a);
    }

    @Override
    public boolean add(E e) {
        return list.add(e);
    }

    @Override
    public boolean remove(Object o) {
        return list.remove(o);
    }

    @Override
    public boolean containsAll(Collection<?> c) {
        return list.contains(c);
    }

    @Override
    public boolean addAll(Collection<? extends E> c) {
        return list.addAll(c);
    }

    @Override
    public boolean addAll(int index, Collection<? extends E> c) {
        return list.addAll(index, c);
    }

    @Override
    public boolean removeAll(Collection<?> c) {
        return list.removeAll(c);
    }

    @Override
    public boolean retainAll(Collection<?> c) {
        return list.retainAll(c);
    }

    @Override
    public void clear() {
        list.clear();
    }

    @Override
    public E get(int index) {
        return list.get(index);
    }

    @Override
    public E set(int index, E element) {
        return list.set(index, element);
    }

    @Override
    public void add(int index, E element) {
        list.add(index, element);
    }

    @Override
    public E remove(int index) {
        return list.remove(index);
    }

    @Override
    public int indexOf(Object o) {
        return list.indexOf(o);
    }

    @Override
    public int lastIndexOf(Object o) {
        return list.lastIndexOf(o);
    }

    @Override
    public ListIterator<E> listIterator() {
        return list.listIterator();
    }

    @Override
    public ListIterator<E> listIterator(int index) {
        return list.listIterator(index);
    }

    @Override
    public List<E> subList(int fromIndex, int toIndex) {
        return list.subList(fromIndex, toIndex);
    }
}

具體使用方法就很簡(jiǎn)單了,直接按照單個(gè)校驗(yàn)的方式添加注解,修改一下接收的集合就可以了

這樣,批量校驗(yàn)的功能就可以了并且可以被復(fù)用。

到此這篇關(guān)于Java實(shí)現(xiàn)入?yún)?shù)據(jù)批量數(shù)據(jù)校驗(yàn)詳解的文章就介紹到這了,更多相關(guān)Java數(shù)據(jù)校驗(yàn)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java Swing實(shí)現(xiàn)讓窗體居中顯示的方法示例

    Java Swing實(shí)現(xiàn)讓窗體居中顯示的方法示例

    這篇文章主要介紹了Java Swing實(shí)現(xiàn)讓窗體居中顯示的方法,結(jié)合實(shí)例形式分析了swing使用setBounds方法控制窗口布局的相關(guān)操作技巧,需要的朋友可以參考下
    2017-11-11
  • SpringBoot復(fù)雜參數(shù)應(yīng)用詳細(xì)講解

    SpringBoot復(fù)雜參數(shù)應(yīng)用詳細(xì)講解

    我們?cè)诰帉懡涌跁r(shí)會(huì)傳入復(fù)雜參數(shù),如Map、Model等,這種類似的參數(shù)會(huì)有相應(yīng)的參數(shù)解析器進(jìn)行解析,并且最后會(huì)將解析出的值放到request域中,下面我們一起來探析一下其中的原理
    2022-09-09
  • 詳解Java設(shè)計(jì)模式之單例模式

    詳解Java設(shè)計(jì)模式之單例模式

    這篇文章主要為大家詳細(xì)介紹了Java設(shè)計(jì)模式之單例模式的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • 深入分析java文件路徑的詳解

    深入分析java文件路徑的詳解

    本篇文章是對(duì)java文件路徑進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • Java實(shí)現(xiàn)億級(jí)用戶在線狀態(tài)統(tǒng)計(jì)的兩種方法

    Java實(shí)現(xiàn)億級(jí)用戶在線狀態(tài)統(tǒng)計(jì)的兩種方法

    本文主要介紹了Java實(shí)現(xiàn)億級(jí)用戶在線狀態(tài)統(tǒng)計(jì)的示例,包括基于總數(shù)的統(tǒng)計(jì)方案和基于用戶標(biāo)識(shí)的統(tǒng)計(jì)方案,具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-05-05
  • Spring Boot中配置定時(shí)任務(wù)、線程池與多線程池執(zhí)行的方法

    Spring Boot中配置定時(shí)任務(wù)、線程池與多線程池執(zhí)行的方法

    這篇文章主要給大家介紹了關(guān)于Spring Boot中配置定時(shí)任務(wù)、線程池與多線程池執(zhí)行的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Spring Boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • 將本地jar包安裝進(jìn)入maven倉庫(實(shí)現(xiàn)方法)

    將本地jar包安裝進(jìn)入maven倉庫(實(shí)現(xiàn)方法)

    下面小編就為大家?guī)硪黄獙⒈镜豭ar包安裝進(jìn)入maven倉庫(實(shí)現(xiàn)方法)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-06-06
  • JSON 格式的弊端與解決方法(真實(shí)示例)

    JSON 格式的弊端與解決方法(真實(shí)示例)

    JSON 格式是目前最流行的數(shù)據(jù)交互格式,廣泛應(yīng)用于前后端分離的系統(tǒng)。但也有一些場(chǎng)合不適合使用 JSON 格式,這篇文章主要介紹了JSON 格式的弊端與解決方法,需要的朋友可以參考下
    2022-09-09
  • Java使用sftp定時(shí)下載文件的示例代碼

    Java使用sftp定時(shí)下載文件的示例代碼

    SFTP 為 SSH的其中一部分,是一種傳輸檔案至 Blogger 伺服器的安全方式。接下來通過本文給大家介紹了Java使用sftp定時(shí)下載文件的示例代碼,感興趣的朋友跟隨腳本之家小編一起看看吧
    2018-05-05
  • JAVA字符串類型switch的底層原理詳析

    JAVA字符串類型switch的底層原理詳析

    這篇文章主要給大家介紹了關(guān)于JAVA字符串類型switch的底層原理的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用JAVA具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09

最新評(píng)論

金湖县| 阿克苏市| 柯坪县| 攀枝花市| 弋阳县| 沈阳市| 贵港市| 五峰| 平潭县| 祁阳县| 安多县| 夏河县| 昌黎县| 曲沃县| 昆山市| 古田县| 通城县| 徐闻县| 桑植县| 昌宁县| 贵德县| 临潭县| 彰化市| 观塘区| 镶黄旗| 大港区| 香格里拉县| 灌阳县| 平原县| 宜宾市| 永善县| 当阳市| 福州市| 神农架林区| 韶关市| 文成县| 德清县| 永仁县| 双柏县| 依安县| 申扎县|