SpringBoot2.x使用Redis缓存数据
自从SpringBoot
升级到了2.0
版本后集成Redis
作为缓存就更为简单了,我们只需要配置Redis
相关的链接信息以及使用注解@EnableCaching
开启缓存,这样我们就直接可以在项目内使用缓存相关的内容。
自从SpringBoot
升级到了2.0
版本后集成Redis
作为缓存就更为简单了,我们只需要配置Redis
相关的链接信息以及使用注解@EnableCaching
开启缓存,这样我们就直接可以在项目内使用缓存相关的内容。
初升级SpringBoot2.0
版本,在已经使用SpringBoot1.x
的系统内还是存在一些兼容性的问题,有很多变化!!!也存在一些过时的方法、配置文件信息以及类,我们在之前版本的SpringBoot1.x
中可以使用WebMvcConfigurerAdapter
抽象类来处理SpringMVC
相关的配置,由于SpringBoot2.0
版本最低支持 JDK1.8
环境,在JDK1.8
引入了特殊的关键字default
,该关键字配置在interface
接口的方法时子类可以不去实现该方法,相当于抽象类内已经实现的接口方法。
在这次SpringBoot
升级后,之前的系统内使用实体传输受到了限制,如果使用SpringBoot
默认的序列化方式不会出现信任package
的问题,之所以出现这个问题是因为项目使用fastjson
方式进行类的序列化
已经反序列化
,在之前SpringBoot 1.5.10
版本的时候 RabbitMQ
依赖内的DefaultClassMapper
类在构造函数内配置*
,表示信任项目内的所有package
,在SpringBoot 2.0.0
版本时,DefaultClassMapper
类源码构造函数进行了修改,不再信任全部package
而是仅仅信任java.util
、java.lang
。
在新版本的SpringBoot2.0
发布后,急迫尝鲜的我将相关的项目已经更换为最新版本,在SpringBoot
源码GitHub
看到更新日志,表明了针对Quartz
新版本进行了 AutoConfiguration
自动化配置,省去了很多繁琐的配置。
在2018-3-1
日SpringBoot
官方发版了2.0.0.RELEASE
最新版本,新版本完全基于Spring5.0
来构建,JDK
最低支持也从原来的1.6
也改成了1.8
,不再兼容1.8
以下的版本,更多新特性请查看官方文档。
在我们平时的项目研发过程中,异常一般都是程序员最为头疼的问题,异常的抛出、捕获、处理等既涉及事务回滚,还会涉及返回前端消息提醒信息。那么我们怎么设计可以解决上面的两个的痛点呢?我们可不可以统一处理业务逻辑然后给出前端对应的异常提醒内容呢?
本章内容比较偏向系统设计方面,简单的封装就可以应用到系统中使用,从而提高我们的编码效率以及代码的可读性。统一资源在系统内是不可避免的模块,资源分类也有很多种,比较常见如:图片资源、文本资源、视频资源等,那么资源统一处理的好处是什么呢?大家有可能会有疑问,我把资源存放到业务表内岂不更好吗?这样查询起来也方便,并不需要关联资源信息表!当然设计不分好坏,只有更适合、更简单!接下来带着疑问进入本章的内容。
我们在之前的两个章节第四十一章: 基于SpringBoot & RabbitMQ完成DirectExchange分布式消息消费、第四十二章: 基于SpringBoot & RabbitMQ完成DirectExchange分布式消息多消费者消费提高了RabbitMQ
消息队列的DirectExchange
交换类型的消息消费,我们之前的章节提到了RabbitMQ
比较常用的交换类型有三种,我们今天来看看TopicExchange
主题交换类型。