随笔分类 -  spring全家桶

摘要:随着开发时间积累,一个项目会越来越大,同时表结构也越来越多,管理起来比较复杂,特别是当想要把一个答的项目拆分成多个小项目时,表结构拆分会耗很大的精力;如果使用LiquiBase对数据库进行管理,那么就会大大提升迁移效率,还是以刚才的拆分项目为例,如果使用Liquibase,则只需要将指定模块的表文件 阅读全文
posted @ 2019-10-23 20:44 李聪龙 阅读(1784) 评论(0) 推荐(0)
摘要:防止重复提交,主要是使用锁的形式来处理,如果是单机部署,可以使用本地缓存锁(Guava)即可,如果是分布式部署,则需要使用分布式锁(可以使用zk分布式锁或者redis分布式锁),本文的分布式锁以redis分布式锁为例。 一、本地锁(Guava) 1、导入依赖 2、自定义本地锁注解 3、本地锁注解实现 阅读全文
posted @ 2019-10-23 19:03 李聪龙 阅读(13079) 评论(0) 推荐(1)
摘要:本文简单说明一下元注解,然后对元注解中的@Retention做深入的讨论,在文章最后使用元注解写一个自定义注解来结尾。 一、结论: @Target:注解的作用目标 @Target(ElementType.TYPE)——接口、类、枚举、注解 @Target(ElementType.FIELD)——字段 阅读全文
posted @ 2019-10-22 17:05 李聪龙 阅读(1562) 评论(0) 推荐(0)
摘要:1、引入依赖 2、JSR-303 注解介绍 这里只列举了 javax.validation 包下的注解,同理在 spring-boot-starter-web 包中也存在 hibernate-validator 验证包,里面包含了一些 javax.validation 没有的注解,有兴趣的可以看看 阅读全文
posted @ 2019-10-22 16:27 李聪龙 阅读(2482) 评论(0) 推荐(0)
摘要:先上代码,不捕获异常和手动捕获异常处理: 其中的各种问题就不再多说了,由于各种问题,因此需要对异常进行统一捕获 1、导入依赖 2、自定义异常类 3、定义异常模板 4、异常拦截器 此步时重点,需要特殊说明一下, @ControllerAdvice 捕获 Controller 层抛出的异常,如果添加 @ 阅读全文
posted @ 2019-10-21 21:19 李聪龙 阅读(471) 评论(0) 推荐(0)
摘要:1、导包 由于使用thymeleaf模板引擎进行页面展示,因此需要导入thymeleaf启动器和web启动器 2、配置文件 3、thymeleaf页面 4、Controller 5、测试 http://localhost:8080/test/uploadIndex 阅读全文
posted @ 2019-10-21 20:11 李聪龙 阅读(279) 评论(0) 推荐(0)
摘要:1、导包 2、Controller中对视图的处理 3、页面获取视图的值 文件要创建在resource/templates目录下 阅读全文
posted @ 2019-10-21 19:26 李聪龙 阅读(150) 评论(0) 推荐(0)
摘要:实现定时任务有多种形式: Timer(强烈不建议使用): JDK自带的java.util.Timer;通过调度java.util.TimerTask的方式 让程序按照某一个频度执行,但不能在指定时间运行。 一般用的较少。 ScheduledExecutorService(建议不使用): JDK1.5 阅读全文
posted @ 2019-10-21 18:02 李聪龙 阅读(335) 评论(0) 推荐(0)
摘要:actuator是spring boot项目中非常强大一个功能,有助于对应用程序进行监视和管理,通过 restful api 请求来监管、审计、收集应用的运行情况,针对微服务而言它是必不可少的一个环节,本文只介绍如何集成actuator,及actuator最最简单的使用,对于自定义endPoint及 阅读全文
posted @ 2019-10-21 15:18 李聪龙 阅读(718) 评论(0) 推荐(0)
摘要:一、简介 Spring Cache是Spring对缓存的封装,适用于 EHCache、Redis、Guava等缓存技术。 二、作用 主要是可以使用注解的方式来处理缓存,例如,我们使用redis缓存时,查询数据,如果查询到,会判断查到的结果是否为空,如果不为空,则会将结果存入redis缓存,此处需要一 阅读全文
posted @ 2019-10-18 15:46 李聪龙 阅读(509) 评论(0) 推荐(0)
摘要:一、SpringBoot--整合Lettuce redis 首先解释一下Lettuce客户端: Lettuce 和 Jedis 的都是连接Redis Server的客户端程序。Jedis在实现上是直连redis server,多线程环境下非线程安全,除非使用连接池,为每个Jedis实例增加物理连接。 阅读全文
posted @ 2019-10-17 21:15 李聪龙 阅读(2735) 评论(0) 推荐(0)
摘要:1、导入分页插件包和jpa包 2、增加分页配置 配置说明: mapper.enum-as-simple-type: 枚举按简单类型处理,如果有枚举字段则需要加上该配置才会做映射 mapper.not-empty: 设置以后,会去判断 insert 和 update 中符串类型!=’’“ pagehe 阅读全文
posted @ 2019-10-17 18:12 李聪龙 阅读(475) 评论(0) 推荐(0)
摘要:1、添加Mybatis依赖 2、创建实体对象 3、添加mybatis配置 4、创建Mybatis接口及对应mapper配置 此处说明一下,对于UserMapper.java列举了两种配置方式,第一种是直接使用注解的方式进行处理,第二种是使用xml的方式配置。 5、创建Controller、Servi 阅读全文
posted @ 2019-10-17 14:26 李聪龙 阅读(185) 评论(0) 推荐(0)
摘要:1、导入包 导入mysql和springJDBC的关系依赖包 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency 阅读全文
posted @ 2019-10-17 09:38 李聪龙 阅读(18334) 评论(0) 推荐(0)
摘要:在使用配置类前,先引入配置文件提示的依赖。是否添加该配置对程序无影响,只是在写配置文件时可以有提示信息。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-pr 阅读全文
posted @ 2019-10-15 16:51 李聪龙 阅读(213) 评论(0) 推荐(0)
摘要:一、 作用: 1. 接口的文档在线自动生成。 2. 接口测试。 二、模块介绍 Swagger是一组开源项目,其中主要要项目及功能如下: 1、Swagger Codegen: 通过Codegen 可以将描述文件生成html格式和cwiki形式的接口文档,同时也能生成多钟语言的服务端和客户端的代码。支持 阅读全文
posted @ 2019-09-06 19:48 李聪龙 阅读(23260) 评论(3) 推荐(1)