- 浏览: 159923 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (118)
- rest (2)
- spring (8)
- java proxy (1)
- linux (9)
- nginx (1)
- 加密算法 (2)
- jquery (3)
- hibernate (9)
- bootstrap (0)
- mysql (15)
- java (6)
- 应用服务器 (2)
- jdbc (3)
- js (3)
- springMVC (3)
- JAVA基础分类 (2)
- mycat (5)
- mybatis (0)
- drools规则引擎 (0)
- 压力测试工具 (1)
- 日志管理 (3)
- maven (3)
- 数据源 (1)
- kryo 序列化 (1)
- dubbo (3)
- com.google.common.collect 工具类 (2)
- memcache (2)
- jdk (1)
- 正则 (2)
- amoeba (1)
- 分布式事务 (2)
- html5 (1)
- spring-data-elasticSearch (2)
- shell脚本 (1)
- Elasticsearch (9)
- 设计模式 (2)
- NOSQL (1)
- hash算法 (4)
- 多线程 (0)
- 电商 (1)
- pinpoint (0)
最新评论
注解
适用的数据类型
说明
@AssertFalse
Boolean, boolean
验证注解的元素值是false
@AssertTrue
Boolean, boolean
验证注解的元素值是true
@DecimalMax(value=x)
BigDecimal, BigInteger, String, byte,short, int, long and the respective wrappers of the primitive types. Additionally supported by HV: any sub-type of Number andCharSequence.
验证注解的元素值小于等于@ DecimalMax指定的value值
@DecimalMin(value=x)
BigDecimal, BigInteger, String, byte,short, int, long and the respective wrappers of the primitive types. Additionally supported by HV: any sub-type of Number andCharSequence.
验证注解的元素值小于等于@ DecimalMin指定的value值
@Digits(integer=整数位数, fraction=小数位数)
BigDecimal, BigInteger, String, byte,short, int, long and the respective wrappers of the primitive types. Additionally supported by HV: any sub-type of Number andCharSequence.
验证注解的元素值的整数位数和小数位数上限
@Future
java.util.Date, java.util.Calendar; Additionally supported by HV, if theJoda Time date/time API is on the class path: any implementations ofReadablePartial andReadableInstant.
验证注解的元素值(日期类型)比当前时间晚
@Max(value=x)
BigDecimal, BigInteger, byte, short,int, long and the respective wrappers of the primitive types. Additionally supported by HV: any sub-type ofCharSequence (the numeric value represented by the character sequence is evaluated), any sub-type of Number.
验证注解的元素值小于等于@Max指定的value值
@Min(value=x)
BigDecimal, BigInteger, byte, short,int, long and the respective wrappers of the primitive types. Additionally supported by HV: any sub-type of CharSequence (the numeric value represented by the char sequence is evaluated), any sub-type of Number.
验证注解的元素值大于等于@Min指定的value值
@NotNull
Any type
验证注解的元素值不是null
@Null
Any type
验证注解的元素值是null
@Past
java.util.Date, java.util.Calendar; Additionally supported by HV, if theJoda Time date/time API is on the class path: any implementations ofReadablePartial andReadableInstant.
验证注解的元素值(日期类型)比当前时间早
@Pattern(regex=正则表达式, flag=)
String. Additionally supported by HV: any sub-type of CharSequence.
验证注解的元素值与指定的正则表达式匹配
@Size(min=最小值, max=最大值)
String, Collection, Map and arrays. Additionally supported by HV: any sub-type of CharSequence.
验证注解的元素值的在min和max(包含)指定区间之内,如字符长度、集合大小
@Valid
Any non-primitive type(引用类型)
验证关联的对象,如账户对象里有一个订单对象,指定验证订单对象
@NotEmpty
CharSequence,Collection, Map and Arrays
验证注解的元素值不为null且不为空(字符串长度不为0、集合大小不为0)
@Range(min=最小值, max=最大值)
CharSequence, Collection, Map and Arrays,BigDecimal, BigInteger, CharSequence, byte, short, int, long and the respective wrappers of the primitive types
验证注解的元素值在最小值和最大值之间
@NotBlank
CharSequence
验证注解的元素值不为空(不为null、去除首位空格后长度为0),不同于@NotEmpty,@NotBlank只应用于字符串且在比较时会去除字符串的空格
@Length(min=下限, max=上限)
CharSequence
验证注解的元素值长度在min和max区间内
@Email
CharSequence
验证注解的元素值是Email,也可以通过正则表达式和flag指定自定义的email格式
适用的数据类型
说明
@AssertFalse
Boolean, boolean
验证注解的元素值是false
@AssertTrue
Boolean, boolean
验证注解的元素值是true
@DecimalMax(value=x)
BigDecimal, BigInteger, String, byte,short, int, long and the respective wrappers of the primitive types. Additionally supported by HV: any sub-type of Number andCharSequence.
验证注解的元素值小于等于@ DecimalMax指定的value值
@DecimalMin(value=x)
BigDecimal, BigInteger, String, byte,short, int, long and the respective wrappers of the primitive types. Additionally supported by HV: any sub-type of Number andCharSequence.
验证注解的元素值小于等于@ DecimalMin指定的value值
@Digits(integer=整数位数, fraction=小数位数)
BigDecimal, BigInteger, String, byte,short, int, long and the respective wrappers of the primitive types. Additionally supported by HV: any sub-type of Number andCharSequence.
验证注解的元素值的整数位数和小数位数上限
@Future
java.util.Date, java.util.Calendar; Additionally supported by HV, if theJoda Time date/time API is on the class path: any implementations ofReadablePartial andReadableInstant.
验证注解的元素值(日期类型)比当前时间晚
@Max(value=x)
BigDecimal, BigInteger, byte, short,int, long and the respective wrappers of the primitive types. Additionally supported by HV: any sub-type ofCharSequence (the numeric value represented by the character sequence is evaluated), any sub-type of Number.
验证注解的元素值小于等于@Max指定的value值
@Min(value=x)
BigDecimal, BigInteger, byte, short,int, long and the respective wrappers of the primitive types. Additionally supported by HV: any sub-type of CharSequence (the numeric value represented by the char sequence is evaluated), any sub-type of Number.
验证注解的元素值大于等于@Min指定的value值
@NotNull
Any type
验证注解的元素值不是null
@Null
Any type
验证注解的元素值是null
@Past
java.util.Date, java.util.Calendar; Additionally supported by HV, if theJoda Time date/time API is on the class path: any implementations ofReadablePartial andReadableInstant.
验证注解的元素值(日期类型)比当前时间早
@Pattern(regex=正则表达式, flag=)
String. Additionally supported by HV: any sub-type of CharSequence.
验证注解的元素值与指定的正则表达式匹配
@Size(min=最小值, max=最大值)
String, Collection, Map and arrays. Additionally supported by HV: any sub-type of CharSequence.
验证注解的元素值的在min和max(包含)指定区间之内,如字符长度、集合大小
@Valid
Any non-primitive type(引用类型)
验证关联的对象,如账户对象里有一个订单对象,指定验证订单对象
@NotEmpty
CharSequence,Collection, Map and Arrays
验证注解的元素值不为null且不为空(字符串长度不为0、集合大小不为0)
@Range(min=最小值, max=最大值)
CharSequence, Collection, Map and Arrays,BigDecimal, BigInteger, CharSequence, byte, short, int, long and the respective wrappers of the primitive types
验证注解的元素值在最小值和最大值之间
@NotBlank
CharSequence
验证注解的元素值不为空(不为null、去除首位空格后长度为0),不同于@NotEmpty,@NotBlank只应用于字符串且在比较时会去除字符串的空格
@Length(min=下限, max=上限)
CharSequence
验证注解的元素值长度在min和max区间内
CharSequence
验证注解的元素值是Email,也可以通过正则表达式和flag指定自定义的email格式
发表评论
-
spring+memcache整合
2015-12-03 09:48 630<?xml version="1.0&qu ... -
hibernate关联关系映射
2015-06-29 14:49 513一对一外键关联映射(单向) 一对一外键关联映射(双向) 一对一 ... -
IntrospectorCleanupListener
2015-06-24 10:56 581"在服务器运行过程中,Spring不停的运行的计划任 ... -
spring @Scheduled注解执行定时任务
2014-10-27 10:53 9422spring @Scheduled注解方式配置定时器 在sp ... -
hibernate参数hibernate.jdbc.fetch_size 与hibernate.jdbc.batch_size
2014-10-27 10:25 498hibernate.jdbc.fetch_size 50 hi ... -
org.hibernate.NonUniqueObjectException: a different object with the same identif
2014-10-10 10:33 944使用 session.merge(object) 解决 示例: ... -
Criteria 与 DetachedCriteria 的区别与使用
2014-09-18 17:22 807Criteria 与 DetachedCriteria 的主 ... -
hibernate: 用Disjunction和Conjunction构造复杂的查询条件
2014-09-18 17:02 1035Disjunction 与 Conjunction 表示逻辑或 ... -
Restrictions 使用
2014-09-18 16:52 765Restrictions: like的使用: 匹配模式 ... -
hibernate4 query设置返回结果类型
2014-09-04 12:46 684hibernate4 代替hibernate3 的Hibern ... -
org.codehaus.jackson转换对象为json字符串一对多关联关系出现死循环
2014-07-14 10:35 2010jackson的ObjectMapper在转换对象为json字 ... -
hibernate的Projections用法
2014-07-14 10:25 1948hibernate对统计分析操作行为做了封装,通过Projec ... -
springMVC-构造ModelAndView
2014-01-07 10:12 7691、当只有一个属性需要返回时,可以在模型控制构造器中传入 引用 ... -
springMVC-重定向
2014-01-07 10:04 511springMVC中重定向,并且传递参数 @Control ... -
spring事务控制的五种方式
2013-12-30 07:58 488<div class="iteye-blog- ...
相关推荐
### 注解+反射实现自定义验证工具 #### 一、引言 在软件开发过程中,数据验证是一项必不可少的任务。...这种方法特别适用于那些需要频繁修改验证逻辑的场景,能够极大地提高开发效率和代码质量。
如果希望对不同的场景使用不同的校验规则,可以使用分组校验。通过在验证注解上添加`groups`属性,我们可以指定特定的校验组。然后,在控制器方法上使用`@Valid`的`groups`参数来指定需要的校验组。 7. **自定义...
总结起来,JSR303校验注解提供了一种声明式的方式来验证对象属性,而自定义校验注解则允许你扩展验证功能,以适应更复杂的业务场景。通过合理利用这些工具,可以有效提升应用的数据质量,减少因数据错误导致的问题。
在Spring Boot等框架中,可以定义自定义注解来实现特定的功能,如拦截器中的登录校验。通过在控制器方法上使用自定义注解,拦截器可以检测并执行相应的逻辑,例如检查用户是否已登录。 2. **注解+AOP(面向切面...
在Java编程语言中,自定义编译期注解(Annotation)是一种强大的元数据工具,它允许程序员...同时,由于注解处理器的灵活性,自定义编译期注解的应用场景几乎是无限的,只要想象力足够丰富,就能发掘出更多实用的用途。
在实际开发中,自定义注解和反射的应用场景非常广泛,比如Spring框架中的依赖注入、AOP切面编程、日志记录、数据校验等。通过注解,我们可以将业务逻辑与配置分离,使得代码更加整洁,同时减少硬编码,提高代码的...
- 编译时验证:例如,JSR 303/349的`javax.validation`包提供注解来校验对象的属性。 - 配置管理:Spring框架广泛使用注解来简化依赖注入和配置。 通过以上介绍,我们可以看到Java注解在简化编程、增强代码可读性...
这些注解可以直接应用于Java Bean的字段上,也可以在Spring MVC的控制器方法参数上使用。 1. **基本验证注解** - `@NotNull`: 检查值是否为null。 - `@NotEmpty`: 检查字符串、集合或数组是否为空。 - `@...
在实际开发中,我们还需要自定义Validator来处理复杂的验证需求,或者使用条件注解(如`@Size(max = ..., min = ..., message = "...")`)来定义更细致的验证规则。此外,还可以通过全局异常处理(`@...
2. **数据验证**:Hibernate Validator等库利用注解进行对象数据校验。 3. **持久化框架**:JPA(Java Persistence API)使用注解将对象映射到数据库表。 4. **依赖注入**:Spring框架中的@Component、@Autowired等...
3. 使用注解标记属性:在待校验对象的属性上使用自定义注解,指定该属性需要的校验规则。 4. 遍历属性和注解:通过反射获取对象的所有属性及其注解,然后根据注解创建相应的校验器实例。 5. 组建校验链:将所有...
为了处理更复杂的数据校验场景,Struts 2支持使用Validator插件,它可以读取XML配置文件或者使用JSR 303/JSR 349(Bean Validation)标准来进行校验。通过Validator插件,可以定义全局的校验规则,复用性强,同时也...
在Spring框架中,我们可以使用`@Valid`注解配合自定义约束(如`@NotBlank`, `@Min`, `@Max`等)来进行参数校验。此资源提供的工具类可能实现了类似的机制,但更加灵活,可以适应各种自定义的校验规则。 3. 扩展性:...
5. **注解的使用场景** - **依赖注入**:Spring框架中的`@Autowired`注解自动装配bean。 - **持久化**:Hibernate框架中,使用`@Entity`、`@Table`、`@Id`等注解标记实体类和属性,实现对象关系映射。 - **运行时...
例如,可以使用`@Validated`注解来启用校验,使用`@NotBlank`、`@NotEmpty`等JSR303/JSR349的校验注解来指定验证规则。 三、Interceptor级别校验 Struts2的Interceptor(拦截器)允许在Action执行前进行数据校验。...
在实际应用中,开发者可以简单地引入这个jar包,并在控制器层的方法参数上使用对应的校验注解,然后在服务层调用校验器进行校验。这样,即使前端传入的数据有误,也能及时捕获并返回错误信息,避免了因无效数据导致...
模板生成器也是安全专家拓展注解使用场景的必要工具。 本研究的主要贡献有两个方面。首先,本研究提出了基于注解的 Java 密码学 API 安全性增强方法,这种方法可以强制规范开发者的行为,确保开发者正确地使用密码...
然后,在控制器的方法上,我们可以使用`@Validated`注解,并指定需要的验证分组。例如,创建用户时,我们只需要`Creation`组的验证: ```java @PostMapping("/users") public ApiResponse<UserDTO> createUser( @...
在Spring Boot应用中,我们经常需要对输入的数据进行验证,以确保数据的正确性和安全性。...在Spring Boot中,这样的注解可以应用于表单提交、REST API参数等多种场景,大大增强了应用的安全性和用户体验。
在Java中,我们通常使用注解和验证器框架,如Hibernate Validator。它实现了JSR-303/JSR-349标准,提供了一种声明式的方式来定义和执行校验规则。 4. **Hibernate Validator**: Hibernate Validator是Java Bean ...