Spring Boot 中的异步调用

2018-09-28

通常我们开发的程序都是同步调用的,即程序按照代码的顺序一行一行的逐步往下执行,每一行代码都必须等待上一行代码执行完毕才能开始执行。而异步编程则没有这个限制,代码的调用不再是阻塞的。所以在一些情景下,通过异步编程可以提高效率,提升接口的吞吐量。这节将介绍如何在Spring Boot中进行异步编程。

Read More »

Spring Boot 中处理跨域

2018-09-22

HTML 5中新增的跨域资源访问(Cross-Origin Resource Sharing)特性可以让我们在开发后端系统的时候决定资源是否允许被跨域访问。所谓跨域指的是域名不同或者端口不同或者协议不同,比如当从mrbrid.cc网站访问mrbird.cc:8080网站资源就会存在跨域问题。Spring从4.2版本开始就提供了跨域的支持,开箱即用。这里介绍如何在Spring Boot开发中解决跨域的问题,主要分为注解驱动和接口编程的方式。

Read More »

自定义Spring Boot 内容协商

2018-09-16

内容协商机制是指客户端和服务器端就响应的资源内容进行交涉,然后提供给客户端最为适合的资源。内容协商会以响应资源的语言、字符集、编码方式等作为判断的基准。HTTP请求头中Content-Type,Accept等内容就是内容协商判断的标准。在Spring Boot中,一个完整的内容协商过程如下图所示:

Read More »

Spring Boot配合Hibernate Validator参数校验

2018-09-14

Spring Boot中结合Hibernate Validator可以实现优雅的参数校验,而不必在业务代码中写一大堆的参数校验逻辑。Hibernate Validator的基本使用可以参考Spring表单校验,这里介绍一种结合全局异常捕获的方式来实现低耦合简洁的参数校验解决方案。

Read More »

深入学习Spring Boot中的SpringApplication

2018-09-04

在Spring Boot的入口类中,我们通常是通过调用SpringApplication的run方法来启动Spring Boot项目。这节我们来深入学习下SpringApplication的一些细节。

自定义SpringApplication

默认的我们都是直接通过SpringApplication的run方法来直接启动Spring Boot,其实我们可以通过一些API来调整某些行为。

Read More »


深入学习Spring Boot自动装配

2018-09-02

模式注解

Stereotype Annotation俗称为模式注解,Spring中常见的模式注解有@Service,@Repository,@Controller等,它们都“派生”自@Component注解。我们都知道,凡是被@Component标注的类都会被Spring扫描并纳入到IOC容器中,那么由@Component派生的注解所标注的类也会被扫描到IOC容器中。下面我们主要通过自定义模式注解来了解@Component的“派生性”和“层次性”。

Read More »

深入学习Spring Bean生命周期

2018-08-05

所谓Spring Bean的生命周期指的是Bean从创建到初始化再到销毁的过程,这个过程由IOC容器管理。一个完整的Bean生命周期可以参考Spring Bean生命周期。这里我们主要记录一些和Bean生命周期相关的细节。

Bean的初始化和销毁

在整个生命周期过程中,我们可以自定义Bean的初始化和销毁钩子函数,当Bean的生命周期到达相应的阶段的时候,Spring会调用我们自定义的Bean的初始化和销毁方法。自定义Bean初始化和销毁方法有多种方式,下面逐一介绍。

Read More »

深入学习Spring组件注册

2018-08-01

接触过Spring的同学肯定都听过IOC。在传统的Java编程中,当需要用到某个对象的时候,我们都是主动显式创建一个对象实例(new)。使用Spring后就不需要这样做了,因为Spring会帮我们在需要用到某些对象的地方自动注入该对象,而无须我们自己去创建。这种模式俗称控制反转,即IOC(Inversion of Control)。那么Spring是从什么地方获取到我们所需要的对象呢?其实Spring给我们提供了一个IOC容器,里面管理着所有我们需要的对象,组件注册就是我们去告诉Spring哪些类需要交给IOC容器管理。

这里主要记录组件注册的一些细节。

Read More »


1…131415…45
Hosted  by  Coding Pages
MrBird
MrBird

A simple blog, code repository, just keep blogging

14 Archives 2 Labels
  • 🏠 Home
  • 📦 Archives
  • 🔖 Labels
  • 👬 Friends
  • 🔍 Search
  •   UV    PV 
    0