Spring Boot 2系列(二十一):RestTemplate 远程调用 REST 服务

  互联网项目经常存在远程调用的情况,如果调用的是 REST 远程服务,可以使用 Spring Web 提供的RestTemplate.

  RestTemplate 是原始的 Spring REST 同步请求客户端,通过 HTTP 客户端提供更高级别的 API,使得调用 REST 端点变更更容易。

  Spring Boot 没有自动配置 RestTemplate,但自动注册了 RestTemplateBuilder Bean,用于构建 RestTemplate,并且 HttpMessageConverters 会自动应用到 RestTemplate 实例中。

  如果是 WebFlux 项目,可以使用 WebClient 来远程调用 REST 服务,相比 RestTemplate,WebClient 拥有更多的功能,并且是完全响应式, 后续再对 WebClient 进行详解。

  Spring Boot > Calling REST Services with RestTemplateSpring Framework > Using RestTemplate

阅读更多

Spring Boot 2系列(二十): 配置文件加载及参数绑定

  Spring Boot提倡的是零配置,提供了强大的自动配置功能;只要装配了相应的功能,默认就会启用通用的配置(习惯优于配置)。

  但实际开发中,除了默认的配置外,根据需求难免需要定制配置文件;SpringBoot默认的配置文件application.properties会被自动加载,但定制的配置文件则需要我们自己手动加载。

  SpringBoot加载配置文件是将文件内容读取到Spring容器中,目的是为了给Spring容器中的上下文对象调用,达到一次加载,随处调用。

阅读更多

Spring Boot 2系列(十九):Spring JDBC JdbcTemplate 集成与使用

  JdbcTemplate 是由 Spring Data JDBC 项目提供的,Spring Data JDBC 可以轻松实现基于 JDBC 的存储库,处理对基于 JDBC 的数据访问层的增强支持,

  Spring Boot 为使用 JDBC 提供了自动配置,将 JdbcTemplate 注册了为 Bean,自动配置了数据源,JDBC 自动配置类:org.springframework.boot.autoconfigure.jdbc.JdbcTemplateAutoConfiguration

  JdbcTemplate 类是 JDBC 核心包中的核心类,执行核心 JDBC 工作汉,简化了 JDBC 的使用。

  Spring Framework Documentation > Data Access with JDBCSpring Data JDBC 项目Spring Boot Using Jdbc Template

阅读更多

Spring Boot 2系列(十八):Spring Boot的测试

  Spring Boot,每次新建项目都会自动加上spring-boot-starter-test的依赖,同时在src/test/java生成当前项目的测试类。

  Spring Boot 的测试由两个模块提供支持:spring-boot-test 提供测试的核心功能,spring-boot-test-autoconfigure 提供测试的自动配置。

  Spring Boot 提供了 @SpringBootTest注解, 用于替换 spring-test 的 @ContextConfiguration注解, 该注解通过 SpringApplication 创建用于测试的 ApplicationContext, 就可以调用 Spring Boot 的功能。

  Spring Boot 关于使用 Mock 测试 Spring MVC 可以参考SpringMVC使用MockMvc和Junit进行单元测试官方文档-测试特性(boot-features-testing)

阅读更多

Docker系列(四):Dockerfile 配置详解

Docker 通过读取 Dockerfile文件中的指令自动构建镜像,Docker 镜像包含只读层,每一层就代表 Dockerfile 中的一条指令,层与层是堆叠的,每一层是与前一层的变化的增量。使用 docker build命令,用户可以创建一个自动构建,连续执行多条命令行的指令。

官方参考:Dockerfile官方最佳实践, Docker 中文站

阅读更多

Spring Boot 2系列(十七):Docker部署Spring Boot应用

  现在的互联网应用系统在需要分布式部署时,会遇到环境配置的问题,在容器技术出来之前,需要在每台服务器系统上配置应用系统的运行环境,容易出错或环境不一致导致各种问题。

  容器技术的出现很好的解决了环境配置问题,配置一次应用运行环境,打成镜像,到处部署使用,当然还有其它的用途。

阅读更多

Spring Boot 2系列(十六):Spring Boot Admin - Actuator 监控管理 Web 框架

  Spring Boot 提供了 Actuator 组件来监控应用运行情况,而 Actuator 监控的端点返回的只是 json 格式的数据,可以集成 Spring Boot Admin 框架通过 UI 来展示数据。。

  Spring Boot Admin 组件包含 服务端客户端,服务端提供了 Web 视图页面包含了图表,可以更方便更直观的了解应用运行情况,客户端注册到服务端。

  GitHub > Spring Boot Admin ,Spring Boot Admin 2.1.4 参考指南2.0.5 参考指南 ,建议多看官网技术文档。

阅读更多