前言
上节讲了缓存数据库
redis
的使用,在实际工作中,一般上在系统或者应用间通信或者进行异步通知(登录后发送短信或者邮件等)时,都会使用消息队列进行解决此业务场景的解耦问题。这章节讲解下消息队列RabbitMQ
的集成和简单使用示例。
上节讲了缓存数据库
redis
的使用,在实际工作中,一般上在系统或者应用间通信或者进行异步通知(登录后发送短信或者邮件等)时,都会使用消息队列进行解决此业务场景的解耦问题。这章节讲解下消息队列RabbitMQ
的集成和简单使用示例。
今天原本想讲解
SpringBoot集成RabbitMQ
的,临近开始写时才发现家里的电脑根本没有安装RabbitMQ
呀。这下只好利用已有的阿里云服务器,直接Docker
安装一下了,顺道记录下,算是个积累。
上几节讲了利用
Mybatis-Plus
这个第三方的ORM框架进行数据库访问,在实际工作中,在存储一些非结构化或者缓存一些临时数据及热点数据时,一般上都会用上mongodb
和redis
进行这方面的需求。所以这一章节准备讲下缓存数据库Redis
的集成,同时会介绍下基于Redis
和注解驱动的Spring Cache
的简单使用。
前一章节介绍了
mybatisPlus
的集成和简单使用,本章节开始接着上一章节的用户表,进行Swagger2
的集成。现在都奉行前后端分离
开发和微服务大行其道,分微服务及前后端分离后,前后端开发的沟通成本就增加了。所以一款强大的RESTful API
文档就至关重要了。而目前在后端领域,基本上是Swagger
的天下了。
本章节开始介绍
数据访问
方面的相关知识点。对于后端开发者而言,和数据库打交道是每天都在进行的,所以一个好用的ORM框架
是很有必要的。目前,绝大部分公司都选择MyBatis
框架作为底层数据库持久化框架。
在web应用中,请求处理时,出现异常是非常常见的。所以当应用出现各类异常时,进行异常的捕获或者二次处理(比如sql异常正常是不能外抛)是非常必要的,比如在开发对外api服务时,约定了响应的参数格式,如
respCode
、respMsg
,调用方根据错误码进行自己的业务逻辑。本章节就重点讲解下统一异常和数据校验处理。
在实际开发过程中,经常会碰见一些比如系统启动初始化信息、统计在线人数、在线用户数、过滤敏高词汇、访问权限控制(URL级别)等业务需求。这些对于业务来说一般上是无关的,业务方是无需关心的,业务只需要关心自己内部业务的事情。所以一般上实现以上的功能,都会或多或少的用到今天准备讲解的
过滤器
、监听器
、拦截器
来实现以上功能。
之前几个章节,大部分都是算介绍springboot的一些外围配置,比如日志
配置等。这章节开始,开始总结一些关于springboot
的综合开发的知识点。由于SpringBoot
本身是基于Spring
和SpringMvc
等各类spring
家族的一个解决方案,可快速进行集合。故相关知识点其实大部分都是基于spring
或者springmvc
既有的知识点的。本章节,主要讲解的是关于web开发
及springboot
独有的一些常用注解进行说明。
在前几天,在阿里云的ECS上部署一个docker应用时,发现部署的应用在请求第三方应用时,一直出现超时的异常提示,刚开始以为是第三方应用系统的问题(此系统无赖躺枪,反正也不是一次两次了,多躺几次也就习惯了~),最后发现是容器的时间和数组的时间不一致,差了八小时。在上网查阅相关资料后,问题解决。这里就简单做个记录下。
在开发应用时,常用部署的应用是多个的,比如:开发、测试、联调、生产等不同的应用环境,这些应用环境都对应不同的配置项,比如
swagger
一般上在生产时是关闭的;不同环境数据库地址、端口号等都是不尽相同的,要是没有多环境的自由切换,部署起来是很繁琐也容易出错的。