
SpringBoot
文章平均质量分 96
超全SpringBoot教程,收藏就完事了!
潮浪之巅
本硕计算机科班人,全栈领域优质创造者感谢您的关注!欢迎访问我的个人网站: xzj520.top,我的专栏目录汇总:https://blog.csdn.net/Learning_xzj/article/details/125114788
展开
-
打造专业级ChatGPT风格聊天界面:SpringBoot与Vue实现动态打字机效果,附完整前后端源码
打造专业级ChatGPT风格聊天界面:SpringBoot与Vue实现动态打字机效果,附完整前后端源码。Web开发的世界永远充满惊喜,不是吗?每当我们认为自己掌握了所有的技巧和工具,总会有新的技术出现,挑战我们的知识库。今天,我们要探讨的这项技术可能对一些人来说并不陌生,但对于其他人来说,则像是新发现的宝藏。没错,我在说的是Server-Sent Events(SSE)。你可能会问:“SSE是什么?”简单来说,SSE是一种让服务器实时向客户端发送更新的技术。但别误会,这不是另一个WebSockets。让我们原创 2024-01-23 14:32:40 · 20363 阅读 · 121 评论 -
apollo最佳实战之安装与SpringBoot接入
Apollo(阿波罗)是一款可靠的分布式配置管理中心,诞生于携程框架研发部,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。服务端基于Spring Boot和Spring Cloud开发,打包后可以直接运行,不需要额外安装Tomcat等应用容器。原创 2022-09-15 16:21:01 · 1691 阅读 · 0 评论 -
SpringBoot整合Spring Boot Admin监控
在说监控之前,需要回顾一下软件业的发展史。最早的软件完成一些非常简单的功能,代码不多,错误也少。随着软件功能的逐步完善,软件的功能变得越来越复杂,功能不能得到有效的保障,这个阶段出现了针对软件功能的检测,也就是软件测试。伴随着计算机操作系统的逐步升级,软件的运行状态也变得开始让人捉摸不透,出现了不稳定的状况。伴随着计算机网络的发展,程序也从单机状态切换成基于计算机网络的程序,应用于网络的程序开始出现,由于网络的不稳定性,程序的运行状态让使用者更加堪忧。互联网的出现彻底打破了软件的思维模式,随之而来的互原创 2022-06-30 11:59:24 · 3475 阅读 · 7 评论 -
【SpringBoot的自动配置--上篇】自动配置的本质
Spring Boot最大的功劳就在于自动配置,它的自动配置功能能根据类加载路径下的JAR依赖自动配置基础设施。例如,当Spring Boot检测到类加载路径下包含了MySQL依赖,且容器中没有配置其他任何DataSource时,Spring Boot就会自动启动HSQLDB数据库。Spring Boot 的自动配置大多会根据特定依赖库自动触发,启用自动配置需要使用@EnableAutoConfiguration注解。注意,整个应用只需要添加一个该注解,因此,通常只要将该注解添加到主配置类(Spring原创 2022-06-10 09:23:17 · 1397 阅读 · 0 评论 -
【SpringBoot的自动配置--中篇】自动配置的常用条件注解
下面通过例子来示范@ConditionalOnClass注解的用法。首先创建一个Maven项目,定义如下配置类:上面配置类使用了@ConditionalOnClass(name=“com.mysql.cj.jdbc.Driver”)修饰,这意味着只有当com.mysql.cj.jdbc.Driver类存在时,该配置类才会上面配置类使用了@ConditionalOnClass(name=“com.mysql.cj.jdbc.Driver”)修饰,这意味着只有当com.mysql.cj.jdbc.Driver原创 2022-06-10 09:27:13 · 1555 阅读 · 0 评论 -
SpringBoot如何自定义自己的条件注解与自动配置
Spring Boot的核心功能就是为整合第三方框架提供自动配置,而本文则带着大家实现了自己的自动配置和Starter,一旦真正掌握了本文的内容,就会对Spring Boot产生“一览众山小”的感觉。原创 2022-06-10 09:35:39 · 6981 阅读 · 175 评论 -
【SpringBoot整合MQ】-----SpringBoot整合ActiveMQ
ActiveMQ是MQ产品中的元老级产品,早期标准MQ产品之一,在AMQP协议没有出现之前,占据了消息中间件市场的绝大部分份额,后期因为AMQP系列产品的出现,迅速走弱,目前仅在一些线上运行的产品中出现,新产品开发较少采用。 windows版安装包下载地址:https://activemq.apache.org/components/classic/download/ 下载的安装包是解压缩就能使用的zip文件,解压缩完毕后会得到如下文件[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下原创 2022-06-29 13:53:00 · 608 阅读 · 2 评论 -
SpringBoot整合JUnit、MyBatis、MyBatis-plus、Druid详解
Spring Boot的核心功能就是为整合第三方框架提供自动配置,SpringBoot之所以好用,就是它能方便快捷的整合其他技术,这一部分咱们就来聊聊一些技术的整合方式,通过本文的学习,大家能够感受到SpringBoot到底有多酷炫。本文将学习如下技术的整合方式:- 整合JUnit- 整合MyBatis- 整合MyBatis-Plus- 整合Druid......原创 2022-06-15 18:32:17 · 593 阅读 · 2 评论 -
【SpringBoot+Vue实现书籍管理系统--上篇】模块创建、数据库创建、分页制作以及条件查询
本文所涉及的代码已经编译打包到我的云服务器中http://47.106.176.37:8080/pages/books.html主页面添加删除修改分页条件查询 整体案例中需要采用的技术如下 希望通过这个案例,各位小伙伴能够完成基础开发的技能训练。整体开发过程采用做一层测一层的形式进行,过程完整。 对于这个案例如果按照企业开发的形式进行应该制作后台微服务,前后端分离的开发。 为了简化开发,在这里用后台做单体服务器,前端不使用前后端分离的制作了。 一个服务器即充当后台服务调用,又负责前端页面展示原创 2022-06-15 20:42:39 · 1296 阅读 · 0 评论 -
【SpringBoot+Vue实现书籍管理系统--中篇】模块创建、数据库创建、分页制作以及条件查询
本文所涉及的代码已经编译打包到我的云服务器中http://47.106.176.37:8080/pages/books.html主页面添加删除修改分页条件查询 整体案例中需要采用的技术如下 希望通过这个案例,各位小伙伴能够完成基础开发的技能训练。整体开发过程采用做一层测一层的形式进行,过程完整。 数据层开发告一段落,下面进行业务层开发,其实标准业务层开发很多初学者认为就是调用数据层,怎么说呢?这个理解是没有大问题的,更精准的说法应该是组织业务逻辑功能,并根据业务需求,对数据持久层发起调用。有什么差原创 2022-06-15 20:48:17 · 692 阅读 · 0 评论 -
【SpringBoot+Vue实现书籍管理系统--下篇】整合MyBatisPlus完成分页功能的开发并部署到docker容器中
本文所涉及的代码已经编译打包到我的云服务器中:http://47.106.176.37:8080/pages/books.html 欢迎大家测试访问。主页面添加删除修改分页条件查询 希望通过这个案例,各位小伙伴能够完成基础开发的技能训练。整体开发过程采用做一层测一层的形式进行,过程完整。 页面数据模型定义 异步请求获取数据 这样在页面加载时就可以获取到数据,并且由VUE将数据展示到页面上了。 默认状态 切换为显示状态 定义清理数据操作 切换弹窗状态时清理数据原创 2022-06-15 21:03:25 · 5429 阅读 · 160 评论 -
SpringBoot整合JUnit、MyBatis、MyBatis-plus、Druid详解
SpringBoot技术的定位用于简化开发,再具体点是简化Spring程序的开发。所以在整合任意技术的时候,如果你想直观感触到简化的效果,你必须先知道使用非SpringBoot技术时对应的整合是如何做的,然后再看基于SpringBoot的整合是如何做的,才能比对出来简化在了哪里。 我们先来看一下不使用SpringBoot技术时,Spring整合JUnit的使用方式 其中核心代码是前两个注解,第一个注解@RunWith是设置Spring专用的测试类运行器,简单说就是Spring程序执行程序有自原创 2022-06-23 15:20:39 · 575 阅读 · 0 评论 -
【SpringBoot开发利器】----使用MyBatis逆向自动生成实体类、mapper文件、mapper.xml文件
本文将通过SpringBoot实例逐步讲解MyBatis逆向的使用,包括如何在application.properties中配置数据库资源、在application.properties中配置数据库资源、操作Mybatis逆向工程、最后编写Controller,Service代码演示之前的介绍。............原创 2022-05-22 20:02:26 · 1387 阅读 · 0 评论 -
SpringBoot程序的打包与运行
刚开始做开发学习的小伙伴可能在有一个知识上面有错误的认知,我们天天写程序是在Idea下写的,运行也是在Idea下运行的。但是实际开发完成后,我们的项目是不可能运行在自己的电脑上的。我们以后制作的程序是运行在专用的服务器上的,简单说就是将你做的程序放在一台独立运行的电脑上,这台电脑要比你开发使用的计算机更专业,并且安全等级各个方面要远超过你现在的电脑。那我们的程序如何放置在这台专用的电脑上呢,这就要将我们的程序先组织成一个文件,然后将这个文件传输到这台服务器上。这里面就存在两个过程,一个是打包的过程,另一原创 2022-06-23 15:32:53 · 1724 阅读 · 0 评论 -
一文了解SpringBoot的配置文件
SpringBoot通过配置文件application.properties就可以修改默认的配置,那咱们就先找个简单的配置下手,当前访问tomcat的默认端口是8080,好熟悉的味道,但是不便于书写,我们先改成80,通过这个操作来熟悉一下SpringBoot的配置格式是什么样的。 那该如何写呢?properties格式的文件书写规范是key=value 这个格式肯定是不能颠覆的,那就尝试性的写就行了,改端口,写port。当你输入port后,神奇的事情就发生了,这玩意儿带提示,太好了。 根据提示原创 2022-06-23 15:42:41 · 1018 阅读 · 3 评论 -
SpringBoot如何打日志、控制输出格式、存储日志到文件
或许各位小伙伴并不习惯于使用日志,没关系,慢慢多用,习惯就好。想进大厂,这是最基本的,别去面试的时候说没用过,完了,没机会了。 日志的使用格式非常固定,直接上操作步骤:步骤①:添加日志记录操作 上述代码中log对象就是用来记录日志的对象,下面的log.debug,log.info这些操作就是写日志的API了。步骤②:设置日志输出级别 日志设置好以后可以根据设置选择哪些参与记录。这里是根据日志的级别来设置的。日志的级别分为6种,分别是: 一般情况下,开发时候使用DEBUG,上线后使用I原创 2022-06-23 18:38:53 · 2371 阅读 · 3 评论 -
一文了解SpringBoot如何开启热部署
热部署的功能是如何实现的呢?这就要分两种情况来说了,非springboot工程和springboot工程的热部署实现方式完全不一样。先说一下原始的非springboot项目是如何实现热部署的。非springboot项目热部署实现原理 开发非springboot项目时,我们要制作一个web工程并通过tomcat启动,通常需要先安装tomcat服务器到磁盘中,开发的程序配置发布到安装的tomcat服务器上。如果想实现热部署的效果,这种情况其实有两种做法,一种是在tomcat服务器的配置文件中进行配置,原创 2022-06-23 18:42:23 · 8185 阅读 · 2 评论 -
一文了解SpringBoot的单元测试
测试过程本身并不是一个复杂的过程,但是很多情况下测试时需要模拟一些线上情况,或者模拟一些特殊情况。如果当前环境按照线上环境已经设定好了,例如是下面的配置 但是你现在想测试对应的兼容性,需要测试如下配置 这个时候我们能不能每次测试的时候都去修改源码application.yml中的配置进行测试呢?显然是不行的。每次测试前改过来,每次测试后改回去,这太麻烦了。于是我们就想,需要在测试环境中创建一组临时属性,去覆盖我们源码中设定的属性,这样测试用例就相当于是一个独立的环境,能够独立测试,这样就方原创 2022-06-23 18:48:29 · 6770 阅读 · 0 评论 -
SpringBoot整合sql数据源
回忆一下之前做SSMP整合的时候数据层解决方案涉及到了哪些技术?MySQL数据库与MyBatisPlus框架,后面又学了Druid数据源的配置,所以现在数据层解决方案可以说是Mysql+Druid+MyBatisPlus。而三个技术分别对应了数据层操作的三个层面: 下面的研究就分为三个层面进行研究,对应上面列出的三个方面,咱们就从第一个数据源技术开始说起。 目前我们使用的数据源技术是Druid,运行时可以在日志中看到对应的数据源初始化信息,具体如下: 如果不使用Druid数据源,程序运行原创 2022-06-23 19:01:13 · 1061 阅读 · 0 评论 -
【SpringBoot整合NoSql】-----Redis篇
Redis是一款采用key-value数据存储格式的内存级NoSQL数据库,重点关注数据存储格式,是key-value格式,也就是键值对的存储形式。与MySQL数据库不同,MySQL数据库有表、有字段、有记录,Redis没有这些东西,就是一个名称对应一个值,并且数据以存储在内存中使用为主。什么叫以存储在内存中为主?其实Redis有它的数据持久化方案,分别是RDB和AOF,但是Redis自身并不是为了数据持久化而生的,主要是在内存中保存数据,加速数据访问的,所以说是一款内存级数据库。 Redis支持原创 2022-06-23 19:06:24 · 569 阅读 · 2 评论 -
【SpringBoot整合NoSql】-----MongoDB篇
使用Redis技术可以有效的提高数据访问速度,但是由于Redis的数据格式单一性,无法操作结构化数据,当操作对象型的数据时,Redis就显得捉襟见肘。在保障访问速度的情况下,如果想操作结构化数据,看来Redis无法满足要求了,此时需要使用全新的数据存储结束来解决此问题,本节讲解springboot如何整合MongoDB技术。 MongoDB是一个开源、高性能、无模式的文档型数据库,它是NoSQL数据库产品中的一种,是最像关系型数据库的非关系型数据库。 上述描述中几个词,其中对于我们最陌生的词是原创 2022-06-23 19:16:38 · 530 阅读 · 2 评论 -
【SpringBoot整合NoSql】-----ElasticSearch的安装与操作篇
Redis可以使用内存加载数据并实现数据快速访问,MongoDB可以在内存中存储类似对象的数据并实现数据的快速访问,在企业级开发中对于速度的追求是永无止境的。下面要讲的内容也是一款NoSQL解决方案,只不过他的作用不是为了直接加速数据的读写,而是加速数据的查询的,叫做ES技术。 ES(Elasticsearch)是一个分布式全文搜索引擎,重点是全文搜索。 那什么是全文搜索呢?比如用户要买一本书,以java为关键字进行搜索,不管是书名中还是书的介绍中,甚至是书的作者名字,只要包含java就作为查询结果原创 2022-06-23 19:32:43 · 4646 阅读 · 77 评论 -
【SpringBoot整合缓存】-----spring-boot-starter-cache篇
缓存在企业级应用主要作用是信息处理,当需要读取数据时,由于受限于数据库的访问效率,导致整体系统性能偏低。 应用程序直接与数据库打交道,访问效率低 为了改善上述现象,开发者通常会在应用程序与数据库之间建立一种临时的数据存储机制,该区域中的数据在内存中保存,读写速度较快,可以有效解决数据库访问效率低下的问题。这一块临时存储数据的区域就是缓存。使用缓存后,应用程序与缓存打交道,缓存与数据库打交道,数据访问效率提高。 缓存是什么?缓存是一种介于数据永久存储原创 2022-06-28 22:06:10 · 8691 阅读 · 0 评论 -
【SpringBoot整合缓存】-----Ehcache篇
应用程序直接与数据库打交道,访问效率低 为了改善上述现象,开发者通常会在应用程序与数据库之间建立一种临时的数据存储机制,该区域中的数据在内存中保存,读写速度较快,可以有效解决数据库访问效率低下的问题。这一块临时存储数据的区域就是缓存。使用缓存后,应用程序与缓存打交道,缓存与数据库打交道,数据访问效率提高。 缓存是什么?缓存是一种介于数据永久存储介质与应用程序之间的数据临时存储介质,使用缓存可以有效的减少低速数据读取过程的次数(例如磁盘IO),提高系原创 2022-06-28 22:07:37 · 6979 阅读 · 0 评论 -
【SpringBoot整合缓存】-----Redis缓存篇
缓存在企业级应用主要作用是信息处理,当需要读取数据时,由于受限于数据库的访问效率,导致整体系统性能偏低。 应用程序直接与数据库打交道,访问效率低 为了改善上述现象,开发者通常会在应用程序与数据库之间建立一种临时的数据存储机制,该区域中的数据在内存中保存,读写速度较快,可以有效解决数据库访问效率低下的问题。这一块临时存储数据的区域就是缓存。使用缓存后,应用程序与缓存打交道,缓存与数据库打交道,数据访问效率提高。 缓存是什么?缓存是一种介于数据永久存储原创 2022-06-28 22:09:29 · 6112 阅读 · 0 评论 -
【SpringBoot整合缓存】-----Memcached缓存篇
目前我们已经掌握了3种缓存解决方案的配置形式,分别是springboot内置缓存,ehcache和redis,本节研究一下国内比较流行的一款缓存memcached。 按照之前的套路,其实变更缓存并不繁琐,但是springboot并没有支持使用memcached作为其缓存解决方案,也就是说在type属性中没有memcached的配置选项,这里就需要更变一下处理方式了。在整合之前先安装memcached。安装 windows版安装包下载地址:https://www.runoob.com/memca原创 2022-06-28 22:12:06 · 377 阅读 · 0 评论 -
【SpringBoot整合缓存】-----jetcache以及j2cache篇
目前我们使用的缓存都是要么A要么B,能不能AB一起用呢?这一节就解决这个问题。springboot针对缓存的整合仅仅停留在用缓存上面,如果缓存自身不支持同时支持AB一起用,springboot也没办法,所以要想解决AB缓存一起用的问题,就必须找一款缓存能够支持AB两种缓存一起用,有这种缓存吗?还真有,阿里出品,jetcache。 jetcache严格意义上来说,并不是一个缓存解决方案,只能说他算是一个缓存框架,然后把别的缓存放到jetcache中管理,这样就可以支持AB缓存一起用了。并且jetca原创 2022-06-28 22:15:20 · 2626 阅读 · 0 评论 -
【SpringBoot定时任务篇】-----Quartz以及Task详解
Quartz技术是一个比较成熟的定时任务框架,怎么说呢?有点繁琐,用过的都知道,配置略微复杂。springboot对其进行整合后,简化了一系列的配置,将很多配置采用默认设置,这样开发阶段就简化了很多。再学习springboot整合Quartz前先普及几个Quartz的概念。 简单说就是你定时干什么事情,这就是工作,工作不可能就是一个简单的方法,还要设置一些明细信息。工作啥时候执行,设置一个调度器,可以简单理解成设置一个工作执行的时间。工作和调度都是独立定义的,它们两个怎么配合到一起呢?用触发器。完原创 2022-06-28 22:19:56 · 1048 阅读 · 0 评论 -
SpringBoot整合邮件发送
springboot整合第三方技术第三部分我们来说说邮件系统,发邮件是java程序的基本操作,springboot整合javamail其实就是简化开发。不熟悉邮件的小伙伴可以先学习完javamail的基础操作,再来看这一部分内容才能感触到springboot整合javamail究竟简化了哪些操作。简化的多码?其实不多,差别不大,只是还个格式而已。 学习邮件发送之前先了解3个概念,这些概念规范了邮件操作过程中的标准。 简单说就是SMPT是发邮件的标准,POP3是收邮件的标准,IMAP是对POP3原创 2022-06-28 22:22:43 · 1205 阅读 · 2 评论 -
【SpringBoot整合MQ】-----消息的概念以及处理消息的标准规范
从广义角度来说,消息其实就是信息,但是和信息又有所不同。信息通常被定义为一组数据,而消息除了具有数据的特征之外,还有消息的来源与接收的概念。通常发送消息的一方称为消息的生产者,接收消息的一方称为消息的消费者。这样比较后,发现其实消息和信息差别还是很大的。 为什么要设置生产者和消费者呢?这就是要说到消息的意义了。信息通常就是一组数据,但是消息由于有了生产者和消费者,就出现了消息中所包含的信息可以被二次解读,生产者发送消息,可以理解为生产者发送了一个信息,也可以理解为生产者发送了一个命令;消费者接收消原创 2022-06-29 13:50:56 · 681 阅读 · 0 评论 -
【SpringBoot整合MQ】-----SpringBoot整合RabbitMQ
RabbitMQ是MQ产品中的目前较为流行的产品之一,它遵从AMQP协议。RabbitMQ的底层实现语言使用的是Erlang,所以安装RabbitMQ需要先安装Erlang。Erlang安装 下载完毕后得到exe安装文件,一键傻瓜式安装,安装完毕需要重启,需要重启,需要重启。 安装的过程中可能会出现依赖Windows组件的提示,根据提示下载安装即可,都是自动执行的,如下: Erlang安装后需要配置环境变量,否则RabbitMQ将无法找到安装的Erlang。需要配置项如下,作用等同JDK配原创 2022-06-29 13:57:43 · 1420 阅读 · 0 评论 -
【SpringBoot整合MQ】-----SpringBoot整合RocketMQ
RocketMQ由阿里研发,后捐赠给apache基金会,目前是apache基金会顶级项目之一,也是目前市面上的MQ产品中较为流行的产品之一,它遵从AMQP协议。 windows版安装包下载地址:https://rocketmq.apache.org/ 下载完毕后得到zip压缩文件,解压缩即可使用,解压后得到如下文件 RocketMQ安装后需要配置环境变量,具体如下: 关于NAMESRV_ADDR对于初学者来说建议配置此项,也可以通过命令设置对应值,操作略显繁琐,建议配置。系统学习Roc原创 2022-06-29 13:59:27 · 1535 阅读 · 1 评论 -
【SpringBoot整合MQ】-----SpringBoot整合Kafka
windows版安装包下载地址:https://kafka.apache.org/downloads 下载完毕后得到tgz压缩文件,使用解压缩软件解压缩即可使用,解压后得到如下文件 建议使用windows版2.8.1版本。启动服务器 kafka服务器的功能相当于RocketMQ中的broker,kafka运行还需要一个类似于命名服务器的服务。在kafka安装目录中自带一个类似于命名服务器的工具,叫做zookeeper,它的作用是注册中心。 运行bin目录下的windows目录下的z原创 2022-06-29 14:02:11 · 1885 阅读 · 9 评论