
Springboot/Springcloud
文章平均质量分 51
KnifeBlade
不要只是看起来很努力。
展开
-
Springboot中读取配置信息的三种方式
1、通过@Value("${param}")方式读取:application.yml文件中定义配置项如下: user: name: lyq在类中通过 @Value("${user.name}") 即可读取到配置的值。2、将配置信息映射为Java Bean:application.xml: user: name: lyq age: 18---启动类添加注解:@En...原创 2019-09-18 10:35:08 · 2174 阅读 · 0 评论 -
Spring中的条件注解
Spring中提供了多种条件注解以实现在满足特定条件的时候才向Sping容器中注入指定的bean;Springboot中自动配置的原理也是基于各种条件注解,当我们引入某个依赖导致满足了注入某些特定bean的条件,这些bean就会被自动注入Spring容器中供我们使用。@Conditional:该注解通常与@Configuration注解组合使用,当满足特定条件时才将该配置类中申明的bean...原创 2019-09-17 11:37:56 · 510 阅读 · 0 评论 -
Springboot中通过@import注解导入Java类声明为bean的三种方式
直接导入普通Java类: public class Car1 { public void say(){ System.out.println("i am car1"); } } --- @Configuration @Import(value = {Car1.class}) public class AutoConfig { } --- ...原创 2019-09-17 10:03:18 · 2026 阅读 · 0 评论 -
搭建基于Rabbitmq + ELK分布式日志收集平台
1、sudo docker run -d -p 9200:9200 -p 9300:9300 --name es -e "discovery.type=single-node" elasticsearch:7.3.12、sudo docker run -d -p 5601:5601 --link es -e ELASTICSEARCH_URL=http://es:9200 --name k...原创 2019-09-12 16:56:20 · 3508 阅读 · 1 评论 -
springboot中的异常捕获与处理
服务端对外暴露的接口不可避免的会出现异常,无论是系统异常还是业务异常,出现异常后如何处理对用户提供友好的提示信息是我们所必须处理的。以下提供借助spring注解@ControllerAdvice实现对控制层、业务层异常的统一处理。(1)在前后端分离的开发模式中,后端不再作视图跳转,仅用作为前端返回数据,我们多使用@Controller + @ResponseBody或直接使用@RestCo...原创 2019-08-01 00:12:24 · 3676 阅读 · 0 评论 -
springboot2.X引入actuator依赖无法查看endpoint
springboot1.X中引入actuator依赖后我们就可以通过对应的endpoint查看与应用相关的信息,springboot2.X以后需进行如下配置才可访问:management: endpoints: web: base-path: /actuator exposure: include: "*"...原创 2019-06-22 17:50:33 · 2815 阅读 · 0 评论 -
springboot异步任务
springboot中默认所有的执行都是同步的,我们可以通过注解的形式很便捷的实现任务的异步执行。所谓的异步就是在主线程之外开启一条子线程来执行任务,我们可以使用线程池来实现对异步任务的管理。(1)创建异步任务配置类,初始化线程池: package com.blade.demo.config; import org.springframework.context.annotation...原创 2019-06-11 21:31:02 · 1049 阅读 · 0 评论 -
SpringCloud中的概念(长期更新)
(1)微服务:一个独立运行的单元组件,每个单元组件运行在独立的进程中;组件之间的通信采用轻量级的协议,即采用HTTP Restful API通信机制进行通信。...原创 2018-09-27 11:06:16 · 740 阅读 · 0 评论 -
SpringCloud——hystrix熔断与监控
在微服务中由于细粒度的拆分,通常一个业务逻辑可能会有一条长长的服务调用链,一旦基础服务出现了故障就会引起“级联故障”,从而产生“雪崩效应”。通过集成hystrix熔断器,可以在服务调用发生故障时按照我们预定的方式进行回退以及延时,从而避免雪崩。 在服务中引入hystrix只需要在pom文件中引入对hystrix的依赖,并在启动类添加“@EnableHystrix”注...原创 2018-09-09 17:14:14 · 5179 阅读 · 0 评论 -
SpringCloud——服务调用及自定义配置
Ribbon+RestTemplate:(一)使用方式: 引入ribbon依赖; 在启动类中实例化restTemplate实例并注入: @Bean @LoadBalanced //负载均衡器,实现请求的均匀分发 RestTemplate restTemplate(){ return new RestTemplate(); ...原创 2018-09-08 21:39:59 · 1240 阅读 · 1 评论 -
SpringCloud——服务注册与发现
写在开头:网上关于springcloud的教程已经很多了,本系列博文不会去大家如何从头构建一个项目,只是对SpringCloud中的各个知识点做详细的阐述,同时把一些细节提供给大家作参考。(1)各个微服务提供方与服务发现组件之间使用一定的机制(心跳机制)进行通信,以保证服务的可用性。默认情况下注册中心每隔30秒向服务提供方发送一次请求来确保服务的可用;如果超过90秒未得到响应,则判定该服务...原创 2018-07-19 20:55:18 · 301 阅读 · 0 评论 -
使用docker容器运行springboot项目
(1)在pom文件中添加docker插件并进行相关配置: 注: imageName最好不用使用大写字母,有可能会报错; dockerDirectory为Dockerfile文件的位置; 这里使用的项目是springcloud中的注册中心,仅仅进行了eureka.server的简单配置;(2)编写Dockerfile文件:#指定基础镜像FROM frolvla...原创 2018-07-23 10:39:19 · 2249 阅读 · 0 评论 -
springboot中使用@Transcational遇到的问题
在springboot中使用@Transactional注解做事务管理时,项目启动失败,报如下错误: 经查阅资料得知原因在于:java的代理机制主要有JDK动态代理和CGLIB,加了@Transaction的类会自动开启动态代理,上述信息是说使用了jdk动态代理的原因,解决方式是设置@EnableTransactionManagement(proxyT...原创 2018-06-21 17:43:46 · 1063 阅读 · 0 评论 -
SpringBoot自动配置原理及自定义启动器依赖
Springboot的出现为基于Spring的企业级开发带来了极大的便利,引入相关的依赖无需做多余的配置即可使用其功能,这便依赖于其自动配置的特性。下面追踪源码理解深入理解Springboot自动配置原理。Springboot的自动配置属性依赖于注解@EnableAutoConfiguration(@SpringBootApplication组合注解之一):该注解的定义中,除了元注解还剩...原创 2019-09-20 11:10:11 · 1281 阅读 · 0 评论