数据校验

自定义类型转换器,转换过程中的错误处理

萝らか妹 提交于 2019-12-01 09:14:05
参数封装过程中,数据类型转换问题 1、 struts2 内部提供大量类型转换器,用来完成数据类型转换问题 boolean 和 Boolean char和 Character int 和 Integer long 和 Long float 和 Float double 和 Double Date 可以接收 yyyy-MM-dd格式字符串 数组 可以将多个同名参数,转换到数组中 集合 支持将数据保存到 List 或者 Map 集合 案例: 输入合法年龄和生日可以自动转换 当输入abc 转换为 int类型 age时 Caused by: java.lang.NoSuchMethodException: cn.itcast.struts2.demo3.CustomerAction.setAge([Ljava.lang.String; 分析: 输入20 ,转换 int类型20 --- setAge(int) 输入abc,转换int 出错 ---- setAge(String) ----- 报错方法不存在异常 2、 自定义类型转换器 (了解) 1) 自定义类型转换器 第一种 实现TypeConverter接口 convertValue(java.util.Map<java.lang.String,java.lang.Object> context, java.lang.Object

Form和ModelForm组件

前提是你 提交于 2019-12-01 08:34:15
本节目录 一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 ModelForm 八 xxx 一 Form介绍      我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来。   与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否输入,输入的长度和格式等正不正确。如果用户输入的内容有错误就需要在页面上相应的位置显示对应的错误信息.。   Django form组件就实现了上面所述的功能。   总结一下,其实form组件的主要功能如下:     生成页面可用的HTML标签     对用户提交的数据进行校验     保留上次输入内容      普通方式手写注册功能     views.py # 注册 def register(request): error_msg = "" if request.method == "POST": username = request.POST.get("name") pwd = request.POST.get("pwd") # 对注册信息做校验 if len(username) < 6: # 用户长度小于6位 error_msg = "用户名长度不能小于6位" else: #

Django-form表单

二次信任 提交于 2019-12-01 08:06:49
目录 1. Form介绍   1.1普通方式手写注册功能 1.2使用form组件实现注册功能 2.Form常用字段与插件 2.1initial 2.2error_messages 2.3password 2.4radioSelect 2.5单选Select 2.6多选Select 2.7单选checkbox 2.8多选checkbox 2.9date类型 2.10choice字段注意事项 三 Form所有内置字段 4.字段校验 4.1RegexValidator验证器 4.2自定义验证函数 5.Hook钩子方法 5.1局部钩子 5.2全局钩子 6.进阶补充 6.1应用Bootstrap样式 6.2批量添加样式 6.3简单写一个小项目:book表的添加和数据展示 7.ModelForm 7.1modelForm定义 7.2class Meta下常用参数: 7.3ModelForm的验证 7.4save()方法 8.xxx 8.1创建modelform 8.2添加纪录 8.3编辑数据 1. Form介绍   我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来。 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否输入,输入的长度和格式等正不正确

移动端表单校验错误显示组件

岁酱吖の 提交于 2019-12-01 07:54:59
因业务需要,项目涉及大量表单提交,并且校验时会展示相应的错误样式(如下图),目前移动端的ui框架中并未找到相应的通用组件,如果按照原生的方法则需要给每一条数据项分别添加,代码会出现冗余,影响开发效率,所以需要实现组件化 具体代码如下: 1 <template> 2 <div class="valid-input" :class="{'error':error}"> 3 <slot></slot> //使用时具体数据项 4 <img src="../assets/error.png" v-show="error"> 5 </div> 6 </template> 7 8 <script> 9 export default { 10 name: "Valid", 11 props:{ 12 max:{ 13 type:Number, 14 required:false //控制可输入数据最大长度 15 }, 16 min:{ 17 type:Number, 18 required:false //控制可输入数据的最小长度 19 }, 20 validator:{ 21 type:Function, 22 required:false //根据业务需要具体定义校验方法 23 }, 24 content:{ 25 required:true 26 }, 27 30 }, 31 watch:{

vue 组件开发 props 验证

最后都变了- 提交于 2019-12-01 04:24:56
使用props 在Vue中父组件向子组件中传送数据是通过props实现的,一个简单的使用props的例子: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>Vue Study</title> 6 </head> 7 <body> 8 9 <div id="app"> 10 <foo-component :foo-message="fooMessage"></foo-component> 11 </div> 12 13 <script type="text/javascript" src="lib/vue.js"></script> 14 <script type="text/javascript"> 15 16 var fooComponent = { 17 props: ['fooMessage'], 18 template: '<div> {{ fooMessage }} </div>' 19 }; 20 21 var vm = new Vue({ 22 components: { 23 'foo-component': fooComponent 24 }, 25 el: '#app', 26 data: { 27 fooMessage: 123 28 } 29 }); 30 31 <

RAID技术详解

青春壹個敷衍的年華 提交于 2019-11-30 23:00:45
RAID,为Redundant Arrays of Independent Disks的简称,中文为廉价冗余磁盘阵列。在1987年由美国柏克莱大学提出RAID(Redundant Arrayof Inexpensive Disks)理论,作为高性能的存储系统,巳经得到了越来越广泛的应用。RAID阵列技术允许将一系列磁盘分组,以实现为数据保护而必需的数据冗余,以及为提高读写性能而形成的数据条带分布。RAID最初用于高端服务器市场,不过随着计算机技术的快速发展,RAID技术已经渗透到计算机遍布的各个领域。如今,在家用电脑主板中,RAID控制芯片也随处可见。 RAID的级别从RAID概念的提出到现在,巳经发展了多个级别,有明确标准级别分别是0、1、2、3、4、5等。但是最常用的是0、1、3、5四个级别。其他还有6、7、10、30、50等。RAID为使用者降低了成本、增加了执行效率,并提供了系统运行的稳定性。 标准的RAID写操作,包括如:RAID4或RAID5中所必需的校验计算,需包括以下几个步骤: (1)以校验盘中读取数据 (2)以目标数据盘中读取数据 (3)以旧校验数据,新数据及已存在数据,生成新的校验数据 (4)将新校验数据写入校验盘 (5)将新数据写入目标数据盘 当主机将一个待写入阵列RAID组中的数据发送到阵列时

CEIWEI CheckSum CRC校验精灵v2.1 CRC3/CRC4/CRC5/CRC6/CRC8CRC10/CRC11/CRC16/CRC24/CRC32/CRC40/CRC64/CRC82/Adler32

我的未来我决定 提交于 2019-11-30 20:53:57
CEIWEI CheckSum CRC校验精灵 是一款通用的循环冗余校验码CRC(Cyclic Redundancy Check)、MD5、SHA1、SHA2、SHA3、HAVAL、SHAKE、TIGER、BLAKE、RIPEMD、GOST等算法Hash校验的专业工具软件。 CRC校验支持:CRC3、CRC4、CRC5、CRC6、CRC7、CRC8、CRC11、CRC12、CRC13、CRC14、CRC15、CRC16、CRC17、CRC21、CRC24、 CRC30、CRC31、CRC32、CRC40、CRC64、CRC82、Adler32全面的105种CRC算法,支持显示标准的多项式、初始值、数据反转以及结果异或值。支持Windows资源管理器外壳扩展,方便快捷的调用显示文件的CRC/Hash信息。 支持计算的数据:16进制HEX、字符串、文件,字符串支持ANSI、UTF8、Unicode、Unicode BigEndian编码方式。 支持Windows系统版本: WinXP、Win2003、WinVista、Win7、Win2008、Win8、Win2012、Win2016、Win10,32/64位系统。 支持语言:简体中文、繁体中文、英文三种语言。 下载: 本地下载 来源: http://www.ceiwei.com/mt/news/shownews.php?id=26

Linux命令总结--rpm命令

こ雲淡風輕ζ 提交于 2019-11-30 18:41:34
1.rpm命令介绍 Linux rpm 命令用于管理套件。 rpm(redhat package manager) 原本是 Red Hat Linux 发行版专门用来管理 Linux 各项套件的程序,由于它遵循 GPL 规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM 套件管理方式的出现,让 Linux 易于安装,升级,间接提升了 Linux 的适用度。 2.参数介绍 -a  查询所有套件。 -b<完成阶段><套件档>+或-t <完成阶段><套件档>+  设置包装套件的完成阶段,并指定套件档的文件名称。 -c  只列出组态配置文件,本参数需配合"-l"参数使用。 -d  只列出文本文件,本参数需配合"-l"参数使用。 -e<套件档>或--erase<套件档>  删除指定的套件。 -f<文件>+  查询拥有指定文件的套件。 -h或--hash  套件安装时列出标记。 -i  显示套件的相关信息。 -i<套件档>或--install<套件档>  安装指定的套件档。 -l  显示套件的文件列表。 -p<套件档>+  查询指定的RPM套件档。 -q  使用询问模式,当遇到任何问题时,rpm指令会先询问用户。 -R  显示套件的关联性信息。 -s  显示文件状态,本参数需配合"-l"参数使用。 -U<套件档>或--upgrade<套件档> 升级指定的套件档。 -v

Django【十三】form组件。

*爱你&永不变心* 提交于 2019-11-30 15:08:41
一、form组件 form组件的功能: 检验功能 前端生成HTML页面 还能保留输入的内容 form组件的用法: from django import forms # Create your views here. # 定义一个类 class Myform(forms.Form): title = forms.CharField( # 通过from表单进行验证的时候,验证输入title字段的数据,参数用于验证 max_length=20, min_length=2, ) # CharField/DateField等等时用于验证的和models里的没有关系 price = forms.CharField() date = forms.DateField() def test(request): if request.method=="GET": # 实列化一个对象 form_obj = Myform() # 用这个对象去帮我们生成html标签 return render(request,"test.html",{"form_obj":form_obj}) HTML页面: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <!-

Excel导入导出

会有一股神秘感。 提交于 2019-11-30 14:27:04
提供Excel导入导出功能 一、安装依赖 <dependency> <groupId>cn.gjing</groupId> <artifactId>tools-excel</artifactId> <version>1.0.2</version> </dependency> 二、注解说明 1、 @Excel 使用在类上,表明这个类要绑定excel,注解参数如下 参数 描述 value Excel文件名,优先级低于方法传入 type Excel文档类型, 默认XLS 2、@ExcelField 使用在字段上,表明这是Excel的列表头,注解参数如下 参数 描述 value 列表头名字 pattern 如果是时间需要转换指定格式,需要指定 width 这个列表头单元格的宽度 3、@DateValid 时间校验注解,使用在字段上,表明我这个列表头下的数据要进行校验, XLSX 文档不支持,注解参数如下 参数 描述 validClass 校验器class, 可以指定自己的校验器, 不指定则走默认 boxLastRow 数据校验最多校验多少行,默认是正文第一行 pattern 校验的时间格式,默认 yyyy-MM-dd operatorType 操作类型,默认 OperatorType.BETWEEN expr1 表达式1 expr2 表达式2 showErrorBox 是否弹出错误框,默认