![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Springboot
文章平均质量分 92
luckykapok918
这个作者很懒,什么都没留下…
展开
-
SpringBoot实践之---@EnableAsync和@Async 线程池自定义和使用
自定义线程池的配置类 AsyncConfigimport org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.core.task.TaskExecutor;import...原创 2019-11-06 16:20:41 · 1884 阅读 · 0 评论 -
SpringBoot实践之---记录HTTP请求日志
SpringBoot记录HTTP请求日志1、需求解读需求:框架需要记录每一个HTTP请求的信息,包括请求路径、请求参数、响应状态、返回参数、请求耗时等信息。需求解读:Springboot框架提供了多种方式来拦截HTTP请求和响应,只要能够获取到对应的request和response,就可以通过相应的API来获取所需要的信息。需要注意的是,请求参数可以分为两部分,一部分是GE...转载 2019-11-01 11:40:56 · 2214 阅读 · 0 评论 -
spring boot / cloud 使用@Retryable来进行重处理
使用场景 在实际工作中,重处理是一个非常常见的场景,比如:调用第三方接口或者使用mq时发送消息失败,调用远程服务失败,争抢锁失败,等等,这些错误可能是因为网络波动造成的,等待过后重处理就能成功.通常来说,会用try/catch,while循环之类的语法来进行重处理,但是这样的做法缺乏统一性,并且不是很方便,要多写很多代码.然而spring-retry却可以通过注解,在不入侵原有业务逻辑代码...原创 2019-10-31 18:04:38 · 1236 阅读 · 0 评论 -
SpringBoot实践之---H2·连接数据库
原文地址:springboot整合H2内存数据库,实现单元测试与数据库无关性一、新建spring boot工程新建工程的时候,需要加入JPA,H2依赖二、工程结构pom文件依赖如下:[html] view plain copy<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.or...转载 2018-03-23 14:25:09 · 2676 阅读 · 0 评论 -
SpringBoot实践之---ELK(ElasticSearch, Logstash, Kibana)+Springboot搭建实时日志分析平台
摘要: 前段时间研究的Log4j+Kafka中,有人建议把Kafka收集到的日志存放于ES(ElasticSearch,一款基于Apache Lucene的开源分布式搜索引擎)中便于查找和分析,在研究此方案可行性的时候,我发现ELK(ElasticSearch, Logstash, Kibana)平台恰好可以同时实现日志收集、日志搜索和日志分析的功能,于是又去学习了一番。之后发现如果使用这三者,收...转载 2018-03-23 11:46:23 · 1740 阅读 · 1 评论 -
SpringBoot实践之---集成Actuator监控应用
主要引用原文地址:springboot(十九):使用Spring Boot Actuator监控应用微服务的特点决定了功能模块的部署是分布式的,大部分功能模块都是运行在不同的机器上,彼此通过服务调用进行交互,前后台的业务流会经过很多个微服务的处理和传递,出现了异常如何快速定位是哪个环节出现了问题?在这种框架下,微服务的监控显得尤为重要。本文主要结合Spring Boot Actuator,跟大家一...原创 2018-03-19 15:43:15 · 836 阅读 · 0 评论 -
SpringBoot实践之---整合docker
原文地址: SpringBoot非官方教程 | 第二十四篇: springboot整合docker转载请标明出处: http://blog.csdn.net/forezp/article/details/71024219 本文出自方志朋的博客这篇文篇介绍,怎么为 springboot程序构建一个docker镜像。docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议...转载 2018-03-23 09:53:10 · 486 阅读 · 0 评论 -
SpringBoot实践之---利用Redis保存分布式Session的状态
主要原文地址:38. Spring Boot分布式Session状态保存Redis【从零开始学Spring Boot】在使用spring boot做负载均衡的时候,多个app之间的session要保持一致,这样负载到不同的app时候,在一个app登录之后,而访问到另外一台服务器的时候,session丢失。nginx.conf配置示例 http { include m...转载 2018-03-22 17:51:48 · 499 阅读 · 0 评论 -
SpringBoot实践之---验证validator表单字段信息
原文地址:SpringBoot非官方教程 | 第十九篇: 验证表单信息构建工程创建一个springboot工程,由于用到了 web 、thymeleaf、validator、el,引入相应的起步依赖和依赖,代码清单如下:<dependencies> <dependency> <groupId>org.springfra...转载 2018-03-01 16:13:40 · 1449 阅读 · 0 评论 -
SpringBoot实践之---处理前端表单提交
原文地址:SpringBoot非官方教程 | 第二十篇: 处理表单提交创建工程涉及了 web,加上spring-boot-starter-web和spring-boot-starter-thymeleaf的起步依赖。<dependencies> <dependency> <groupId>org.springframewo...转载 2018-03-01 14:35:26 · 9300 阅读 · 0 评论 -
SpringBoot实践之---集成RabbitMQ
原文地址:springboot学习笔记-6 springboot整合RabbitMQ一 RabbitMQ的介绍 RabbitMQ是消息中间件的一种,消息中间件即分布式系统中完成消息的发送和接收的基础软件.这些软件有很多,包括ActiveMQ(apache公司的),RocketMQ(阿里巴巴公司的,现已经转让给apache). 消息中间件的工作过程可以用生产者消费者模型来表示.即,生产者不断...转载 2018-02-28 17:50:00 · 173 阅读 · 0 评论 -
SpringBoot实践之---集成Spring cache和EhCache
声明式缓存Spring 定义 CacheManager 和 Cache 接口用来统一不同的缓存技术。例如 JCache、 EhCache、 Hazelcast、 Guava、 Redis 等。在使用 Spring 集成 Cache 的时候,我们需要注册实现的 CacheManager 的 Bean。Spring Boot 为我们自动配置了 JcacheCacheConfiguration、 EhC...原创 2018-02-28 17:24:17 · 522 阅读 · 0 评论 -
SpringBoot实践之---集成mongodb
原文地址:SpringBoot非官方教程 | 第八篇:springboot整合mongodb准备工作安装 MongoDBjdk 1.8maven 3.0idea环境依赖在pom文件引入spring-boot-starter-data-mongodb依赖:<dependency> <groupId>org.springframework.boot<...转载 2018-02-28 15:51:02 · 155 阅读 · 0 评论 -
SpringBoot实践之(三十一)---Web应用之JSP+打war包在tomcat中运行
首先引入依赖:在build.gradle中 //支持thymeleaf模板 //compile("org.springframework.boot:spring-boot-starter-thymeleaf") //支持jsp compile('javax.servlet:jstl') //<!--jsp页面使用jstl标签--> co...原创 2018-02-08 18:43:15 · 1115 阅读 · 0 评论 -
SpringBoot实践之---异步请求(执行Async任务时,使用自定义的线程池)
原文地址:spring boot-执行Async任务时,使用自定义的线程池在前面的博客中,http://blog.csdn.net/liuchuanhong1/article/details/54605697 我们使用了spring boot的异步操作,当时,我们使用的是默认的线程池spring boot默认使用了newCachedThreadPool线程池来实现。,但是,如果我们想根据项目来定制...转载 2018-03-23 15:39:42 · 686 阅读 · 0 评论 -
SpringBoot实践之---解决不安全的HTTP方法漏洞配置
最近项目开发完毕,在进行安全测试的时候,爆出了一个中级安全漏洞--不安全的HTTP方法,如果对这个安全漏洞有不明白的地方,可以自行问度娘。1、传统Web项目的解决方案在不使用spring boot的情况下,有两种解决方案1、在过滤器中进行拦截,对于不是http安全的方法直接给前端返回错误信息;2、在tomcat的web.xml配置,对不安全的方法进行拦截。下面,我们重点说下第二种方案,因为这种方案...转载 2018-03-23 15:44:02 · 2670 阅读 · 0 评论 -
keytool 生成证书(包括支持指定IP)+Springboot支持https + RestTemplate忽略访问https的证书方式
最近几天弄Springboot的https的restful访问,期间遇到一系列的问题记录如下:1.springboot项目端口不能定义为 6666等特殊端口 本来想选个酷炫的6666端口启动,结果启动是没有问题,但是通过浏览器访问就没有反应,这个问题后来查询是因为浏览器对一些特殊端口有做限制。具体哪些端口这儿就不记录了,反正6666是不行的。2.keytool生成证书及to...原创 2019-09-02 20:09:32 · 4694 阅读 · 0 评论 -
SpringBoot实践之---集成MQTT消息推送和消息订阅功能
MQTT是一个轻量级的消息发布/订阅协议,它是实现基于手机客户端的消息推送服务器的理想解决方案。 实现MQTT协议的中间件有很多,我用的是Apollo服务器,如何搭建MQTT服务器,请查阅其他资料。这里,主要介绍SpringBoot2.0集成MQTT实现消息推送的功能。好,正式开始: 本文采用Gateway绑定的方式,网上也有介绍但不全面,还有其他...转载 2018-12-11 13:44:03 · 22736 阅读 · 5 评论 -
Spring Boot -- 启动彩蛋自定义启动图案
使用Spring Boot启动的jar包总是会显示一个Spring的图标: . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) )...转载 2018-09-06 17:33:08 · 5092 阅读 · 0 评论 -
SpringBoot实践之---集群环境下利用Redis实现定时任务
我们知道现在微服务很流行,为此,许多中小型企业都将自己以前的框架加以改造,其中以SpringCloud为最多,但是SpringCloud如果要加定时任务的话,在单台服务器上很好支持,但是涉及到集群服务(多台服务的话)就要用到分布式锁了,最简单的方案是用Redis,好了废话不多说,直接上代码.第一步:在配置文件application.properties中加入Redis的相关配置:#Red...原创 2018-07-18 15:18:29 · 3742 阅读 · 2 评论 -
SpringBoot实践之---整合shiro-登录认证和权限管理
主要原文地址:SpringBoot(十四):springboot整合shiro-登录认证和权限管理这篇文章我们来学习如何使用Spring Boot集成Apache Shiro。安全应该是互联网公司的一道生命线,几乎任何的公司都会涉及到这方面的需求。在Java领域一般有Spring Security、Apache Shiro等安全框架,但是由于Spring Security过于庞大和复杂,大多数公司...转载 2018-03-28 16:02:13 · 619 阅读 · 0 评论 -
SpringBoot实践之---整合Quartz,动态配置定时任务
数据库配置方式------ 前言在我们日常的开发中,很多时候,定时任务都不是写死的,而是写到数据库中,从而实现定时任务的动态配置,下面就通过一个简单的示例,来实现这个功能。一、新建一个springboot工程,并添加依赖 [html] view plain copy<dependency> <groupId>org....转载 2018-03-27 16:37:19 · 449 阅读 · 0 评论 -
SpringBoot实践之---mybatis+mysql读写分离(一写多读)+事务
原文地址:spring boot学习7之mybatis+mysql读写分离(一写多读)+事务当业务的访问量(数据库的查询)非常大时,为了降低数据库的压力,希望有多个数据库进行负载均衡,避免所有的查询都集中在一台数据库,造成数据库压力过大。mysql支持一主多从,即在写库的数据库发生变动时,会同步到所有从库,只是同步过程中,会有一定的延迟(除非业务中出现,立即写立即读,否则稍微的延迟是可以接收的)。...转载 2018-03-22 11:04:56 · 1147 阅读 · 0 评论 -
SpringBoot实践之---整合Cucumber(黄瓜测试框架)
原文地址: spring boot整合Cucumber(BDD)1、新建一个springboot工程工程结构如下:2、添加pom依赖[html] view plain copy<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="h...转载 2018-03-26 09:59:15 · 4505 阅读 · 0 评论 -
SpringBoot实践之---集成Dubbo
原文地址:Spring Boot 中使用 Dubbo 详解Dubbo是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,000,000+次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。Dubbo 简介Dubbo 是什么?Dubbo是一个分布式服务框架,致力于...转载 2018-03-30 14:41:11 · 158 阅读 · 0 评论 -
SpringBoot实践之---异步请求(Servlet 3.0)
原文地址: Spring Boot 异步请求(Servlet 3.0)在Spring 3.2 及以后版本中增加了对请求的异步处理,旨在提高请求的处理速度降低服务性能消耗。在我们的请求中做了耗时处理,当并发请求的情况下,为了避免web server的连接池被长期占用而引起性能问题,调用后生成一个非web的服务线程来处理,增加web服务器的吞吐量。为此 Servlet 3.0 新增了请求的异步处理,S...转载 2018-03-20 17:20:07 · 3452 阅读 · 0 评论 -
SpringBoot实践之---集成spring-boot-admin对spring-boot服务进行监控
主要引用原文地址:springboot(二十):使用spring-boot-admin对spring-boot服务进行监控上一篇文章《springboot(十九):使用Spring Boot Actuator监控应用》介绍了Spring Boot Actuator的使用,Spring Boot Actuator提供了对单个Spring Boot的监控,信息包含:应用状态、内存、线程、堆栈等等,比较...转载 2018-03-20 11:11:18 · 664 阅读 · 0 评论 -
SpringBoot实践之(三十)---Web应用之Thymeleaf模板
原文地址:Spring Boot干货系列:(四)开发Web应用之Thymeleaf篇前言Web开发是我们平时开发中至关重要的,这里就来介绍一下Spring Boot对Web开发的支持。正文Spring Boot提供了spring-boot-starter-web为Web开发予以支持,spring-boot-starter-web为我们提供了嵌入的Tomcat以及Spring...转载 2018-02-08 15:50:36 · 630 阅读 · 0 评论 -
SpringBoot实践之(十五)---自定义注解Annotation的使用
首先导入相关包在build.gradle中添加dependencies { //支持AOP compile('org.springframework.boot:spring-boot-starter-aop')}然后创建Aspect测试类 TestAspect:import com.great.annotation.OperateLogAnnotati...原创 2018-02-08 15:33:58 · 6149 阅读 · 0 评论 -
SpringBoot实践之(十四)--- AOP拦截器 Aspect的使用
常用用于实现拦截的有:Filter、HandlerInterceptor、MethodInterceptor第一种Filter属于Servlet提供的,后两者是Spring提供的,HandlerInterceptor属于Spring MVC项目提供的,用来拦截请求,在MethodInterceptor之前执行。 实现一个HandlerInterceptor可以实现接口HandlerInte...原创 2018-02-08 15:33:31 · 3272 阅读 · 0 评论 -
SpringBoot实践之---集成Swagger2生成Restful风格的在线API
swagger,中文“拽”的意思。它是一个功能强大的api框架,它的集成非常简单,不仅提供了在线文档的查阅,而且还提供了在线文档的测试。另外swagger很容易构建restful风格的api引入依赖在gradle.build中加入 //支持swagger构建restful风格的api compile('io.springfox:springfox-swagger2:2原创 2018-02-09 17:02:09 · 292 阅读 · 0 评论 -
SpringBoot实践之---默认日志logback配置解析
原文地址:Spring Boot干货系列:(七)默认日志logback配置解析前言今天来介绍下Spring Boot如何配置日志logback,我刚学习的时候,是带着下面几个问题来查资料的,你呢如何引入日志?日志输出格式以及输出方式如何配置?代码中如何使用?正文Spring Boot在所有内部日志中使用Commons Logging,但是默认配置也提供了对常用日...转载 2018-02-09 15:55:06 · 410 阅读 · 0 评论 -
SpringBoot实践之---JPA连接数据库+idea全新创建该工程
录结构如下:1.新建一个新的gradle项目 2.build.gradle配置文件 [java] view plain copy group ‘com.great’ version ‘1.0-SNAPSHOT’ buildscript { ext { springBootVersion = ‘1.5.8.RELEASE’转载 2018-02-05 11:32:47 · 769 阅读 · 0 评论 -
SpringBoot实践之---配置文件解析
原文地址:Spring Boot干货系列:(二)配置文件解析前言上一篇介绍了Spring Boot的入门,知道了Spring Boot使用“习惯优于配置”(项目中存在大量的配置,此外还内置了一个习惯性的配置,让你无需手动进行配置)的理念让你的项目快速运行起来。所以,我们要想把Spring Boot玩的溜,就要懂得如何开启各个功能模块的默认配置,这就需要了解Spring Boot的配置文...转载 2018-02-09 15:15:58 · 1084 阅读 · 1 评论 -
SpringBoot实践之(四十)---常用的热部署方式汇总
原文地址:Spring Boot干货系列:(十)开发常用的热部署方式汇总前言平时开发Sprig Boot的时候,经常改动个小小的地方就要重新启动项目,这无疑是一种很差的体验。在此,博主收集了3种热部署的方案供大家选择。正文目前博主用过的有三种:Spring Loadedspring-boot-devtoolsJRebel插件博主开发环境系统:win1...转载 2018-02-09 14:53:56 · 396 阅读 · 0 评论 -
SpringBoot实践之---Servlet
原文地址:ServletWeb开发使用 Controller 基本上可以完成大部分需求,但是我们还可能会用到 Servlet、Filter、Listener、Interceptor 等等。当使用Spring-Boot时,嵌入式Servlet容器通过扫描注解的方式注册Servlet、Filter和Servlet规范的所有监听器(如HttpSessionListener监听器)。转载 2018-01-19 18:12:19 · 150 阅读 · 0 评论 -
SpringBoot实践之---Controller
示例:HelloControllerpackage com.example;import org.springframework.beans.factory.annotation.Value;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.b原创 2018-01-19 18:01:36 · 243 阅读 · 0 评论 -
SpringBoot实践之---异步调用Async,不单独自己写线程方法
原文地址:SpringBoot集成篇(二) 异步调用Async什么是异步调用?异步调用是相对于同步调用而言的,同步调用是指程序按预定顺序一步步执行,每一步必须等到上一步执行完后才能执行,异步调用则无需等待上一步程序执行完即可执行。如何实现异步调用?多线程,这是很多人第一眼想到的关键词,没错,多线程就是一种实现异步调用的方式。在非spring目项目中我们要实现异步调用的就是使用多线程方式,可以自己实转载 2018-01-19 13:52:56 · 1376 阅读 · 0 评论 -
SpringBoot实践之---使用异步请求,提高系统的吞吐量
原文地址: spring boot--使用异步请求,提高系统的吞吐量前言:在我们的实际生产中,常常会遇到下面的这种情况,某个请求非常耗时(大约5s返回),当大量的访问该请求的时候,再请求其他服务时,会造成没有连接使用的情况,造成这种现象的主要原因是,我们的容器(tomcat)中线程的数量是一定的,例如500个,当这500个线程都用来请求服务的时候,再有请求进来,就没有多余的连接可用了,只能拒绝连接转载 2018-01-19 13:29:57 · 2268 阅读 · 0 评论 -
SpringBoot实践之---静态资源处理
原文地址:静态资源处理Spring Boot 默认为我们提供了静态资源处理,使用 WebMvcAutoConfiguration 中的配置各种属性。建议大家使用Spring Boot的默认配置方式,如果需要特殊处理的再通过配置进行修改。如果想要自己完全控制WebMVC,就需要在@Configuration注解的配置类上增加@EnableWebMvc(@SpringBootApplication 注转载 2018-01-18 17:58:10 · 204 阅读 · 0 评论