java数据校验博客_springmvc教程:利用Validation进行参数校验
上传图片
1.1 配置虚拟目录
1.2 配置解析器
Validation校验
b/s系统中对http请求数据的校验多数在客户端进行,这也是出于简单及用户体验性上考虑,但是在一些安全性要求高的系统中服务端校验是不可缺少的,本节主要学习springmvc实现控制层添加校验。
Spring3支持JSR-303验证框架,JSR-303是JAVA EE 6中的一项子规范,叫做Bean Validation,官方参考实现是Hibernate Validator(与Hibernate ORM没有关系),JSR 303用于对Java Bean中的字段的值进行验证。
1.1 需求
对商品信息进行校验,是否必须,输入数据合法性。
1.2 加入jar包
1.3 配置validator
1.4 将validator加到处理器适配器
配置方式1:
配置方式2:
1.5 添加验证规则
1.6 错误消息文件CustomValidationMessages
item.name.length.illigel=商品在名称在1到3个字符之间
pic.is.null=请上传图片
如果在eclipse中编辑properties文件无法看到中文则参考“Eclipse开发环境配置-indigo.docx”添加propedit插件。
1.7 捕获错误
修改Controller方法:
注意:添加@Validated表示在对items参数绑定时进行校验,校验信息写入BindingResult中,在要校验的pojo后边添加BingdingResult, 一个BindingResult对应一个pojo,且BingdingResult放在pojo的后边。
商品修改页面:
页头:
在需要显示错误信息地方:
说明:
表示如果item参数绑定校验错误下边显示错误信息。
1.8 分组校验
如果两处校验使用同一个Items类则可以设定校验分组。
定义分组:
分组就是一个标识,这里定义一个接口:
指定分组校验:
在@Validated中添加value={ValidGroup1.class}表示商品修改使用了ValidGroup1分组校验规则,也可以指定多个分组中间用逗号分隔,
@Validated(value={ValidGroup1.class,ValidGroup2.class })
1.3 jar包
CommonsMultipartResolver解析器依赖commons-fileupload和commons-io,加入如下jar包:
1.4 单个图片上传
1、controller:
2、 页面:
form添加enctype=”multipart/form-data”:
file的name与controller形参一致:
java数据校验博客_springmvc教程:利用Validation进行参数校验相关推荐
- Django 3.2.5博客开发教程:用Admin管理后台管理数据
上节我们我们把数据库迁移到数据库里去了,那么现在我们数据库里是个什么样的情况呢?我们点击Pycharm右上角的Database,然后在网站项目里选中我们的数据库文件db.sqlite3,把它拖到Dat ...
- Django 3.2.5博客开发教程:使用富文本编辑器添加数据
在Django admin后台添加数据的时候,文章内容文本框想发布一篇图文并茂的文章需就得手写Html代码,这十分吃力,也没法上传图片和文件.这显然不是我等高大上程序猿想要的. 为提升效率,我们可以使 ...
- Django 3.2.5博客开发教程:体验数据查询
进行数据查询之前,我们需要先进入我们的管理后台,在里面添加一些数据.然后我们用Pycharm打开我们的数据库.具体操作方法:用Pycharm可视化操作数据库 我们的数据结构长这般模样: 双击blog_ ...
- 分享几个开源Java写的博客系统
文章目录 1. halo(完善生态) 2. solo 3. OneBlog 4. 蘑菇博客(微服务) 5. JPress 有关Java写的博客,网上其实有很多,一般自己如果有技术的话也是可以写的出来的 ...
- 介绍一个node创建博客的教程并总结
接近一个月没写博客了,是因为实在不知道该写什么= =... 除了完成工作外,这段时间自学了一个教你使用node从0-1创建博客的教程,写的十分详细,教程也重构过几次了,已经相对比较完善,推荐对node ...
- Django 3.2.5博客开发教程:HelloWorld欢迎页面
基础配置做好了之后,我们就可以先迁移数据到数据库,然后启动我们的项目,感受Django的魅力. 在Pycharm左下角底部的Terminal,会弹出Terminal终端窗口,Pycharm自动会帮我们 ...
- Django 3.2.5博客开发教程:体验django模板
上面我们有说过,用户发送请求的时候,视图会返回一个响应,响应可以是一个重定向,一个404错误,一个XML文档,一张图片或者是一个HTML内容的网页.前面几个返回的信息比较有限,我们重点更多是放在HTM ...
- Django 3.2.5博客开发教程:一些常用的模板使用方法
一.django static文件的引入方式 1.在django project中创建 static文件夹 2.settings.py中配置要在 STATIC_URL = '/static/' 下边 ...
- Django 3.2.5博客开发教程:实现模板之前的分析与准备
在之前的体验django模板.体验数据查询以及一些常用的模板使用方法文章里,向大家介绍了如何将数据库的数据展现到网页上,和一些简单的模板使用方法.之后我们就开始实现各种页面的展现. 在此之前,我们先从 ...
最新文章
- python3.7下载包的命令_python3.7中安装paddleocr及paddlepaddle包的多种方法
- 机器学习知识点(三十二)微积分基础
- 好用的wordpress主题
- 狂神java什么来头_狂神说SpringBoot18:集成SpringSecurity
- python3扫盲系列-(3)
- v-if v-else-if v-else
- mfc控件位置随对话框窗口移动
- MACOSX下查看某个端口被哪个程序占用及杀进程方法
- 【华为云技术分享】前端快速建⽴Mock App
- 用计算机画 信息技术课标要求,[引用]小学信息技术课程标准
- 揭露一种通过网络实施ATM诈骗的手段!
- C语言保留字(关键字)汇总——转载
- Chrome免安装版制作
- 学生用计算机中怎样输入分数,职称计算机考试Excel中输入分数技巧
- Centos7 编译 php5.6出错
- C++ GUI Programming with Qt4 Second Edition 之 附录A.2 Windows系统Qt的安装
- 取消选中单选框radio的三种方式
- VB.net:VB.net编程语言学习之添加引用打包安装项目的简介、案例应用之详细攻略
- Kafka请求发送分析
- 使用国密函数读取金税盘信息-Delphi 版