
SpringBoot
K'illCode
记录自己的学习历程,大部分来自转载,如有侵权联系删除.......
展开
-
Spring Boot 项目HTTP 客户端工具
链接:juejin.im/post/6854573211426750472大家都知道okhttp是一款由square公司开源的java版本http客户端工具。实际上,square公司还开源了基于okhttp进一步封装的retrofit工具,用来支持通过接口的方式发起http请求。如果你的项目中还在直接使用RestTemplate或者okhttp,或者基于它们封装的HttpUtils,那么你可以尝试使用Retrofit。retrofit-spring-boot-starter实现了Retrofit与s原创 2020-08-10 12:36:10 · 413 阅读 · 0 评论 -
一个依赖搞定 Spring Boot 反爬虫,防止接口盗刷!
kk-anti-reptile 是适用于基于 spring-boot 开发的分布式系统的反爬虫组件。系统要求 基于 spring-boot 开发(spring-boot1.x, spring-boot2.x均可) 需要使用 redis 工作流程kk-anti-reptile 使用基于 Servlet 规范的的 Filter 对请求进行过滤,在其内部通过 spring-boot 的扩展点机制,实例化一个 Filter,并注入到 Spring 容器 FilterRegistratio原创 2020-07-17 22:11:33 · 302 阅读 · 0 评论 -
Spring Boot+Redis 扛住,瞬间千次重复提交
作者:慕容千语来源:http://suo.im/5PaEZI前言:在实际的开发项目中,一个对外暴露的接口往往会面临,瞬间大量的重复的请求提交,如果想过滤掉重复请求造成对业务的伤害,那就需要实现幂等!我们来解释一下幂等的概念:任意多次执行所产生的影响均与一次执行的影响相同。按照这个含义,最终的含义就是 对数据库的影响只能是一次性的,不能重复处理。如何保证其幂等性,通常有以下手段:1、数据库建立唯一性索引,可以保证最终插入数据库的只有一条数据2、token机制,每次接口请...原创 2020-06-23 12:59:20 · 909 阅读 · 0 评论 -
实战:SpringBoot集成xxl-sso实现单点登录
前言单点登录SSO(Single Sign On),凡是有一定的开发经验的童鞋都应该有应用或者了解过,小编还是实习生的时候,看到登录某个应用服务后,再跳转其他应用服务,竟然不用再次登录了,觉得贼拉风,不知道大家第一见这种场景时是不是跟小编一样的感觉。今天小编给大家介绍一款分布式单点登录组件xxl-sso,目的就是让大家能短时间内快速的应用到项目中,并从中了解其中的相关的实现原理。项目介绍xxl-sso是一款基于redis轻量级分布式高可用的SSO实现组件,支持web端(Cookie实现)和app原创 2020-06-08 21:13:24 · 607 阅读 · 0 评论 -
Spring Boot 整合微信小程序实现登录与增删改查
项目描述:在微信小程序中通过与Springboot操作数据库实现简单的增删改查,其中我是用springboot整合mybatis-plus 和mysql使用的1. 开发前准备1.1 前置知识 java基础 SpringBoot简单基础知识 1.2 环境参数 开发工具:IDEA 基础环境:Maven+JDK8 主要技术:SpringBoot、lombok、mybatis-plus、mysql 、微信小程序 SpringBoot版本:2.2.6原创 2020-05-11 16:32:55 · 416 阅读 · 0 评论 -
Redis+Tomcat+Nginx集群实现Session共享,Tomcat Session共享
作者:蕃薯耀链接:www.cnblogs.com/fanshuyao一、Session共享使用tomcat-cluster-redis-session-manager插件实现插件地址见:https://github.com/ran-jit/tomcat-cluster-redis-session-manager该插件支持Tomcat7、Tomcat8、Tomcat9或...原创 2020-04-23 19:41:32 · 397 阅读 · 0 评论 -
10 分钟实现 Spring Boot 发生邮件功能
来源:yizhiwazijianshu.com/p/5eb000544dd7 基础知识 什么是SMTP? 什么是IMAP? 什么是POP3? IMAP和POP3协议有什么不同呢? 进阶知识 什么是JavaMailSender和JavaMailSenderImpl? 如何通过Jav...原创 2020-04-23 19:39:04 · 855 阅读 · 0 评论 -
Docker+Jenkins+Nginx+Spring Boot 自动化部署项目
作者:Wilson1995链接:toutiao.com/i6779098800825827852/Docker通过linux的namespace实现资源隔离、cgroups实现资源控制,通过写时复制机制(copy-on-write)实现了高效的文件操作,在实际开发中可用于提供一次性的环境、微服务架构的搭建、统一环境的部署。虽然Docker已经是风靡全球的容器技术了,统一环境避免环境问题...原创 2020-04-23 19:37:18 · 512 阅读 · 0 评论 -
SpringBoot 线程池的使用
前言最近在做订单模块,用户购买服务类产品之后,需要进行预约,预约成功之后分别给商家和用户发送提醒短信。考虑发短信耗时的情况所以我想用异步的方法去执行,于是就在网上看见了Spring的@Async了。但是遇到了许多问题,使得@Async无效,也一直没有找到很好的文章去详细的说明@Async的正确及错误的使用方法及需要注意的地方,这里简单整理了一下遇见的问题,Sring是以配置文件...原创 2020-03-27 20:10:04 · 683 阅读 · 0 评论 -
SpringBoot实现定时任务的动态增删启停
在spring boot项目中,可以通过@EnableScheduling注解和@Scheduled注解实现定时任务,也可以通过SchedulingConfigurer接口来实现定时任务。但是这两种方式不能动态添加、删除、启动、停止任务。要实现动态增删启停定时任务功能,比较广泛的做法是集成Quartz框架。但是本人的开发原则是:在满足项目需求的情况下,尽量少的依赖其它框架,避免项目过于臃...原创 2020-02-11 01:37:31 · 1422 阅读 · 0 评论 -
SpringBoot 单元测试利器——Mockito
Mockito 是一种 Java mock 框架,他主要是用来做 mock 测试的,他可以模拟任何 Spring 管理的 bean、模拟方法的返回值、模拟抛出异常...等,在了解 Mockito 的具体用法之前,得先了解什麽是 mock 测试1. 什么是 mock 测试?mock 测试就是在测试过程中,创建一个假的对象,避免你为了测试一个方法,却要自行构建整个 bean 的依赖链像是以...原创 2020-02-08 18:50:43 · 809 阅读 · 1 评论 -
SpringBoot使用AOP实现REST接口简易灵活的安全认证实践
本文将通过AOP的方式实现一个相对更加简易灵活的API安全认证服务。我们先看实现,然后介绍和分析AOP基本原理和常用术语。一、Authorized实现1、定义注解packagecom.power.demo.common;importjava.lang.annotation.*;/**安全认证**/@Target({ElementType.TYPE,El...原创 2020-01-31 11:16:42 · 610 阅读 · 1 评论 -
SpringBoot之Undertow
前言在SpringBoot框架中,我们使用最多的是Tomcat,这是SpringBoot默认的容器技术,而且是内嵌式的Tomcat。同时,SpringBoot也支持Undertow容器,我们可以很方便的用Undertow替换Tomcat,而Undertow的性能和内存使用方面都优于Tomcat,那我们如何使用Undertow技术呢?本文将为大家细细讲解。SpringB...原创 2020-01-31 11:08:02 · 4619 阅读 · 0 评论 -
Spring Boot + RabbitMQ发送邮件(保证消息 100% 投递成功并被消费)
一、先扔一张图说明:本文涵盖了关于RabbitMQ很多方面的知识点, 如: 消息发送确认机制 消费确认机制 消息的重新投递 消费幂等性, 等等 这些都是围绕上面那张整体流程图展开的, 所以有必要先贴出来, 见图知意二、实现思路 简略介绍163邮箱授权码的获取 编写发送邮件工具类 编写RabbitMQ配置文件 ...原创 2020-01-13 18:09:54 · 950 阅读 · 0 评论 -
SpringBoot 整合 Shiro 实现动态权限加载更新+ Session 共享 + 单点登录
一.说明 二.项目环境 二.编写项目基础类 三.编写Shiro核心类 四.实现权限控制 五.POSTMAN测试 六.项目源码 一.说明Shiro是一个安全框架,项目中主要用它做认证,授权,加密,以及用户的会话管理,虽然Shiro没有SpringSecurity功能更丰富,但是它轻量,简单,在项目中通常业务需求...原创 2019-12-26 18:26:24 · 474 阅读 · 0 评论 -
SpringBoot整合Activiti工作流(附源码)
依赖:新建springBoot项目时勾选activiti,或者在已建立的springBoot项目添加以下依赖:<dependency><groupId>org.activiti</groupId><artifactId>activiti-spring-boot-starter-basic</artifa...转载 2019-12-17 20:40:50 · 338 阅读 · 0 评论 -
spring boot 集成 websocket 的四种方式
SpringBoot集成websocket的四种方式原生注解pom.xml<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId></depen...原创 2019-12-11 12:04:58 · 427 阅读 · 0 评论 -
Spring boot + Jsoup 搭建高清视频解析系统接口只需1分钟
前几天有个小姐姐想看《天使陷落》的大片问有没有资源的渠道。本着不给广大程序小老哥的脸,想也没想的就答应给小姐姐找资源。但是凄惨的是把以前经常用的网站烦了个遍都没有。这点小问题肯定难不到勤奋的小老弟,一通谷歌、百度、dogedoge终于找了可靠资源。既然现在资源这么匮乏,网站都找到了何不试试抓包看看接口。说干就干,按照一贯的操作流程,打开Chrome->开发者工具...原创 2019-11-28 19:48:30 · 2277 阅读 · 1 评论 -
SpringBoot 发送邮件和附件(实用版)
基础知识什么是SMTP?SMTP全称为Simple Mail Transfer Protocol(简单邮件传输协议),它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP认证要求必须提供账号和密码才能登陆服务器,其设计目的在于避免用户受到垃圾邮件的侵扰。什么是IMAP?IMAP全称为Internet Message Access Protocol(互联...原创 2019-11-07 21:24:51 · 624 阅读 · 0 评论 -
SpringBoot 多模块项目实践(附打包方法)
序言:比起传统复杂的单体工程,使用Maven的多模块配置,可以帮助项目划分模块,鼓励重用,防止POM变得过于庞大,方便某个模块的构建,而不用每次都构建整个项目,并且使得针对某个模块的特殊控制更为方便。接下来,本文将重点阐述SpringBoot在Maven环境的多模块构建过程。本项目传送门:https://github.com/yizhiwazi/springboot-socks/...原创 2019-11-07 21:19:38 · 147 阅读 · 0 评论 -
Spring Boot 创建定时任务(配合数据库动态执行)
序言:创建定时任务非常简单,主要有两种创建方式:一、基于注解(@Scheduled) 二、基于接口(SchedulingConfigurer). 前者相信大家都很熟悉,但是实际使用中我们往往想从数据库中读取指定时间来动态执行定时任务,这时候基于接口的定时任务就大派用场了。一、静态定时任务(基于注解)基于注解来创建定时任务非常简单,只需几行代码便可完成。@Scheduled 除了支持灵活...原创 2019-11-07 21:11:29 · 380 阅读 · 0 评论 -
Spring 极速集成注解 redis 实践
Redis做为基于内存的Key-Value数据库,用来做缓存服务器性价比相当高。官方推出的面向Java的ClientJedis,提供了很多接口和方法,可以让Java操作使用Redis。Spring团队对Jedis进行了封装,独立为spring-data-redis项目,配合spring特性并集成Jedis的一些命令和方法。本文重点描述集成过程,能让...原创 2019-04-16 15:03:21 · 154 阅读 · 0 评论 -
SpringBoot整合MyBatis-Plus3.1详细教程
一.说明Mybatis-Plus是一个Mybatis框架的增强插件,根据官方描述,MP只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑.并且只需简单配置,即可快速进行 CRUD 操作,从而节省大量时间.代码生成,分页,性能分析等功能一应俱全,最新已经更新到了3.1.1版本了,3.X系列支持lambda语法,让我在写条件构造的时候少了很多的"魔法值",从代码结构上更简洁了.二.项目...原创 2019-08-29 19:17:35 · 448 阅读 · 0 评论 -
Tomcat在SpringBoot中是如何启动的
前言我们知道SpringBoot给我们带来了一个全新的开发体验,我们可以直接把web程序达成jar包,直接启动,这就得益于SpringBoot内置了容器,可以直接启动,本文将以Tomcat为例,来看看SpringBoot是如何启动Tomcat的,同时也将展开学习下Tomcat的源码,了解Tomcat的设计。从 Main 方法说起用过SpringBoot的人都知道,首先要写一个main方...转载 2019-08-23 10:51:24 · 471 阅读 · 0 评论 -
Spring Boot 注解:全家桶快速通
1、Spring Web MVC 与Spring Bean 注解1-1、Spring Web MVC 注解1-1-1、@RequestMapping@RequestMapping注解的主要用途是将Web请求与请求处理类中的方法进行映射。Spring MVC和Spring WebFlux都通过RquestMappingHandlerMapping和RequestMappingHndler...转载 2019-08-23 10:51:39 · 146 阅读 · 0 评论 -
IDEA远程一键部署SpringBoot
IDEA是Java开发利器,springboot是Java生态中最流行的微服务框架,docker是时下最火的容器技术,那么它们结合在一起会产生什么化学反应呢?一、开发前准备1.Docker安装可以参考:https://docs.docker.com/install/2.配置docker远程连接端口vi/usr/lib/systemd/system/docker....转载 2019-08-23 10:51:33 · 974 阅读 · 0 评论 -
Spring Boot 2 发送邮件手把手图文教程
说到邮件放松,相信大家对Spring Framework提供的接口JavaMailSender都不陌生。那么Spring Boot是否有开箱即用的邮件发送呢?答案是肯定的。Spring Boot为发送邮件提供了starter:spring-boot-starter-mail。本文详细探讨如何用Spring Boot发送邮件。一、邮箱配置以126邮箱为例:1 开启SMTP服...转载 2019-08-25 11:48:49 · 412 阅读 · 0 评论 -
三步搞定Spring Boot 缓存
本次内容主要介绍基于Ehcache 3.0来快速实现Spring Boot应用程序的数据缓存功能。在Spring Boot应用程序中,我们可以通过Spring Caching来快速搞定数据缓存。接下来我们将介绍如何在三步之内搞定Spring Boot缓存。1. 创建一个Spring Boot工程并添加Maven依赖你所创建的Spring Boot应用程序的maven依赖文件至少应该是下面的...转载 2019-08-25 11:49:21 · 193 阅读 · 0 评论 -
盘点一下企业最常用的几个 Spring Boot Starter
Spring Boot 简介Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。Spring Boot让我们的Spri...原创 2019-08-29 19:22:06 · 260 阅读 · 0 评论 -
Spring Boot WebSocket从入门到放弃
在构建Spring boot项目时已经提供webSocket依赖的勾选。webSocket是TCP之上的一个非常薄的轻量级层 ,webSocket主要的应用场景离不开即时通讯与消息推送,但只要应用程序需要在浏览器和服务器之间来回发送消息,就可以使用webSocket来降低客户端流量与服务器的负载。下面将基于Spring boot实现一个非常简单的HelloWorld程序,用来熟...原创 2019-08-29 19:22:45 · 366 阅读 · 1 评论 -
Spring Boot 静态资源处理
做web开发的时候,我们往往会有很多静态资源,如html、图片、css等。那如何向前端返回静态资源呢?以前做过web开发的同学应该知道,我们以前创建的web工程下面会有一个webapp的目录,我们只要把静态资源放在该目录下就可以直接访问。但是,基于Spring boot的工程并没有这个目录,那我们应该怎么处理?一、最笨的方式我们首先来分享一种最笨的办法,就是将静态资源通过流直接返回...原创 2019-08-29 19:23:58 · 295 阅读 · 0 评论 -
SpringBoot 整合Shiro实现动态权限加载更新+Session共享+单点登录
一.说明Shiro是一个安全框架,项目中主要用它做认证,授权,加密,以及用户的会话管理,虽然Shiro没有SpringSecurity功能更丰富,但是它轻量,简单,在项目中通常业务需求Shiro也都能胜任.二.项目环境 MyBatis-Plus版本: 3.1.0 SpringBoot版本:2.1.5 JDK版本:1.8 Shiro版本:1.4 ...原创 2019-08-30 14:08:31 · 207 阅读 · 0 评论 -
如何使用SpringBoot封装自己的Starter
一.说明我们在使用SpringBoot的时候常常要引入一些Starter,例如spring-boot-starter-web,官方为我们提供了几乎所有的默认配置,很好的降低了使用框架时的复杂度。所以在用xxx-starter的时候,可以不用费心去写一些繁琐的配置文件,即使必要的配置在application.properties或application.yml中配置就可以了,当你实现了一个S...原创 2019-08-30 14:08:20 · 258 阅读 · 0 评论 -
SpringBoot 深度调优
项目调优作为一名工程师,项目调优这事,是必须得熟练掌握的事情。在SpringBoot项目中,调优主要通过配置文件和配置JVM的参数的方式进行。在这边有一篇比较好的文章,推荐给大家!https://zhuanlan.zhihu.com/p/31803182一、修改配置文件关于修改配置文件application.properties。SpringBoot项目详细的配置文...原创 2019-09-07 16:48:05 · 193 阅读 · 0 评论 -
Spring Boot + MyBatis 多模块项目搭建教程
一、前言最近公司项目准备开始重构,框架选定为SpringBoot+Mybatis,本篇主要记录了在IDEA中搭建SpringBoot多模块项目的过程。1、开发工具及系统环境 IDE: IntelliJ IDEA 2018.2 系统环境: mac OSX 2、项目目录结构 biz层: 业务逻辑层 dao层: 数据持久层 we...原创 2019-10-04 16:30:29 · 386 阅读 · 0 评论 -
Springboot 整合 Netty 实战(附源码)
前言这一篇文章主要介绍如何用Springboot 整合 Netty,由于本人尚处于学习Netty的过程中,并没有将Netty 运用到实际生产项目的经验,这里也是在网上搜寻了一些Netty例子学习后总结来的,借鉴了他人的写法和经验。如有重复部分,还请见谅。关于SpringBoot 如何整合使用 Netty ,我将分为以下几步进行分析与讨论: 构建Netty 服务端 构建Net...原创 2019-10-04 16:48:42 · 1097 阅读 · 0 评论 -
SpringBoot整合Netty(附源码)
前言本篇文章主要介绍的是SpringBoot整合Netty以及使用Protobuf进行数据传输的相关内容。Protobuf会简单的介绍下用法,至于Netty在之前的文章中已经简单的介绍过了,这里就不再过多细说了。Protobuf介绍protocolbuffer(以下简称PB)是google 的一种数据交换的格式,它独立于语言,独立于平台。google 提供了多种语言的实现:java...转载 2019-08-27 13:35:54 · 1387 阅读 · 0 评论 -
SpringBoot集成Elasticsearch实战
1.1. 集成方式Spring Boot中集成Elasticsearch有4种方式: REST Client Jest Spring Data Spring Data Elasticsearch Repositories 本文用后面两种方式来分别连接并操作Elasticsearch1.2. 环境与配置服务端:elasticsearch-6.3.2...原创 2019-07-22 12:47:32 · 641 阅读 · 0 评论 -
Spring Boot 监控数据可视化图文教程
TIPS本文基于Spring Boot 2.1.4,理论支持Spring Boot 2.x所有版本众所周知,Spring Boot有个子项目Spring Boot Actuator,它为应用提供了强大的监控能力。从Spring Boot 2.0开始,Actuator将底层改为Micrometer,提供了更强、更灵活的监控能力。Micrometer是一个监控门面,可以类比成监控界的Sl...原创 2019-05-10 09:36:43 · 1538 阅读 · 0 评论 -
Spring Boot 注册 Servlet 的三种方法
一、Spring Boot 注册Spring Boot 提供了ServletRegistrationBean,FilterRegistrationBean,ServletListenerRegistrationBean三个类分别用来注册 Servlet, Filter, Listener,下面是 Servlet 的示例代码。importjavax.servlet.http.Ht...原创 2019-05-09 10:04:34 · 612 阅读 · 0 评论