springboot2 springboot spring3 spring

【SpringBoot】梳理(未完待续)

1 前言 在复习 SpringBoot,顺便画画图,捋捋执行过程哈。画图工具用的 ProcessOn,感觉还行。 2 启动 2.1 初始化器、监听器 2.2 构建环境变量对象 ......
SpringBoot

springboot源码解析

1、初始化SpringApplication启动的第一步,先调用SpringApplication的静态函数run方法,run方法会调用SpringApplication的有参构造方法来初始化SpringApplication。而SpringApplication的初始化方法主要做以下几件事情:1、 ......
springboot 源码

IDEA新建SpringBoot项目突然报错问题的解决

问题描述 在我使用IDEA新建SpringBoot项目时,突然出现这个错误: 之前也是一直这么新建项目,这次突然出现这样的错误,哎呦,我真服啦~ 问题解决 就是说吧,在我看了网上解决问题的教程之后,发现都没有问题,然后我就不死心地又试了试, 发现就成功创建了,具体怎么解决的,我确实是不太清楚了。 ......
SpringBoot 项目 问题 IDEA

微服务系列-使用WebFlux的WebClient进行Spring Boot 微服务通信示例

公众号「架构成长指南」,专注于生产实践、云原生、分布式系统、大数据技术分享。 概述 在之前的教程中,我们看到了使用 RestTemplate 的 Spring Boot 微服务通信示例。 从 5.0 开始,RestTemplate处于维护模式,很快就会被弃用。因此 Spring 团队建议使用org. ......
示例 WebClient WebFlux Spring Boot

Spring Boot集成Druid异常discard long time none received connection.

为什么要清空空闲60秒以上的连接 猜测,阿里给数据库设置的数据库空闲等待时间是60秒,mysql数据库到了空闲等待时间将关闭空闲的连接,以提升数据库服务器的处理能力。 MySQL的默认空闲等待时间是8小时,就是「wait_timeout」的配置值。如果数据库主动关闭了空闲的连接,而连接池并不知道,... ......
connection received discard Spring Druid

Spring5学习随笔-Spring5的基本介绍、工厂设计模式

