如何在SpringBoot启动时执行初始化操作,两个简单接口就可以实现
<h2><a href="#一-概述">#</a> (一)概述 {#一-概述}</h2> <p>最近遇到一个功能点,数据库中一张很简单的表有一千多条数据,这里的数据主要做到了值域映射的作用,简单来讲就是我可以通过中文名拿到数据库中对应的code值。原本的实现方式是每次用到之后去查一次sql,虽然不会...
51工具盒子
<h2><a href="#一-概述">#</a> (一)概述 {#一-概述}</h2> <p>最近遇到一个功能点,数据库中一张很简单的表有一千多条数据,这里的数据主要做到了值域映射的作用,简单来讲就是我可以通过中文名拿到数据库中对应的code值。原本的实现方式是每次用到之后去查一次sql,虽然不会...
<h2><a href="#一-异步任务">#</a> (一)异步任务 {#一-异步任务}</h2> <p>异步任务的需求在实际开发场景中经常遇到,Java实现异步的方式有很多,比如多线程实现异步。在SpringBoot中,实现异步任务只需要增加两个注解就可以实现。当前类添加@Async注解,启动类...
[#](#一-概述) (一)概述 {#一-概述} ------------------------ SpringBoot以其自动装配的能力被广泛应用,我们在写代码时肯定遇到过很多spring-boot-starter命名的依赖,比如spring-boot-starter-web,在pom文件中引入这些starter依赖后,SpringBoot就能通过自动装配的技术扫描到这些类...
<h2><a href="#前言">#</a> 前言 {#前言}</h2> <p>前几天有人问了我这样一个问题:在使用多线程的时候,发现有一些数据会在进入到子线程之后丢失,比如用户信息,又比如记录日志的TraceId等等。这个子线程数据丢失的问题我早前也遇到过,刚好来讲讲解决方案。</p>...
<h2><a href="#前言">#</a> 前言 {#前言}</h2> <p>上一篇文章介绍了如何使用MyBatis的Plugin,来实现SQL的日志打印,这篇文章介绍一下如何将SpringBoot的请求日志,优雅地打印到日志中。 实现效果是这样的,只需要在需要打印的接口上加上一个注解,或者增加...
<h2><a href="#一-什么是粘包、半包">#</a> (一)什么是粘包、半包 {#一-什么是粘包、半包}</h2> <p>在实际的网络开发中或者在面试中,最开始使用TCP协议时经常会碰上粘包和半包的情况,因此我们有必要了解一下什么是粘包,什么是半包,以及如何去解决。</p> &...
[#](#一-什么是netty) (一)什么是netty {#一-什么是netty} ------------------------------------------ Netty是一个**异步的,基于事件驱动的网络应用框架** ,用于快速开发可维护、高性能的**网络服务器和客户端** 。Netty的应用十分广泛,可以说主流的框架中,如果有网络方面的需求,一般用的都是net...
<h2><a href="#一-hystrix的介绍">#</a> (一)Hystrix的介绍 {#一-hystrix的介绍}</h2> <p>微服务的调用有时候会存在连环调用,即微服务A调用微服务B,微服务B调用微服务C。此时当微服务C不可用的时候,所有的请求都会阻塞到微服务B,可能会导致微服务B...
[#](#一-什么是微服务网关) (一)什么是微服务网关 {#一-什么是微服务网关} ------------------------------------------ 后端写完所有的微服务之后,最终是要交给前端去调用。我们都知道每个微服务都有各自的端口号,如果前端直接通过IP加端口的方式去调用微服务会很麻烦。如果想对请求增加限制也会变得十分困难。这个时候微服务网关就出现了...
[#](#一-前言) (一)前言 {#一-前言} ------------------------ 如今微服务架构已经被炒的如火如荼,互联网公司况且不说,连我接触的一个国企现在都开始往微服务分布式架构发展。因此,我会通过最近几篇博客介绍目前比较流行的一些微服务组件,其实微服务并没有那么难。如果在跑项目过程中,想要知道整个项目的所有依赖pom文件或者任何疑问,**直接联系我即可...