用fluent-validator,进行Java服务端验证

一.maven依赖

  <!-- fluent 验证 -->
<dependency>
    <groupId>com.baidu.unbiz</groupId>
    <artifactId>fluent-validator</artifactId>
    <version>1.0.5</version>
</dependency>
<!-- fluent 验证 的 hibernate-valiedator依赖-->
<dependency>
    <groupId>com.baidu.unbiz</groupId>
    <artifactId>fluent-validator-jsr303</artifactId>
    <version>1.0.5</version>
</dependency>
<!--Validator用spring托管-->
<dependency>
    <groupId>com.baidu.unbiz</groupId>
    <artifactId>fluent-validator-spring</artifactId>
    <version>1.0.5</version>
</dependency>

 

二.使用方式

  A.1

 实体类:

验证类:

LenthValidator:

测试:

输出结果:

B.2

实体类相同这次结合Hibernat-valiedator

测试:

这里用到了hibernate-valiedator的注解

测试结果:

C.3

实体类:

测试类:

 测试结果:

这里用了failOver()方法

当出现校验失败时,也就是Validator的validate()方法返回了false,那么是继续还是直接退出呢?默认为使用failFast()方法,直接退出,如果你想继续完成所有校验,使用failOver()来skip掉。

三。总结

三种验证方式各有优劣,相互结合才能达到完美验证。

A1.能应付所有验证,但对于字段较多的实体,验证代码过于冗长。

B2.用注解的方式验证,代码简洁优雅,但对于同一个字段不同场景下需要不同验证的情况没办法解决。

C2.同B2,注解可以直接写验证方法,代码简洁,但是也是不够灵活

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: fluent-mybatis是一个对MyBatis进行封装的库,使其使用起来更简单、更符合领域驱动设计(DDD)的理念。因此,fluent-mybatis通常被用于开发各种类型的项目中的数据访问层。我不知道是否有任何特别大的项目使用fluent-mybatis作为数据访问层的框架,如果有的话,我不能确定。 ### 回答2: Fluent-Mybatis是一个基于Mybatis的ORM框架,它提供了一种方便、灵活的方式来操作数据库。它的设计目标是简化数据库操作的流程,提升开发效率,并且能够应对大型项目的需求。 在大型项目中,数据量通常很大,操作复杂,所以需要一个高效的ORM框架来处理数据库。Fluent-Mybatis提供了灵活的查询方式,支持动态SQL,通过自动生成SQL语句,将复杂的数据库操作简化为简洁易懂的代码。同时,它还支持多种数据库,如MySQL、Oracle、SQL Server等,可以根据项目需要灵活选择。 在大型项目中,数据更新频繁,且可能涉及到多个表之间的关联操作。Fluent-Mybatis提供了事务支持和乐观锁机制,保证数据的一致性和并发操作的正确性。通过使用Fluent-Mybatis,开发人员可以方便地管理事务,实现数据的原子性操作,提高系统的稳定性和安全性。 此外,Fluent-Mybatis还提供了一些扩展功能,如分页查询、多条件查询、缓存支持等。这些功能在大型项目中尤其重要,能够提升系统的性能和用户体验。 总之,Fluent-Mybatis适用于各种大型项目,无论是电子商务、金融、物流等领域的系统,都可以通过使用它来简化数据库操作,提高开发效率,保证系统的稳定性和性能。 ### 回答3: Fluent-Mybatis是一个简化MyBatis开发的框架,它提供了一种更流畅、更便捷的方式来进行数据库操作。对于大型项目而言,Fluent-Mybatis具有以下优势和适用场景。 首先,Fluent-Mybatis具有简化SQL编写的功能。在大型项目中,通常需要编写大量的SQL语句来进行数据库操作,包括查询、插入、更新和删除等。Fluent-Mybatis可以通过提供一种更直观的API来简化SQL的编写,使得开发人员可以更快速地完成数据库操作。 其次,Fluent-Mybatis支持动态SQL的构建。在大型项目中,经常需要根据不同的条件来构建各种不同的SQL语句,以满足复杂的业务需求。Fluent-Mybatis提供了动态SQL的支持,可以根据不同的条件来动态构建SQL语句,从而提高了开发的灵活性和效率。 另外,Fluent-Mybatis还支持多种数据库的操作。在大型项目中,可能需要同时操作多个不同类型的数据库,如MySQL、Oracle、SQL Server等。Fluent-Mybatis提供了对多种数据库的支持,可以方便地进行数据库的切换和操作。 此外,Fluent-Mybatis还提供了缓存和性能优化的功能。在大型项目中,性能往往是一个非常关键的因素。Fluent-Mybatis支持对查询结果进行缓存,从而提高了查询的性能。同时,Fluent-Mybatis还提供了一些性能优化的策略和设置,帮助开发人员更好地优化数据库操作的性能。 总之,Fluent-Mybatis是一个适用于大型项目的框架,它通过简化SQL编写、支持动态SQL构建、多数据库操作和性能优化等功能,提高了开发人员在大型项目中的开发效率和数据库操作的性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值