你好spring solon

Spring注解工具类

前言 在看Spring源码的时候,经常会有处理注解的时候,比如从方法上获取注解,类上获取注解,注解属性别名。JDK中自带的获取注解API有点简单,不会从父类方法或者接口上的方法去查找,不能为属性定义别名等,因此Spring封装了一个便利的工具类,更加方便的去获取注解信息。 JDK自带方法 Annot ......
注解 工具 Spring

Spring Cloud Alibaba 学习实践(二)

创建项目基本结构 使用idea 创建父工程 编辑 settings.gradle.kts rootProject.name = "sca-demo" rootProject.children.forEach { project -> project.buildFileName = "${projec ......
Alibaba Spring Cloud

Spring Boot + Disruptor 实现消息队列,告诉你什么叫快、什么叫高效!

01、背景 工作中遇到项目使用Disruptor做消息队列,对你没看错,不是Kafka,也不是rabbitmq;Disruptor有个最大的优点就是快,还有一点它是开源的哦,下面做个简单的记录. 02、Disruptor介绍 Disruptor 是英国外汇交易公司LMAX开发的一个高性能队列,研发的 ......
队列 Disruptor 消息 Spring Boot

Spring Framework RCE CVE-2022-22965 漏洞分析

本文会从几个角度分析漏洞CVE-2022-22965,首先会从payload的构造。每次我都喜欢先分析漏洞的payload,不得不承认实力没达到可以直接分析漏洞地步。 ......
漏洞分析 漏洞 Framework Spring 22965

Spring Boot 3.0 正式发布,王炸!!

Spring Boot 3.0 正式发布 大家好,我是栈长。 Spring Boot 3.0 正式发布了: 同时发布更新的还有 2.7.x 和 2.6.x 两条版本线,Spring Boot 是我见过的发版最守时的技术框架之一。 Spring Boot 3.0 这是一个重大的主版本更新,距离上一代的 ......
Spring Boot 3.0

spring中 beandefinition类中的6大属性

什么是 BeanDefinition? BeanDefinition 表示bean的定义,spring根据 beandefinition 用来创建bean对象,他有很多属性来描述bean。 1.beanClass :表示一个bean 的类型,比如UserService.class ,在创建bean ......
beandefinition 属性 spring

提升 Spring Boot 吞吐量的 7 个神技,让你的项目飞起来!

一、异步执行 实现方式二种: 使用异步注解 @aysnc、启动类:添加 @EnableAsync 注解 JDK 8 本身有一个非常好用的 Future 类——CompletableFuture @AllArgsConstructor public class AskThread implements ......
吞吐量 项目 Spring Boot

Spring 多线程的事务处理

问题起因 Spring 的 JDBC 相关的依赖库已经提供了对 JDBC 类事务处理的统一解决方案,在正常情况下,我们只需要在需要添加事务的业务处理方法上加上 @Transactional 注解即可开启声明式的事务处理。这种方式在单线程的处理模式下都是可行的,这是因为 Spring 在对 @Tran ......
线程 事务 Spring

Spring框架中 依赖注入和控制反转,最简单、最通俗的解释! 再加上一个AOP

首先依赖注入 == 控制反转,只不过控制反转这个词汇,让人产生了错误的理解,才使用新的词汇:依赖注入来替换到这个词汇。 “依赖注入”是指一个对象应用另外一个对象来提供一个特殊的能力。例如,把一个数据库连接以参数的形式传到一个对象的结构方法里,而不是在那个对象内部自行创建一个连接。这个和new一个对象 ......
框架 Spring AOP

Spring Cloud Alibaba 学习实践(一)

Spring Cloud Alibaba 学习实践(一) 一、环境准备(使用Docker搭建基本环境) 使用 VMware 虚拟机搭建的 CentOS7 作为基础的环境 Linux系统的固定IP设定为 192.168.10.20 Linux系统的登录用户为 root 1.1. Docker 安装 D ......
Alibaba Spring Cloud

spring boot 在Linux下服务启动报错Unable to find Java

前言: 最近在开发项目的过程中遇到了一些坑(也可能不是坑,是自己没弄过导致折腾了很久),我们项目中遇到有用到一些第三方的库,有些第三方库可能不支持openjdk,只支出jdk,所以就要更换一下jdk,然后服务器又是之前的前同事配置的,这时候我把服务器的jdk版本从原来的openjdk1.7换成了官方 ......
spring Unable Linux boot Java

spring对象的获取及属性赋值方式

1、通过bean的id获取IOC容器中的对象 SpringDemoTest.java import com.mashibing.bean.Person;import org.springframework.context.ApplicationContext;import org.springfra ......
属性 对象 方式 spring

RestTemplate【Spring 提供的用于访问Rest 服务的模板类】

RestTemplate 基本介绍 RestTemplate 是Spring 提供的用于访问Rest 服务的模板类 RestTemplate 提供了多种便捷访问远程Http 服务的方法 老韩说明:小伙伴可以这样理解, 通过RestTemplate, 我们可以发出http 请求(支持Restful 风 ......
RestTemplate 模板 Spring Rest

Spring,SpringMVC,SpringBoot,SpringCloud有什么区别?

简单介绍 Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。Spring使你能够编写更干净、更可管理、并且更易于测试的代码。 Spring MVC是Spring的一个模块,一个web框架。通过Dispatcher Servlet, ModelAndView 和 View R ......
SpringCloud SpringBoot SpringMVC Spring

spring springmvc设置全局异常捕获返回错误信息

代码如下: @ControllerAdvice public class GlobalExceptionHandler { private static final Logger logger = LoggerFactory.getLogger(GlobalExceptionHandler.clas ......
全局 springmvc 错误 spring 信息

IDEA创建maven的spring boot项目,【极简版】监听器+拦截器

项目结构在(IDEA创建maven的spring boot项目,【极简版】切面编程+swagger调用 )基础上实现 1、拦截器 src main | java | | com.demo | | | config | | | | MyInterceptor | | | | AppConfig | | ......
监听器 项目 spring maven IDEA

2023年了,复习了一下spring boot配置使用mongodb

前言 MongoDB是一个基于分布式文件存储的开源数据库系统,使用C++语言编写。它是一个介于关系数据库和非关系数据库之间的产品,具有类似关系数据库的功能,但又有一些非关系数据库的特点。MongoDB的数据模型比较松散,采用类似json的bson格式,可以灵活地存储各种类型的数据 MongoDB的优 ......
mongodb spring 2023 boot

Spring Boot + Vue3前后端分离实战wiki知识库系统<十三>--单点登录开发二

接着https://www.cnblogs.com/webor2006/p/17608839.html继续往下。 登录功能开发: 接下来则来开发用户的登录功能,先准备后端的接口。 后端增加登录接口: 1、UserLoginReq: 先来准备用户登录的请求实体: package com.cexo.wi ......
知识库 实战 知识 Spring 系统

spring cloud feign 没有注册中心引发的思考 没有注册中心还能访问接口???

@EnableFeignClients 会扫描@FeignClient注解的接口,然后接口注册到ioc容器就可以用了 底层是restTemplate ,没有注册中心可以通过硬编码访问,硬编码就是写死微服务ip 例子解释: @FeignClient("mljqqh-item-service")publ ......
接口 spring cloud feign

你好,这是我的第一篇文章

上午,下午,基本上都是社团摆点的,,我也就负责咨询的相关工作,,,, 然乎晚期直接太无聊和2个管理妹妹,,以及ice大哥玩起来的斗地主 管理让我买扑克牌,,,他怎么知道我遇到了经济危机,,穷了呀,,碍于面子,,,我自掏腰包去买了扑克牌了 管理明明说是2元一副,,我去超市,,,怎么最低都是5元一副,, ......
篇文章 你好 这是

spring动态代理,JDK动态代理,CGLB动态代理

.Spring中的代理 将 Advice 应用于目标对象后创建的对象称为代理。在客户端对象的情况下,目 标对象和代理对象是相同的。 2.JDK动态代理和CGLIB动态代理的区别 Spring AOP 中的动态代理主要有两种方式,JDK 动态代理和 CGLIB 动态代理。 1)JDK 动态代理只提供接 ......
动态 spring CGLB JDK

Spring Security 基于表单的认证和角色权限控制

Spring Security 是基于 Spring 框架提供的一套 Web 应用安全的完整解决方案,核心功能主要是认证和授权。认证主要是判断用户的合法性,主要体现在登录操作,最常用的认证方式是【基于表单的认证】和【基于OAuth2的认证】。授权主要体现在权限控制,也就是控制用户是否能够访问网站的相 ......
表单 Security 权限 角色 Spring

Spring POST

Spring POST 是一种 HTTP 请求方法,用于向服务器发送数据。与 GET 方法不同,POST 方法将数据包含在请求的主体中,而不是 URL 中。 在 Spring 中,可以使用 @PostMapping 注解来创建一个处理 POST 请求的方法。例如: @RestController p ......
Spring POST

Spring boot data mongodb入门

在Spring Boot中使用Mongodb,首先导入依赖库: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </d ......
mongodb Spring boot data

Spring Boot 实现各种参数校验,非常实用

本文会详细介绍Spring Validation各种场景下的最佳实践及其实现原理,死磕到底! 简单使用 Java API规范 (JSR303) 定义了Bean校验的标准validation-api,但没有提供实现。hibernate validation是对这个规范的实现,并增加了校验注解如@Ema ......
参数 Spring Boot

修改经过Spring Gateway的表单中的Json数据

背景 使用Spring Cloud Gateway作为网关时有时候一个请求是既包含excel又包含json的表单数据,出于各种层面考虑网关需要获取并更新其中的json数据 依赖 Spring Boot版本:2.7.15 Hutool: 5.8.21 Java: 11 实现逻辑 实现分为2个部分 使用 ......
表单 Gateway 数据 Spring Json

修改经过Spring Gateway的Json数据

背景 使用Spring Cloud Gateway作为网关时经常会需要对报文内的json数据进行修改,但是目前看到的实现方法看起来都很复杂,这里提供一种使用Spring官方提供的ModifyRequestBodyGatewayFilterFactory类来修改json报文的方法 依赖 Spring ......
Gateway 数据 Spring Json

Spring - 1( 相关了解 + IOC 容器 + DI 依赖注入 + )

Spring - 1 目录Spring - 1了解Spring Framework 系统架构系统架构图一、核心容器相关概念存在问题解决引出 IOC仍存在问题并引出 DI完成目标:充分解耦最终结果IOC 入门案例分析实现DI 入门案例分析实现IOC 相关内容bean 配置id、class 基础配置na ......
容器 Spring IOC DI

ssm整合中配置的依赖,设置的jdbc.properties,mybatiss-config.xml,spring.xml,springmvc.xml

2023-09-16 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.a ......