SpringBoot专题
逍遥天扬
人定胜天
展开
-
SpringBoot入门建站全系列(三十六)AspectJ做AOP日志管理
SpringBoot入门建站全系列(三十六)AspectJ做AOP日志管理一、概述Spring的两大特性,AOP和IOC,AOP面向切面编程,可以对当前代码无侵入的情况下,使用AspectJ对切点数据进行分析存储。常常被用来做日志/流水的存储记录。本篇对如何使用spring-boot-starter-aop做简要说明,并补充常用的表达式。首发地址:SpringBoot入门建站全系列(三十六)AspectJ做AOP日志管理)如果大家正在寻找一个java的学习环境,或者在开发中遇到困难,可以加入我们的原创 2020-09-03 08:41:38 · 271 阅读 · 0 评论 -
SpringBoot入门建站全系列(三十五)整合Oauth2做单机版认证授权
SpringBoot入门建站全系列(三十四)使用Drools规则引擎做排班系统一、概述OAuth 2.0 规范定义了一个授权(delegation)协议,对于使用Web的应用程序和API在网络上传递授权决策非常有用。OAuth被用在各钟各样的应用程序中,包括提供用户认证的机制。四种模式:- 密码模式;- 授权码模式;- 简化模式;- 客户端模式;四种角色:- 资源拥有者;- 资...原创 2020-03-06 16:52:38 · 446 阅读 · 0 评论 -
SpringBoot入门建站全系列(三十四)使用Drools规则引擎做排班系统
SpringBoot入门建站全系列(三十四)使用Drools规则引擎做排班系统一、概述Drools 是用 Java 语言编写的开放源码规则引擎,使用 Rete 算法对所编写的规则求值。Drools 允许使用声明方式表达业务逻辑。可以使用非 XML 的本地语言编写规则,从而便于学习和理解。并且,还可以将 Java 代码直接嵌入到规则文件中,这令 Drools 的学习更加吸引人。总结一句,Dro...原创 2019-12-04 14:07:55 · 1749 阅读 · 0 评论 -
SpringBoot入门建站全系列(三十三)集成validator校验接口数据
SpringBoot入门建站全系列(三十三)集成validator校验接口数据一、概述在开发中经常需要写一些字段校验的代码,比如字段非空,字段长度限制,邮箱格式验证等等,如果我们直接将这些校验写死在代码里,将会遇到这种现象:验证代码繁琐,重复劳动方法内代码显得冗长代码可读性不高所以,我们可以使用hibernate validator来对字段的校验工作统一完成。spring-boo...原创 2019-11-21 09:33:07 · 462 阅读 · 0 评论 -
SpringBoot入门建站全系列(三十二)接入xxl-job分布式任务调度平台
SpringBoot入门建站全系列(三十二)接入xxl-job分布式任务调度平台一、概述XXL-JOB是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。但是我们到底用它来干什么呢?我们都知道,Quartz是Java 编写的开源作业调度框架,为在 Java 应用程序中进行作业调度提供了简单却强大的机制,在《S...原创 2019-11-18 09:53:26 · 307 阅读 · 0 评论 -
SpringBoot入门建站全系列(三十一)atomikos实现多数据源的分布式事务
SpringBoot入门建站全系列(三十一)atomikos实现多数据源的分布式事务一、概述多数据源,就是有多个数据库的配置。多数据源配置并不麻烦,使用起来和单数据源基本相同,但是,重要的是事务的控制。本篇使用atomikos做多数据源的分布式事务,基于Mysql的xa事务数据源,通过atomikos的事务管理器完成。并使用mybatis作为数据库中间件。首发地址:品茗IT-首发如果...原创 2019-10-16 10:13:11 · 291 阅读 · 0 评论 -
SpringBoot入门建站全系列(二十)SpringDataJpa使用乐观锁与悲观锁
SpringBoot入门建站全系列(二十)SpringDataJpa使用乐观锁与悲观锁一、概述之前有两篇《SpringBoot入门建站全系列(五)使用Spring-data-jpa操作数据库CRUD》和《SpringBoot入门建站全系列(六)Spring-data-jpa进阶使用》介绍了Spring如何结合Spring-data-jpa进行数据库访问操作。这一篇介绍下springboot环境...原创 2019-08-05 09:42:24 · 590 阅读 · 0 评论 -
SpringBoot入门建站全系列(二十二)异步任务执行的几种方式
SpringBoot入门建站全系列(二十二)异步任务执行的几种方式一、概述异步调用是相对于同步调用而言的,同步调用是指程序按预定顺序一步步执行,每一步必须等到上一步执行完后才能执行,异步调用则无需等待上一步程序执行完即可执行。实现异步任务的方式有很多,但是可以总结为多线程异步和多进程异步。多线程异步:多线程实现异步就是新建个线程,将任务交给新线程执行。不管是自己new Thre...原创 2019-08-15 09:40:23 · 388 阅读 · 0 评论 -
SpringBoot入门建站全系列(二十一)Mybatis使用乐观锁与悲观锁
SpringBoot入门建站全系列(二十一)Mybatis使用乐观锁与悲观锁一、概述之前有两篇《SpringBoot入门建站全系列(三)Mybatis操作数据库》和《SpringBoot入门建站全系列(四)Mybatis使用进阶篇:动态SQL与分页》介绍了Springboot如何结合Mybatis进行数据库访问操作。这一篇介绍下springboot环境下Mybatis如何进行乐观锁、悲观锁的使...原创 2019-08-12 09:33:53 · 1479 阅读 · 0 评论 -
SpringBoot入门建站全系列(二十三)配置文件优先级及自定义配置文件
SpringBoot入门建站全系列(二十三)配置文件优先级及自定义配置文件一、概述Spring Boot允许多种配置来源,官网是这样说的:Spring Boot使用一种非常特殊的PropertySource顺序,旨在允许合理地覆盖值。按以下顺序考虑属性(优先级从高到低):Devtools 主目录上的全局设置属性(~/.spring-boot-devtools.properties当dev...原创 2019-08-21 09:45:32 · 435 阅读 · 0 评论 -
SpringBoot入门建站全系列(二十五)结合Spring-data-elasticsearch进行全文检索
SpringBoot入门建站全系列(二十四)结合Spring-data-elasticsearch进行全文检索本文主要讲述spring-data-elasticsearch的简单使用。一、概述ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache...原创 2019-08-28 10:38:25 · 441 阅读 · 0 评论 -
SpringBoot入门建站全系列(二十六)Mongodb非关系型数据库的使用
SpringBoot入门建站全系列(二十六)Mongodb非关系型数据库的使用一、概述MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个...原创 2019-09-03 10:25:27 · 171 阅读 · 0 评论 -
SpringBoot入门建站全系列(二十七)WebSocket做简单的聊天室
SpringBoot入门建站全系列(二十七)WebSocket做简单的聊天室一、概述WebSocket 是一种网络通信协议。RFC6455 定义了它的通信标准。WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。HTTP 协议是一种无状态的、无连接的、单向的应用层协议。它采用了请求/响应模型。通信请求只能由客户端发起,服务端对请求做出应答处理。这...原创 2019-09-16 11:39:51 · 236 阅读 · 0 评论 -
SpringBoot入门建站全系列(二十八)整合Kafka做日志监控
SpringBoot入门建站全系列(二十八)整合Kafka做日志监控一、概述Apache Kafka是一个分布式发布 - 订阅消息系统和一个强大的队列,可以处理大量的数据,并使您能够将消息从一个端点传递到另一个端点。 Kafka适合离线和在线消息消费。 Kafka消息保留在磁盘上,并在群集内复制以防止数据丢失。 Kafka构建在ZooKeeper同步服务之上。 它与Apache Storm和S...原创 2019-09-20 09:02:10 · 2764 阅读 · 0 评论 -
SpringBoot入门建站全系列(二十九)Actuator服务监控及SpringBootMonitor单机监控页面
SpringBoot入门建站全系列(二十九)Actuator服务监控及SpringBootMonitor单机监控页面一、概述Actuaotr是spring boot项目中非常强大的一个功能,有助于对应用程序进行监控和管理,通过restful api请求来监管、审计、收集应用的运行情况,针对微服务而言它是必不可少的一个环节。spring-boot-actuator中已经内置了非常多的Endpo...原创 2019-10-08 09:25:43 · 1100 阅读 · 0 评论 -
SpringBoot入门建站全系列(二十四)使用Sharding-JDBC进行分库分表
SpringBoot入门建站全系列(二十四)使用Sharding-JDBC进行分库分表一、概述一个系统最初的线上业务量并不会很大,比如说单库的数据量在百万级别以下(事实上千万级别以下都还能支撑),那么MySQL的单库即可完成任何增/删/改/查的业务操作。随着业务的发展,单个DB中保存的数据量(用户、订单、计费明细和权限规则等数据)呈现指数级增长,那么各种业务处理操作都会面临单DB的IO读写瓶颈...原创 2019-08-23 09:34:11 · 865 阅读 · 0 评论 -
SpringBoot入门建站全系列(三十)Mybatis多数据源进行数据库操作
SpringBoot入门建站全系列(三十)Mybatis多数据源进行数据库操作一、概述多数据源,就是有多个数据库的配置。多数据源配置并不麻烦,使用起来和单数据源基本相同,但是,重要的是事务的控制。这就牵扯到分布式事务控制,本篇只是讲述多数据源的使用,下一篇再讲述如何使用分布式事务控制中间件。首发地址:品茗IT-首发如果大家正在寻找一个java的学习环境,或者在开发中遇到困难,可以加入...原创 2019-10-11 10:50:15 · 194 阅读 · 0 评论 -
SpringBoot入门建站全系列(十八)整合RabbitMQ(AMQP类消息队列)
SpringBoot入门建站全系列(十八)整合RabbitMQ(AMQP类消息队列)一、概述1.1 简介消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通信。对于消息中间件,常见的角色大致也就有Producer(生产者)、Consumer(消费者)常见的消息中间件产品:(1)...原创 2019-07-22 10:50:05 · 261 阅读 · 0 评论 -
SpringBoot入门建站全系列(十九)集成Activiti做工作流
SpringBoot入门建站全系列(十九)集成Activiti做工作流一、概述Activiti作为一个流行的开源工作流引擎,正在不断发展,其6.0版本以API形式提供服务,而之前版本基本都是要求我们的应用以JDK方式与其交互,只能将其携带到我们的应用中,而API方式则可以服务器独立运行方式,能够形成一个专网内工作流引擎资源共享的方式。本篇activiti工作流基于5.22.0。首发地址:...原创 2019-07-25 17:15:08 · 507 阅读 · 0 评论 -
SpringBoot入门建站全系列(二)Controller种类及映射处理详解
SpringBoot入门建站全系列(二)Controller种类及映射处理详解Controller及Mapping其实不属于SpringBoot,SpringBoot只是个大杂烩的容器而已。Controller及Mapping分别在Spring的web和context包中存在着。本文主要介绍Controller种类及映射处理详解,并针对不同的写法做出示例。品茗IT-SpringBoot专题-...原创 2019-04-26 17:08:06 · 1953 阅读 · 0 评论 -
SpringBoot入门建站全系列(三)Mybatis操作数据库
SpringBoot入门建站全系列(三)Mybatis操作数据库SpringBoot操作数据库有多种方式,如JDBC直接操作:太古老了,没人愿意这样玩Mybatis插件:比较时髦,比较适合sql复杂,或者对性能要求高的应用,因为sql都是自己写的。Spring-data-jpa: 使用hibernate作为实现,基本上不需要写sql,因为sql都是统计的,总是会产生多余的查询,性能上相对而...原创 2019-04-30 18:11:38 · 204 阅读 · 0 评论 -
SpringBoot入门建站全系列(五)使用Spring-data-jpa操作数据库CRUD
SpringBoot入门建站全系列(四)使用Spring-data-jpa操作数据库SpringBoot操作数据库有多种方式,如JDBC直接操作:太古老了,没人愿意这样玩Mybatis插件:比较时髦,比较适合sql复杂,或者对性能要求高的应用,因为sql都是自己写的。Spring-data-jpa: 使用hibernate作为实现,基本上不需要写sql,因为sql都是统计的,总是会产生多余...原创 2019-05-23 12:36:32 · 238 阅读 · 0 评论 -
SpringBoot入门建站全系列(四)Mybatis使用进阶篇:动态SQL与分页
SpringBoot入门建站全系列(四)Mybatis使用进阶篇:动态SQL与分页上一篇介绍了Mybatis的配置和基本用法《SpringBoot入门建站全系列(三)Mybatis操作数据库》这一篇在此基础上进阶使用mybatis。所以,这里就不说怎么怎么配置了,直接写mybatis的写法,至于调用,自己用service调就可以了。这里的sql都是面向mysql的哈,oracle用户要适当...原创 2019-05-29 16:07:08 · 263 阅读 · 0 评论 -
SpringBoot入门建站全系列(十)邮件发送功能
SpringBoot入门建站全系列(十)邮件发送功能Spring Mail API都在org.springframework.mail及其子包org.springframework.mail.javamail中封装。JavaMailSenderImpl: 邮件发送器,主要提供了邮件发送接口、透明创建Java Mail的MimeMessage、及邮件发送的配置(如:host/port/usern...原创 2019-06-19 12:24:22 · 440 阅读 · 0 评论 -
SpringBoot入门建站全系列(八)集成模板引擎(thymeleaf)渲染页面
SpringBoot入门建站全系列(八)集成模板引擎(thymeleaf)渲染页面说到页面渲染,这里不得不给大家科普一下:html文件负责显示页面,后台数据可以通过ajax方式获取,如果数据完全使用ajax获取,这样页面和后端就没什么联系,这时候就可以成为前后端分离。jsp页面是一种页面渲染方式,它是对jsp文件解析后,将后台数据填充到html页面并返回到前端,这种方式是非前后...原创 2019-06-14 16:05:44 · 275 阅读 · 0 评论 -
SpringBoot入门建站全系列(六)Spring-data-jpa进阶使用
SpringBoot入门建站全系列(六)Spring-data-jpa进阶使用上一篇介绍了Mybatis的配置和基本用法《SpringBoot入门建站全系列(五)使用Spring-data-jpa操作数据库CRUD》这一篇在此基础上进阶使用Spring-data-jpa。所以,这里就不说怎么怎么配置了,直接写Spring-data-jpa的写法,至于调用,dao层的自己用service调就可...原创 2019-06-11 17:36:12 · 264 阅读 · 0 评论 -
SpringBoot入门建站全系列(十一)Spring-security进行权限认证
SpringBoot入门建站全系列(十一)Spring-security进行权限认证Spring 是一个非常流行和成功的 Java 应用开发框架。Spring Security 基于 Spring 框架,提供了一套 Web 应用安全性的完整解决方案。一般来说,Web 应用的安全性包括用户认证(Authentication)和用户授权(Authorization)两个部分。用户认证指的是验证某个用...原创 2019-06-21 14:59:10 · 220 阅读 · 0 评论 -
SpringBoot入门建站全系列(七)日志组件的使用
SpringBoot入门建站全系列(七)日志组件的使用前面六篇已经对SpringBoot的基础用做了介绍,日常项目使用已经足够,本篇介绍下SpringBoot日志使用的注意事项。项目地址:品茗IT-同步发布品茗IT:提供在线快速构建Spring项目工具。一、日志组件科普Java可以用的日志组件有很多的,这里不得不科普一下。log4j是Apache的一个开源项目,专门打日志的。...原创 2019-06-12 10:48:54 · 283 阅读 · 0 评论 -
SpringBoot入门建站全系列(九)文件上传功能与下载方式
SpringBoot入门建站全系列(九)文件上传功能与下载方式Spring对文件上传做了简单的封装,就是用MultipartFile这个对象去接收文件,当然有很多种写法,下面会一一介绍。文件的下载很简单,给一个链接就行,而这个链接怎么生成,也有很多方式,下面也会讲解下常用的方式。项目地址:品茗IT-同步发布品茗IT 提供在线支持:一键快速构建Spring项目工具一键快速构建Sprin...原创 2019-06-18 11:48:57 · 187 阅读 · 0 评论 -
SpringBoot入门建站全系列(十四)集成Redis缓存
SpringBoot入门建站全系列(十四)集成Redis缓存一、概述本地缓存,就是使用应用内使用本地内存将数据暂缓存储,一般数据库的查询如果不怎么改动,可以用本地缓存暂存。远程缓存,比如redis,就是第三方缓存服务器,不是在当前应用的,需要用过tcp请求去获得的缓存。Redis是一个开源(BSD许可)的内存数据结构存储,用作数据库,缓存和消息代理。简单来说,它是一个以(key,valu...原创 2019-07-02 19:02:34 · 163 阅读 · 0 评论 -
SpringBoot入门建站全系列(十二)Spring Security使用token做认证
SpringBoot入门建站全系列(十二)Spring Security使用token做认证Spring 是一个非常流行和成功的 Java 应用开发框架。Spring Security 基于 Spring 框架,提供了一套 Web 应用安全性的完整解决方案。一般来说,Web 应用的安全性包括用户认证(Authentication)和用户授权(Authorization)两个部分。用户认证指的是验...原创 2019-06-24 18:02:17 · 1540 阅读 · 0 评论 -
SpringBoot入门建站全系列(十五)内置定时任务及Quartz定时任务使用
SpringBoot入门建站全系列(十五)内置定时任务及Quartz定时任务使用一、概述用Spring,就是为了简单。但是我还是要总结下java定时任务实现的几种方式。1.TimerTask,等于一个线程隔一段时间运行一下。2.ScheduledExecutorService,线程池版的TimerTask。3.Spring支持的定时任务,@Schedule注解,支持crontab表达式...原创 2019-07-09 09:59:28 · 543 阅读 · 0 评论 -
SpringBoot入门建站全系列(十三)本地缓存的使用(Ehcache和caffeine的使用)
SpringBoot入门建站全系列(十三)本地缓存的使用(Ehcache和caffeine的使用)一、概述本地缓存,就是使用应用内使用本地内存将数据暂缓存储,一般数据库的查询如果不怎么改动,可以用本地缓存暂存。远程缓存,比如redis,就是第三方缓存服务器,不是在当前应用的,需要用过tcp请求去获得的缓存。Springboot的官方文档中列出了9种:GenericJCache (JS...原创 2019-06-28 09:36:28 · 1089 阅读 · 0 评论 -
SpringBoot入门建站全系列(十七)整合ActiveMq(JMS类消息队列)
SpringBoot入门建站全系列(十七)整合ActiveMq(JMS类消息队列)一、概述消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通信。对于消息中间件,常见的角色大致也就有Producer(生产者)、Consumer(消费者)常见的消息中间件产品:(1)ActiveMQ...原创 2019-07-16 09:59:52 · 198 阅读 · 0 评论 -
SpringBoot入门建站全系列(十六)整合Swagger文档中心
SpringBoot入门建站全系列(十六)整合Swagger文档中心一、概述Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新 。接口的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。Swagger 让部署管理和使用功能强大的API从未如此简单。swagger...原创 2019-07-12 09:51:58 · 205 阅读 · 0 评论 -
SpringBoot入门建站全系列(一)项目建立
SpringBoot入门建站全系列(一)项目建立一、新建Maven项目本例使用eclipse来建立maven项目。二、引入SpringBoot在新建的maven项目里,找到pom.xml文件,修改文件内容,引入SpringBoot有两种种方式:以parent来引入SpringBoot和以parent来引入SpringBoot:2.1 以parent来引入SpringBoot<...原创 2019-04-25 20:05:05 · 662 阅读 · 0 评论