SpringBoot中处理校验逻辑的两种方式:Hibernate Validator+全局异常处理
最近正在开发一个知识库学习网站编程喵🐱,需要对请求参数进行校验,比如说非空啊、长度限制啊等等,可选的解决方案有两种: 一种是用 Hibernate Validator 来处理; 一种是用全局异常来处理; 两种方式,我们一一来实践体验一下。 一、Hibernate Validator Spring Boot 已经内置了 Hibernate Validator

沉默王二2022年6月14日
大约 6 分钟
一键部署 Spring Boot 到远程 Docker 容器
关于 Docker Docker 是用 go 语言编写的,这也是 go 语言近些年越来越火的原因之一。关于 Docker,有 3 个重要的概念需要了解下: image:镜像,一个文件,用来创建容器;如果你有 Windows 装机经历,那可以很好理解镜像这个词的含义,反正我年少的时候没少把 Windows 镜像刻盘重装系统。; container:容器,一个可

沉默王二2022年6月13日
大约 8 分钟
Spring Boot 整合 MyBatis
ORM 框架的本质是简化操作数据库的编码工作,常用的框架有两个,一个是可以灵活执行动态 SQL 的 MyBatis;一个是崇尚不用写 SQL 的 Hibernate。前者互联网行业用的多,后者传统行业用的多。 Hibernate 的特点是所有的 SQL 通过 Java 代码生成,发展到最顶端的就是 Spring Data JPA,基本上根据方法名就可以生成对

沉默王二2022年6月13日
大约 7 分钟
Spring Boot 整合Quartz实现编程喵定时发布文章
前言 编程喵🐱实战项目中需要做一个定时发布文章的功能,于是我就很自然地想到了 Quartz,这是一个老而弥坚的开源任务调度框架。 记得我在 14 年开发大宗期货交易平台的时候就用到了它,每天凌晨定时需要统计一波交易数据,生成日报报表,「配合 Cron 表达式」(上一节有讲)用起来非常自洽。 可惜后来平台稳定了,新的政策出来了,直接把大宗期货交易灭了。于是我

沉默王二2022年6月13日
大约 8 分钟
编程喵🐱实战项目如何在云服务器上跑起来?
云服务器 我们需要一台云服务器,我之前白嫖过一台丐版的,1 核1G 内存,并且已经安装了宝塔面板(安装教程戳链接🔗)。 这是从宝塔面板首页看到的服务器配置详情。 马上 618 了,阿里云服务器也开始整活了,需要白嫖的小伙伴可以先加群。 MySQL 登录宝塔面板,点击「数据库」→「添加数据库」,填写数据库名,宝塔面板会自动帮我们创建一个和数据库同名的账号,注

沉默王二2022年6月10日
大约 9 分钟
过滤器、拦截器、监听器
前言 先说作用。 过滤器(Filter):当有一堆请求,只希望符合预期的请求进来。; 拦截器(Interceptor):想要干涉预期的请求。; 监听器(Listener):想要监听这些请求具体做了什么。; 再说区别。 过滤器是在请求进入容器后,但还没有进入 Servlet 之前进行预处理的。如下图所示。 拦截器是在请求进入控制器(Controller) 之前

沉默王二2022年5月21日
大约 6 分钟
Spring Boot 整合 Logback 定制日志框架
关于 Logback 日志系统是一个线上项目必备的素质之一,代表性的日志框架 Log4j、SLF4J、Logback 这哥仨竟然是亲兄弟,他们有一个亲爹,那就是巨佬 Ceki Gulcu。 由于 Spring Boot 的默认日志框架选用的 Logback,再加上 Log4j2 之前爆过严重的漏洞,所以我们这次就只关注 Logback。 1)Logback

沉默王二2022年5月21日
大约 8 分钟
Spring Boot 整合 Thymeleaf 模板引擎
关于 Thymeleaf Thymeleaf 是一个优秀的、面向 Java 的 HTML 页面模板,具有丰富的标签语言和函数。在 JSP 被淘汰之后,Thymeleaf 取而代之成为了 Spring Boot 推荐的模板引擎。 Thymeleaf 在有网和没网的环境下都可以正常工作,既能让美工在浏览器中查看页面的静态效果,也能让程序员在服务器查看带数据的动态

沉默王二2022年5月21日
大约 3 分钟
2
3