学习视频:【孙哥说Spring5:从设计模式到基本应用到应用级底层分析,一次深入浅出的Spring全探索。学不会Spring?只因你未遇见孙哥】 第一章、引言 ![](https://img2023.cnblogs.com/blog/3321544/202311/3321544-2023111312 ......
Spring5 Spring 设计模式 随笔 工厂

SpringBoot 项目优雅实现读写分离

当使用Spring Boot开发数据库应用时,读写分离是一种常见的优化策略。读写分离将读操作和写操作分别分配给不同的数据库实例,以提高系统的吞吐量和性能。 ......
SpringBoot 项目

SpringBoot: RestTemplate中文乱码

1. 问题原因 RestTemplate的构造器创建了一个默认字符集为ISO-8859-1的StringHttpMessageConverter对象, 它的默认编码格式为ISO-8859-1, 所以需要修改这个StringHttpMessageConverter对象的编码格式即可 2. 解决方案 @ ......
乱码 RestTemplate SpringBoot

SpringBoot后端流程

1.idea创建springboot项目:2.7版本 2.pom依赖导入 <!-- web --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifa ......
SpringBoot 流程

springboot学习日记(三)

pom.xml里的各项dependency,鼠标中键可以快捷进入,发现pom中的是各种依赖的集合包,并且包中定义了各种依赖的版本信息,防止未来出现版本冲突。这就是springboot的依赖传递。 可以使用application.properties或者application.yml或者yaml,关于 ......
springboot 日记

spring大概理解

spring 是ioc/di/aop 管理业务和注解扫描注册一类 spring mvc 是web层的,控制url和页面跳转,数据返回获取。 springboot感觉是整合两个的。配置了启动器用于jar包的导入,启动类负责项目的启动(spring中的applicationContext = new c ......
spring

springboot

g的开发模式越来越显得笨重。在这种环境下,spring boot伴随着spring4一起出现了。 SpringBoot框架可以做什么:spring boot并不是一个全新的框架,它不是spring解决方案的一个替代品,而是spring的一个封装。所以,你以前可以用spring做的事情,现在用spri ......
springboot

Spring Cloud Seata 系列:Seata-Server (1.7.1)安装与配置(集成 Nacos)

目录一、简介术语事务模式XA 模式AT 模式TCC 模式Sage 模式说明二、Seata Server 存储模式1、file 模式①修改application.xml②启动Seata-Server2、db 模式①运行mysql.sql脚本②修改application.xml③修改 config.tx ......
Seata Seata-Server Spring Server Cloud

java项目实战-spring-基本用法01-day24

目录1. spring 简单介绍2. IOC/DI --控制反转--是啥3. 实现3. 如果 对象的 属性为引用数据类型 如何 实例化对象4 如何用注解的方式 以少量的代码实现对象的创建于获取 1. spring 简单介绍 https://spring.io 什么事 SSM? spring-mvc ......
实战 项目 spring java day

2.Spring、SpringMVC、MyBatis、Git入门

Spring核心思想 数据管理:事务、整合数据库 web 集成:邮件、定时任务、消息队列、安全控制 管理bean:给bean,给配置(知道关系) 1.启动tomcat 2.自动创建Spring容器,自动扫描某些包下的某些bean,让bean装配到容器中 @SpringBootConfiguratio ......
SpringMVC MyBatis Spring Git

springboot使用requestmapping创建xml响应体接口

entity下创建类文件,类名分别为:ResponseXml,ResponseItemcontroller下创建xml响应体实现方法 getResponseWithXml ResponseXml Start import javax.xml.bind.annotation.*; //根标签@XmlR ......
requestmapping springboot 接口 xml

SpringBoot3.x使用Swagger

SpringBoot3.x使用Swagger 当前开发主流是前后端分离,有完整文档可以使团队配合更加流畅 Spring生态中通常使用springfox,但是当前springfox并不支持SpringBoot3.x版本 使用替代产品:Springdoc.org Springdoc在v1.7.0版本之后 ......
SpringBoot3 SpringBoot Swagger

SpringBoot创建非web项目

从开始使用SpringBoot到现在,一直都是在用SpringBoot开发web服务(API服务),其实SpringBoot也支持非web项目。 Spring诞生之初就不是为web项目定制的,SpringBoot无非是在spring核心项目的基础上添加了一些方便开发者使用的组件,所以使用Spring ......
SpringBoot 项目 web

非web应用下快速搭建Spring环境

Spring诞生之初就不是为web项目定制的。 首先我们要弄明白常用的web项目和非web项目的区别在哪儿?无疑是服务启动和执行逻辑触发的方式: web项目需要依赖web容器来启动,通过http请求来触发相关的服务; 非web项目则不需要依赖web容器来启动,它可以是自启动的; 添加Spring依赖 ......
环境 Spring web

不依赖于cn.hutool.extra.servlet.ServletUtil,使用Spring其他方式实现文件下载的功能

在JDK17下,如下代码引用了cn.hutool.extra.servlet包下的 ServletUtil工具类的ServletUtil.write方法,执行时报”Cannot resolve method 'write(jakarta.servlet.http.HttpServletRespons ......

springboot学习日记(二)

运行springboot项目报错o.s.b.d.LoggingFailureAnalysisReporter,查资料试着查一下端口占用8080。 netstat -aon|findstr 8080 发现8080端口被进程8768占用。 查找8768进程的程序 tasklist|findstr 876 ......
springboot 日记

Spring Gateway 同时拦截输入输出做日志操作

Spring Gateway 同时拦截输入输出做日志操作,包括request body, 和response body 主要靠代理模式,参考 https://stackoverflow.com/questions/47182961/copy-of-the-request-response-body- ......
同时 Gateway Spring 日志

编译spring5.2.x源码

编译spring源码是学习spring的第一步,spring源码是用gradle编译的,在编译时会遇到一些问题,在此记录一下。 下载spring源码 第一步需要下载spring的源码,由于官方托管在github,国内访问github不通畅,这里就直接使用gitee的镜像仓库,在国内比较快,地址:ht ......
源码 spring5 spring

多模块springboot项目打jar包 没有主清单属性

说明:一个多模块的项目 两个子Module 一个core 一个server。java8的环境 | -- XChome (pom.xml xchome的 父级) --|--xc-core (pom.xml xc-core的 子级) --|--xc-server (pom.xml xc-server的 ......
springboot 清单 模块 属性 项目

如何使用 RestTemplate 进行 Spring Boot 微服务通信示例

概述 下面我们将学习如何创建多个 Spring boot 微服务以及如何使用 RestTemplate 类在多个微服务之间进行同步通信。 微服务通信有两种风格: 同步通讯 异步通信 同步通讯 在同步通信的情况下,客户端发送请求并等待服务的响应。这里重要的一点是协议(HTTP/HTTPS)是同步的,客 ......
示例 RestTemplate Spring Boot

SpringBoot部署的jar包瘦身

pom文件打包插件更换 参考连接:https://www.jb51.net/program/293676eog.htm 参考连接:https://blog.csdn.net/meng_9543/article/details/121329834 <build> <finalName>xxx-xxx< ......
SpringBoot jar

springboot学习日记(一)

今天连下数据库,不小心打成netstart mysql了,好糗。。以后等时机到了笔记也该换成markdown写了,好久没写md后面得复习下。 然后idea这边连数据库很简单不用写专门的程序,右侧栏database直接可以点开具体到连接某个数据库。 记录一下注解的原理和作用: 以前,『XML』是各大框 ......
springboot 日记

使用Springboot结合mybatis搭建最简单的操作mysql教程

废话不说,上代码 pom文件,如果是jdk1.8,请使用如下的SpringBoot版本号 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http ......
Springboot mybatis 教程 mysql

Spring BeanUtils.copyProperties简化写法

代码 import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import org.springframework.beans.BeanUtils; import org.sprin ......
写法 copyProperties BeanUtils Spring

Springboot报错,java.lang.IllegalArgumentException: argument type mismatch

1、报错信息 java.lang.IllegalArgumentException: argument type mismatch at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.Native ......