
SpringBoot
文章平均质量分 81
忧伤夏天的风
热爱生活,喜欢技术,喜欢极具挑战与充实的人生
展开
-
springboot+vue前后的项目搭建
一、springboot项目搭建前言-使用技术springbootmybatis-plusmysql1.2 创建springboot项目1.2 集成mybatis-plus1.3 设置跨域1.1 配置类1.2 配置注解1.3 前端设置proxy二、前端项目搭建前言-使用技术2.1 vue2.2 element-ui2.3 axios2.4 router2.1 创建vue项目2.2 集成element-ui2.3 集成axios...原创 2022-05-04 14:14:22 · 2221 阅读 · 1 评论 -
SpringBoot+thymeleaf 局部刷新
html页面:<h2>5.局部刷新</h2><br><button id="btn">刷新1</button><button id="btn2">刷新2</button><div th:fragment="info" id="info"> info: <span th:text="${info}">info</span> <span>test 刷新&l原创 2021-03-21 18:17:45 · 2210 阅读 · 2 评论 -
SpringBoot + EhCache实现本地缓存
一、EhCache 介绍1.1 什么是EhCache ?EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认CacheProvider。Ehcache是一种广泛使用的开源Java分布式缓存。主要面向通用缓存,Java EE和轻量级容器。它具有内存和磁盘存储,缓存加载器,缓存扩展,缓存异常处理程序,一个gzip缓存servlet过滤器,支持REST和SOAP api等特点。Spring 提供了对缓存功能的抽象:即允许绑定不同的缓存解决方案(如Ehcache)原创 2021-02-22 17:26:25 · 2553 阅读 · 1 评论 -
SpringBoot 定时任务 实现方式
要实现定时任务,主要有以下两种方案:使用 Spring 自带的定时任务处理器 @Scheduled 注解;使用第三方框架 Quartz 。一、 @Scheduled使用 @Scheduled 非常容易,直接创建一个 Spring Boot 项目,并且添加 web 依赖 spring-boot-starter-web,项目创建成功后,添加 @EnableScheduling 注解,开启定时任务:@SpringBootApplication@EnableSchedulingpublic cla原创 2021-02-07 11:12:42 · 818 阅读 · 1 评论 -
从零快速搭建一个SpringBoot Web项目
从零快速搭建一个SpringBoot Web项目环境:IDEA+Navicat+Jdk1.8+Mysql5.7 SpringBoot+Thymeleaf+SpringData-JPA+apache-shiro目录从零快速搭建一个SpringBoot Web项目一、新建一个SpringBoot项目1.1 选择新增:File->New->Project1.2 选择Spring Initializr,指定JDK版本,直接下一步1.3填写项目相关信息,然后下一步...原创 2021-01-13 21:36:39 · 853 阅读 · 0 评论 -
SpringBoot + Activiti 工作流引擎(二、流程&任务操作)
1. SpringBoot + Activiti 工作流引擎(一、基本概念与环境搭建)2.SpringBoot + Activiti 工作流引擎(二、流程&任务操作)经过第一章的操作,我们已经完成了SpringBoot 与activi的整合环境搭建,本文将着重介绍如何在整合好的项目中完成流程的部署、流程启动、任务查询、任务处理、查询流程实例进度情况等内容。一、流程部署/** * 部署请假流程 */ @GetMapping("deploy") public原创 2021-01-10 19:10:48 · 25041 阅读 · 2 评论 -
SpringBoot+CAS Client 实现单点登录
本文主要介绍在使用SpringBoot的开发过程中如何整合CAS Client实现单点登录的功能。准备工作(1)搭建好CAS服务端(参考:https://blog.youkuaiyun.com/u014553029/article/details/88102311)(2)准备好一个普通的SpringBoot Web项目集成一、引入CAS client依赖在pom.xml中引入CAS Client的依赖包。代码如下:<dependency> <groupId>net.unic原创 2020-12-23 23:40:07 · 3053 阅读 · 1 评论 -
SpringBoot + Activiti 工作流引擎(一、基本概念与环境搭建)
SpringBoot + Activiti一、什么是ActivitiActiviti是一个轻量级的工作流和业务流程管理(BPM)平台,面向业务人员,开发人员和系统管理员。它的核心是用于Java的超快速,坚固的BPMN 2流程引擎。它是开源的,并根据Apache许可进行分发。Activiti可以在任何Java应用程序,服务器,集群或云中运行。它与Spring完美集成,非常轻巧,基于简单的概念。我们可以通俗一点理解,Activiti工作流就是将我们日常的流程(例如:请假、报销、岗位调整等流程)规范起来,将原创 2020-12-13 23:05:33 · 13688 阅读 · 2 评论 -
访问ElasticSearch的几种方式
访问ElasticSearch的几种方式:REST API开源工具(Kibana、Head等)Spring Data Elasticsearch(应用程序使用接口访问或者开源框架)一、RestAPI1. 查看所有索引get:http://localhost:9200/_cat/indices?v2. 创建索引put:http://localhost:9200/blogindex3.删除索引delete: http://localhost:9200/blogindex.原创 2020-12-03 21:52:49 · 11825 阅读 · 1 评论 -
SpringBoot+ElasticSearch 实现全文检索
ElasticSearch环境搭建:https://blog.youkuaiyun.com/u014553029/article/details/106009344SpringBoot集成ElasticSearch实战一、在pom.xml中引入依赖<!-- https://mvnrepository.com/artifact/org.springframework.data/spring-data-elasticsearch --><dependency> <gro原创 2020-12-03 00:01:25 · 4836 阅读 · 4 评论 -
快速从零搭建一个SpringBoot Web项目
从零快速搭建一个SpringBoot Web项目环境:IDEA+Navicat+Jdk1.8+Mysql5.7 SpringBoot+Thymeleaf+Mybatis+SpringSecurity目录从零快速搭建一个SpringBoot Web项目 1一、新建一个SpringBoot项目 21.1 选择新增:File->New->Project 21.2 选择Spring Initializr,指定JDK版本,直接下一步 31.3填写项目相关信息,然后下一步 3原创 2020-12-02 11:15:56 · 8589 阅读 · 2 评论 -
SpringBoot+RabbitMQ 实现消息队列
概论消息队列中间件是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量 削锋等问题实现高性能,高可用,可伸缩和最终一致性[架构] 使用较多的消息队列有 ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ 。消息队列在实际应用中常用的使用场景:异步处理,应用解耦,流量削锋和消息通讯四个场景。RabbitMQ是一套开源(MPL)的消息队列服务软件,是由 LShift 提供的一个 Advanced Message Queuing Protocol (AMQP)原创 2020-11-23 22:58:45 · 2299 阅读 · 0 评论 -
springboot+sms 集成腾讯云短信平台
springboot+sms 集成腾讯云短信平台实现发送短信功能一、申请短信功能到腾讯云管理平台申请短信功能(https://console.cloud.tencent.com/)1.1 创建短信签名1.2创建短信正文模板1.3 创建应用可使用系统默认应用或者创建新应用二、集成短信功能查看腾讯云账户密钥对 secretId 和 secretKey(https://console.cloud.tencent.com/cam/capi)springbo..原创 2020-11-22 23:29:40 · 2216 阅读 · 1 评论 -
ShardingSphere-ShardingJdbc 数据脱敏
摘要:数据脱敏(Data Masking),又称数据漂白、数据去隐私化或数据变形。百度百科给出的解释:数据脱敏指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护。在涉及客户安全数据或者一些商业性敏感数据的情况下,在不违反系统规则条件下,对真实数据进行改造并提供测试使用,如身份证号、手机号、卡号、客户号等个人信息都需要进行数据脱敏。数据安全技术之一,数据库安全技术主要包括:数据库漏扫、数据库加密、数据库防火墙、数据脱敏、数据库安全审计系统。数据库安全风险包括:拖库、刷库、撞库。开发系统原创 2020-10-25 20:47:31 · 2128 阅读 · 1 评论 -
ShardingSphere-ShardingJdbc 读写分离
一、读写分离背景分库分表虽然可以优化数据库操作。但是要实现高并发,主从架构就应运而生了,数据库的主从复制架构,将数据库的写操作定位到主库中进行,主库和从库之间通过异步复制、半同步复制保持数据一致。所有的读操作都在主库的N个从库上进行。通过负载均衡使得每一次查询均匀的落在每一个从库上。一主n从,做读写分离(数据写入主库,通过mysql数据同步机制将主库数据同步到从库–>程序读取从库数据),多个从库之间可以实现负载均衡。次外,ShardingSphere-ShardingJdbc可手动强制部分读请求到原创 2020-10-25 17:52:48 · 4390 阅读 · 10 评论 -
ShardingSphere-ShardingJdbc 数据分片(分库、分表)
ShardingSphere 数据分片(分库、分表)摘要:我们实际开发中,总有几张和业务相关的大表,这里的大表是指数据量巨大。如用户表、订单表,又或者公司业务中的主表,可能很快这种表的数据就达到了百万、千万、亿级别的规模,并且增长规模一直很快。这种情况下,单表已经满足不了了存储需求了,同时,这么大的数据量,即使搭配合理的索引,数据库查询也是很慢的,这时就需要对这些大表进行分库、分表。应用需要能对sql进行解析、改...原创 2020-10-25 16:10:02 · 3758 阅读 · 0 评论 -
Springboot+Redis 实现API接口防刷限流
前言在开发分布式高并发系统时有三把利器用来保护系统:缓存、降级、限流。缓存缓存的目的是提升系统访问速度和增大系统处理容量降级降级是当服务出现问题或者影响到核心流程时,需要暂时屏蔽掉,待高峰或者问题解决后再打开限流限流的目的是通过对并发访问/请求进行限速,或者对一个时间窗口内的请求进行限速来保护系统,一旦达到限制速率则可以拒绝服务、排队或等待、降级等处理本文主要讲的是api接口限流相关内容,虽然不是论述高并发概念中的限流, 不过道理都差不多。通过限流可以让系统维持在一个相对原创 2020-10-22 22:59:50 · 3801 阅读 · 0 评论 -
SpringBoot + validation 接口参数校验
摘要 有参数传递的地方都少不了参数校验。在web开发中,前端的参数校验是为了用户体验,后端的参数校验是为了安全。试想一下,如果在controller层中没有经过任何校验的参数通过service层、dao层一路来到了数据库就可能导致严重的后果,最好的结果是查不出数据,严重一点就是报错,如果这些没有被校验的参数中包含了恶意代码,那就可能导致更严重的后果。实践一、引入依赖<!--引入spring-boot-starter-validation--><depend...原创 2020-10-21 00:19:40 · 1600 阅读 · 3 评论 -
SpringBoot 整合MyBatis-Plus
一、什么是MyBatis-PlusMybatis是作为一个半自动的持久层ORM框架一直以其可以直接在XML中通过SQL语句操作数据库的灵活可控稳居持久层框架前列。但正其操作都要通过SQL语句进行,就必须写大量的xml文件,很是麻烦。而我们今天要介绍的Mybatis-Plus就是为了解决这些问题的。Mybatis-Plus是一个 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生(官方定义)。它已经封装好了一些crud方法,单表的增删改查可以不用在xml中写原创 2020-06-06 23:35:08 · 620 阅读 · 0 评论 -
SpringBoot整合Shiro安全框架
什么是ShiroShiro是一个强大的简单易用的Java安全框架,主要用来更便捷的认证,授权,加密,会话管理。Shiro首要的和最重要的目标就是容易使用并且容易理解,通过Shiro易于理解的API,您可以快速、轻松地获得任何应用程序——从最小的移动应用程序最大的网络和企业应用程序。Shiro架构Shiro架构图- Authentication:身份认证/登录- Authorization:验证权限,即,验证某个人是否有做某件事的权限。- Session Management:会话管理。管理原创 2020-06-05 22:41:22 · 1003 阅读 · 3 评论 -
SpringBoot + Redis 实现分布式缓存
SpringBoot + Redis 实现缓存一、在pom中添加依赖<!--springboot redis依赖--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId></depen...原创 2020-05-12 23:47:54 · 2629 阅读 · 2 评论 -
Spring Boot + Swagger2 自动生成api接口文档
一、什么是Swagger 由于Spring Boot能够快速开发、便捷部署等特性,相信有很大一部分Spring Boot的用户会用来构建RESTful API。由于存在多终端的情况(移动端,web前端,小程序等),所以我们会抽象出RESTful API并共用一些底层业务代码。 由于接口众多,并且细节复杂,所以催生了一些api框架,Swagger就凭借其使用简单、...原创 2020-05-05 18:04:37 · 10676 阅读 · 0 评论 -
SpringBoot应用部署到外置Tomcat
概述SpringBoot让我们实现了简单、方便、快速的创建一个Spring Web项目,其约定优于配置的模式让我们少写了大量的配置。内置tomcat更是让开发用得爽歪歪,但如果我们需要将SpringBoot项目发布到外置tomcat中,该如何操作呢?一、修改Tomcat的打包方式在pom.xml中将打包方式改成war<packaging>war</packagi...原创 2020-04-24 00:14:19 · 758 阅读 · 0 评论 -
SpringBoot 配置多个JdbcTemplate
SpringBoot 配置多个JdbcTemplate前言 开发中使用多数据源配置是一个非常常见的需求。Spring和SpringBoot中,对此都有相应的解决方案。 多数据源的首选分布式数据库中间件MyCat或者Sharing-Jdbc去解决相关问题。使用MyCat,然后分表策略使用shardin...原创 2019-09-22 01:17:59 · 4956 阅读 · 0 评论 -
SpringBoot 整合Mybatis
一、前言1.1Mybatis MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。 iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久...原创 2019-04-16 00:17:15 · 943 阅读 · 0 评论 -
CAS统一登录认证(3): CAS 客户端接入实践
CAS 客户端接入实践一、接入准备 为了实现Cas单点登录的接入与验证,我这里准备部署三个系统,一个是之前我们搭建的服务端,这个服务端完全是Cas提供的,还有两个是我们自己编写的并且引入的Cas 客户端的接入应用,具体情况如下表所示:应用 域名 端口 系统描述 来源 url C...原创 2019-03-11 22:40:42 · 3994 阅读 · 1 评论 -
SpringBoot 整合Mail实现邮件发送
一、简介 邮件发送是网络应用中最常用的扩展功能之一,用户注册、忘记密码、动态验证码登录、发送运营情况等等都要使用到邮件的发送。在Spring发展的早期就提供了非常好用的JavaMailSender接口实现邮件发送,而在Spring Boot的Starter模块中也为此提供了自动化配置,更加简化了邮件发送的过程。二、引入依赖在Spring Boot的工程中的pom.xml...原创 2019-03-10 21:42:20 · 1543 阅读 · 1 评论 -
数据库连接池优化配置(druid,dbcp,c3p0)
数据库连接池参数配置的准则,针对常用的数据库连接池(c3p0,dbcp,druid)给出推荐的配置。考虑因素 1:当前连接DB的规模 2:并发情况 3:执行db的响应时间配置考虑 1:初始化连接:可考虑设置为3个连接 ,对于db规模特别大的情况下可考虑设置为1个,避免启动时间过长; 2:最小连接:可考虑该值的设置和初始化连接保持一...转载 2019-03-08 14:12:04 · 1243 阅读 · 0 评论 -
SpringBoot+WebSocket在线聊天室、消息推送
一、WebSocket简介 随着互联网的发展,传统的HTTP协议已经很难满足Web应用日益复杂的需求了。近年来,随着HTML5的诞生,WebSocket协议被提出,它实现了浏览器与服务器的全双工通信,扩展了浏览器与服务端的通信功能,使服务端也能主动向客户端发送数据。 传统的HTTP 协议是一种无状态的、无连接的、单向的应用层协议。它采用了请求/响应模型,通信请求只能由客户...原创 2019-02-01 14:41:07 · 2985 阅读 · 2 评论 -
SpringBoot+SpringSecurity+mysql实现认证与授权
一、Spring Security框架1. 框架简介 官方介绍:Spring Security是一个功能强大且可高度自定义的身份验证和访问控制框架。它是保护基于Spring的应用程序的事实标准。 Spring Security是一个专注于为Java应用程序提供身份验证和授权的框架。与所有Spring项目一样,Spring Security的真正强大之处在于它可以轻松扩展以满足...原创 2019-01-29 15:39:50 · 13254 阅读 · 2 评论 -
SpringBoot+Spring Security基于内存用户认证
一、Spring Security框架1. 框架简介 官方介绍:Spring Security是一个功能强大且可高度自定义的身份验证和访问控制框架。它是保护基于Spring的应用程序的事实标准。 Spring Security是一个专注于为Java应用程序提供身份验证和授权的框架。与所有Spring项目一样,Spring Security的真正强大之处在于它可以轻松扩展以满足...原创 2019-01-29 10:24:27 · 3297 阅读 · 0 评论 -
SpringBoot+SpringData JPA操作Mysql数据库
一、什么是JPA JPA本身并不是一种框架,是一种规范,其全称是Java Persistence API,是是Sun官方提出的Java持久化规范,而他的出现主要是为了简化现有的持久化开发工作和整合ORM技术,并且其是在充分吸收了现有Hibernate,TopLink,JDO等ORM框架的基础上发展而来的,具有易于使用,伸缩性强等优点。 Spring Data J...原创 2019-01-26 23:27:52 · 2120 阅读 · 2 评论 -
Zipkin分布式任务追踪
Zipkin分布式任务追踪zipkin简介Spring Cloud Sleuth的简介Span 的 Annotation 信息Span的生命周期Span 的存储方式更多 zipkin 学习资料:zipkin简介Zipkin 是一款开源的分布式实时数据追踪系统,由基于 Google Dapper 的论文设计而来,由 Twitter 公司提供开源实现,主要功能是聚集来自各个异构系统的实时监控数据,...转载 2018-12-26 10:52:40 · 464 阅读 · 0 评论 -
SpringBoot +JDBC连接Mysql数据库
SpringBoot 使用JDBC连接Mysql数据库 Spring连接Mysql的方式有很多,例如JDBC,Spring JPA,Hibeirnate,Mybatis等,本文主要介绍使用最简单、最底层的JDBC方式来连接Mysql数据库,JDBC连接数据库,主要是注入JdbcTemplate,使用JdbcTemplate来操作数据库。一、在mysql中的test库中建立user表,...原创 2018-07-09 15:37:46 · 66904 阅读 · 23 评论 -
SpringBoot+thymeleaf模板
SpringBoot 整合thymeleaf模板一、什么是Thymeleaf模板 Thymeleaf是一款用于渲染XML/XHTML/HTML5内容的模板引擎。类似JSP,Velocity,FreeMaker等,它也可以轻易的与Spring MVC等Web框架进行集成作为Web应用的模板引擎。与其它模板引擎相比,Thymeleaf最大的特点是能够直接在浏览器中打开并正确显示模板页面,而不...原创 2018-07-09 15:37:06 · 4548 阅读 · 0 评论 -
Spring Boot + FreeMarker模板
FreeMarker模板的使用 FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页、电子邮件、配置文件、源代码等)的通用工具。 它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件。 FreeMarker是免费的,基于Apache许可证2.0 版本发布。其模板编写为 FreeMarker Template...原创 2018-07-09 15:36:28 · 784 阅读 · 0 评论 -
Spring Boot Server等内容的配置
SpringBoot配置属性之ServerSpringBoot配置属性之Server:直接在application.properties中修改保存即可生效一、server配置 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...原创 2018-07-09 15:35:51 · 1153 阅读 · 0 评论 -
Spring Boot 资源文件属性配置
Spring Boot 资源文件属性配置 配置文件是指在resources根目录下的application.properties或application.yml配置文件,读取这两个配置文件的方法有两种,都比较简单。在pom.xml中添加: 1 2 3 4 5 <dependency> &...原创 2018-07-09 15:35:17 · 582 阅读 · 0 评论 -
SpringBoot热部署值devtools配置
SpringBoot通过配置devtools实现热部署概要: 基于Maven的SpringBoot项目,通过配置spring-boot-devtools模块来使Spring Boot应用支持热部署,无需每次更改代码都要手动项目,提高开发者的开发效率步骤:一、在项目的pom.xml文件添加如下两段<dependency> <groupId>or...原创 2018-07-09 15:34:22 · 397 阅读 · 0 评论 -
Spring Boot入门之Hello Spring Boot
Spring Boot 入门很简单前言Spring一直是很火的一个开源框架,在过去的一段时间里,Spring Boot在社区中热度一直很高,所以决定花时间来了解和学习,为自己做技术储备。一、什么是 Spring Boot它使用 “习惯优于配置” (项目中存在很多默认的配置,使用者只需要做极少的配置即可)的理念让你的项目快速运行起来; 它并不是什么新的框架,而是默认配置了很多框架的...原创 2018-07-09 15:33:10 · 1691 阅读 · 0 评论