Spring
动态代理与Spring AOP
JDK 动态代理 被代理类 JDK动态代理基于接口创建代理,所以业务类必须至少实现一个接口。 public interface SmsService { String send(String message); void print(); } public class SmsServiceImpl ......
spring的高并发起因
spring mvc中所有的bean如service,controller等这些组件全部默认都是单例模式,也因为单例的原因,所以才有所谓的线程安全问题,因为所有的客户端线程他们都访问的是同一个组件的同一个实例,所以就需要进行多线程开发 —— 加锁控制和线程调度。 在controller中不提倡设置变 ......
Spring尚硅谷
Spring Spring概念 1、spring框架是一个轻量级的开源的java EE开发框架。 2、spring框架解决企业应用开发的复杂性。 3、spring有两个核心:IOC与AOP (1) IOC:控制反转,把创建对象过程交给Spring管理。 (2) AOP:面向切面编程,不修改源代码情况 ......
servlet容器,web容器,spring容器,springmvc容器的区别(转载)
这个理解我可以通过一个http的页面请求来说明。 说明 Tomcat&Jetty在启动时给每个Web应用创建一个全局的上下文环境,这个上下文就是ServletContext,其为后面的Spring容器提供宿主环境。 Tomcat&Jetty在启动过程中触发容器初始化事件,Spring的Context ......
Spring02_Spring0配置
一、Spring 0配置开发 从 Spring3.0 版本开始,Spring 框架尽量不再使用 Spring 配置文件来配置管理任何 Bean,而是采用自动搜索 某些路径下的 Java 类,并将这些 Java 类注册成 Bean 示例。并使用注解 Annotation 的方式来标注要管理的 Be ......
Spring Quickstart Guide同步构建测试
进行了前置的配置后,打开IDEA,进行环境构建,第一次运行结果 把JDK更换为17版本后同步成功 输出结果 浏览器运行结果 ......
关于idea里spring的环境搭建
package com.example.demo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; impo ......
spring Boot
用start.spring.io以创建“网络”项目。在“依赖项”对话框中,搜索并添加“Web”依赖项,如屏幕截图所示。点击“生成”按钮,下载zip,然后将其解压缩到计算机上的文件夹中。 Spring Boot 是启动 Spring 项目的最快、最流行的方式。 代码package com.exampl ......
spring源码-之解决循环依赖
Spring如何解决循环依赖 为了解决循环依赖,Spring 使用了三级缓存。一级缓存用于存储 bean 定义。二级缓存用于存放已经创建但还没有完全初始化的前期bean实例。三级缓存用于存放完全初始化的bean实例。 当检测到循环依赖时,Spring 会创建一个部分初始化的 bean 实例并将其存储 ......
Spring Boot 整合 xxl-job
官方文档:https://www.xuxueli.com/xxl-job/ XXL-JOB 是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。 说明:官方文档很重要,而且非常详细,要慢慢适应看官方文档进行学习! PS:下面 ......
spring事务里面开启线程插入,报错了是否会回滚?
1.前言 一道非常有意思的面试题目。大概是这样子的,如果在一个事务中,开启线程进行插入更新等操作,如果报错了,事务是否会进行回滚 2.代码 示例1 @RequestMapping("/test/publish/submit") public String testPublish1() { log.i ......
解决Spring boot 单元测试,无法读取配置文件问题。
1.启动类上加上@EnableConfigurationProperties 2.springboot版本springboot 2.X版本在单元测试中读取不到yml配置文件的值这是个大坑,在项目中写单元测试的时候需要读取一个yml配置文件的值,发现无论如何都读取不到,后来发现了这个坑。改成prope ......
Spring高级
1、容器接口 1.1、BeanFactory功能 1.1.1、什么是 BeanFactory ? BeanFactory: 是 ApplicationContext 的父接口 是 Spring 的核心容器,主要的 ApplicationContext 实现都【组合】了它的功能 从上面类继承图可以看到 ......
Spring源码系列:初探底层,手写Spring
在学习 Spring 框架源码时,记住一句话:源码并不难,只需要给你各种业务场景或者项目经理,你也能实现自己的 Spring。虽然你的实现可能无法与开源团队相媲美,但是你肯定可以实现一个 0.0.1 版本。因此,初次阅读源码时,不要陷入太深的细节中,先了解大体逻辑,再仔细研读。 ......
SPRING ThreadPoolTaskExecutor示例
0、前言 当我们需要实现并发、异步等操作时,通常都会使用到ThreadPoolTaskExecutor。它是springcore包中的,而ThreadPoolExecutor是JDK中的JUC。ThreadPoolTaskExecutor是对ThreadPoolExecutor进行了封装处理。 1、 ......
Spring中Bean的实例化详细流程
还是举个例子,我有一个朋友小汪他远赴南方某城市打工。然后安定下来后他的朋友很想来家里玩,但是呢我这个朋友家里搞的很乱,所以他不好意思请朋友来家里玩。这时我的另一个朋友说那请一个保姆把家里好好整理一下就可以了,然后给他介绍了一个保姆大S(PS:本文无意指向任何人,因为Spring的前缀是S)然后就把家 ......
公司入职一个阿里大佬,把 Spring Boot 系统启动时间从 7 分钟降到了 40 秒!
作者:Debugger 链接:https://juejin.cn/post/7181342523728592955 0 背景 公司 SpringBoot 项目在日常开发过程中发现服务启动过程异常缓慢,常常需要6-7分钟才能暴露端口,严重降低开发效率。通过 SpringBoot 的 SpringApp ......
Spring01_IOC、DI和Beans配置
一、Spring概述 (一)Spring简介 Spring 为企业应用的开发提供了一个轻量级的解决方案。该解决方案包括:基于依赖注入的核心机制、基于 AOP (Aspect Oriented Programming,面向切面的程序设计)的声明式事务管理、与各种持久层技术的整合,以及优 秀的Web ......
Netty与Spring Boot的整合实现(转)
来源:https://www.jb51.net/article/168212.htm 最近有朋友向我询问一些Netty与SpringBoot整合的相关问题,这里,我就总结了一下基本整合流程,也就是说,这篇文章 ,默认大家是对netty与Spring,SpringMVC的整合是没有什么问题的。现在,就 ......
spring security FormLoginConfigure的作用和源码解读
这一节来研究下spring security中FormLoginConfigurer这个配置器的作用 一、综述 FormLoginConfigurer 本质上还是一个SecurityConfigurer,用来对HttpSecurity这个构建器进行配置,它用来对表单登录的功能进行配置,通过HttpS ......
spring 中mongoDB事务配置
配置事务 事务管理器配置代码: @Configuration public class TransactionConfig { @Bean MongoTransactionManager transactionManager(MongoDatabaseFactory factory) { retur ......
Spring Boot 整合 Kafka
Kafka 环境搭建 kafka 安装、配置、启动、测试说明: 1. 安装:直接官网下载安装包,解压到指定位置即可(kafka 依赖的 Zookeeper 在文件中已包含) 下载地址:https://kafka.apache.org/downloads 示例版本:kafka_2.13-2.8.0.t ......
Spring-Security
###SecurityConfig @Configuration @EnableWebSecurity public class SecurityConfig implements WebMvcConfigurer { @Bean public SecurityFilterChain filterC ......
【Spring MVC】复杂数据绑定
实体类 UserController.java package com.xiaobiti.controller; import com.xiaobiti.pojo.User; import org.springframework.stereotype.Controller; import org.s ......
【Spring MVC】简单数据绑定
实体类: spring-mvc.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.spring ......
【Spring boot】 @Value注解
一、不通过配置文件的注入属性 1.1 注入普通字符串 直接附在属性名上,在 Bean 初始化时,会赋初始值 @Value("normal") private String normal; 1.2 注入java系统变量 @Value("#{systemProperties['os.name']}") ......