SpringBoot学习3

一、JSR303数据验证

使用@Validated进行数据验证,如果数据异常则会统一抛出异常,方便异常中心统一处理。

空检查

  • @Null 对象为null

  • @NotNull 对象不能为 null,但可以是 空字符串(无法检验长度为0的字符串)

  • @NotBlank 检查约束字符串是不是为null还有被Tirm的长度是否大于0,只对字符串,且会去掉前后的空格

  • @NotEmpty 检查约束字符串是不是为null或者是EMPTY

Boolean检查

  • @AssertTrue 验证Boolean对象是否为True
  • @AssertFalse 验证Boolean对象是否为false

长度检查

  • @Size(min=, max=) 验证对象(Array,Collection,Map,String)长度是否在给定的范围之内
  • @Length(min=, max=) 字符串长度在min和max范围之内

日期检查

  • @Past 验证 Date 和 Calendar 对象是否在当前时间之前,验证成立的话被注释的元素一定是一个过去的日期
  • @Future 验证 Date 和 Calendar 对象是否在当前时间之后 ,验证成立的话被注释的元素一定是一个将来的日期
  • @Pattern 验证String对象是否符合正则表达式的规则

 Hibernate Validator 附加的 constraint

 二、@Conditional派生注解

此图来源于SpringBoot:配置文件及自动配置原理 - 梁大白 - 博客园 (cnblogs.com)

 三、thymeleaf模板引擎

导入依赖

<!--        thymeleaf-->
        <dependency>
            <groupId>org.thymeleaf.extras</groupId>
            <artifactId>thymeleaf-extras-springsecurity5</artifactId>
        </dependency>
        <dependency>
            <groupId>org.thymeleaf.extras</groupId>
            <artifactId>thymeleaf-extras-java8time</artifactId>
        </dependency>

结论:使用thymeleaf的时候,只需要导入对应的依赖即可,此时我们将html页面放在templates目录下。

html页面里面需要导入头文件:xmlns:th="http://www.thymeleaf.org"

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<!--所有的html元素都可以被thymeleaf替换;th:元素名-->
<div th:text="${msg}"></div>
</body>
</html>

四、thymeleaf语法

  • th:text:文本替换;
  • th:utext:支持html的文本替换。
  • th:value:属性赋值  
  • th:each:遍历循环元素
  • th:if:判断条件,类似的还有th:unless,th:switch,th:case
  • th:insert:代码块引入,类似的还有th:replace,th:include,常用于公共代码块提取的场景
  • th:fragment:定义代码块,方便被th:insert引用
  •  th:object:声明变量,一般和*{}一起配合使用,达到偷懒的效果。
  • th:attr:设置标签属性,多个属性可以用逗号分隔
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

来一沓Java

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值