一. pom.xml项目jar包  <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-09-26 16:01:31
                            
                                63阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            目录1. 什么是类加载器2. 类加载器加载的过程3. Class文件读取来源4. 类加载器的分类5. 那些操作会初始化类加载器6. 类加载器的双亲委派机制6.1 双亲委派机制机制的好处7. ClassLoader源码解读7.1 Launcher类源码解读7.2 双亲委派机制源码分析7.3 如何自定义一个类加载器7.4 自定义类加载器7.5 根据类加载器手写热部署插件7.6 什么是SPI机制7.7            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-16 09:58:59
                            
                                57阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Spring:@Import简介:将资源导入到容器中,实际上是以bean 定义(BeanDeinition)的方式导入到BeanDeinitionMap中使用介绍@Import有三种用法直接填class数组方式 @Import({ 类名.class , 类名.class... })
public class TestDemo {
}ImportSelector接口(Springboot 自动加载            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-16 11:34:21
                            
                                77阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            # Spring Boot启动加载指定类
Spring Boot是一个基于Spring框架的微服务框架,它简化了基于Spring的应用开发和部署。在Spring Boot中,我们可以通过一些特定的配置来实现在应用启动时加载指定的类。本文将详细介绍如何实现这一功能,并提供代码示例。
## 流程图
以下是实现Spring Boot启动加载指定类的流程图:
```mermaid
flowchar            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-07-19 12:27:27
                            
                                179阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            @Controller: 标识一个类是Spring MVC controller处理器, 用来创建处理http请求的对象@Controller
 public class TestController {
     @RequestMapping("/test")
     public String test () {
         String str = "Spring 注解大全";            
                
         
            
            
            
            写在前面 本文分析的是直接运行main函数的启动过程,关于通过jar包启动方式分析,jar启动最终也会执行到这里,只不过前面多了写通过自定义类加载器加载lib和class的逻辑。这里贴下多出来的这部分内容: 入口很简单,就是我们的main程序,可能如下:@SpringBootApplication
public class HelloWorldMainApplication {
    publ            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-06 20:19:46
                            
                                1007阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            # 使用 Spring Boot 排除某些注解类的完整指导
Spring Boot 是一个用于简化 Java 企业应用程序开发的框架,它通过约定优于配置的方式大大缩短了开发周期。由于其灵活性和可扩展性,Spring Boot 也为开发人员提供了许多高效的配置方法。然而,在某些情况下,我们并不希望执行某些自动配置或加载特定的注解类,这时候就需要使用排除注解的功能。本文将详细介绍 Spring Bo            
                
         
            
            
            
            我们都知道component-scan在springmvc或者springboot中可以扫描包路径,但是我们如何使用里面的属性排除不需要扫描的类?方式一:使用spring的xml配置方式实现,这个是基本功,知道这种方式,那么注解方式就容易理解了<!-- 定义项目扫描包的路径,并且排除ApplicationContextConfig和WebSpringMVCServletConfig-->            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-11 05:57:44
                            
                                1355阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            本文记录了阅读《深入理解Java虚拟机:JVM高级特性与最佳实践 —— 周志明》的《虚拟机类加载机制》章节的笔记。       一、概述虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。与编译时需要“连接”的语言不同,Java语言中,类型的加载、连接和初始化都是在运行期完成的,虽然会在加载时增加            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-16 07:36:27
                            
                                61阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一句话描述spring加载过程ClassPathXmlApplicationContext实现beanFactory接口,是一个具体的实例化工厂。服务器启动时,解析xml配置文件,将对应文件中每个bean的id作为key,属性封装到beandefinition(是个对象)作为value,封装到一个ConCurrentHashMap容器A中。  同时,还有一个ConCurrentHashM            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-25 17:42:42
                            
                                108阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            参考网站:当Web应用启动时,contextInitialized方法会执行载入根上下文(IOC容器):(1)spring的web项目启动的时候会,启动我们常用的监听类。      <context-param> <param-name>contextConfigLocation</param-name> <param-val            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-23 21:41:34
                            
                                48阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. @SpringBootApplication使用@AliasFor注解定义了4个参数,分别是"exclude","excludeName","basePackages","basePackagesClasses"exclude指定不扫描的类,比如 @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-08 13:30:23
                            
                                67阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Spring常用注解启动类在启动类(XxxApplication)上使用的注解。@SpringBootApplicationSpring Boot的项目一般都会有XxxApplication的入口类,入口类中会有main方法,这是一个标准的Java应用程序的入口方法。 这个入口类都会有@SpringBootApplication注解,它让Spring Boot自动给程序进行必要的配置,该注解是Sp            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-26 14:34:22
                            
                                58阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            常用注解@Configuration用法 @Configuration这个注解可以加在类上,让这个类的功能等同于一个bean xml配置文件,如下:@Configuration
public class ConfigBean {
}上面代码类似于下面的xml:<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://w            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-02 15:22:51
                            
                                30阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、Bean 的注入@Configuration
@Import({User.class, ImportSelectorDemo.class, ImportBeanDefinitionRegistrarImpl.class})   // id 默认为 User 的全类名
public class SpringConfig {
    /**
     * 容器添加组件的方式
     * 1.c            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-24 10:10:46
                            
                                116阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            五 基于注解的AOP开发  5.1 快速入门    步骤分析    1. 创建java项目,导入AOP相关坐标 2. 创建目标接口和目标实现类(定义切入点) 3. 创建通知类(定义通知) 4. 将目标类和通知类对象创建权交给spring 5. 在通知类中使用注解配置织入关系,升级为切面类 6. 在配置文件中开启组件扫描和 AOP 的自动代理 7. 编写测试代码    5.1.1  
   创建            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-09-15 21:25:55
                            
                                47阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1、Spring MVC的基本介绍spring mvc 是基于 spring 的一个框架,实际上就是 spring 的一个模块,是专门用来做 web 开发的。spring mvc 的底层实际上还是 servlet ,只是在 servlet 的基础上面加入了一些功能,让 web 开发更加方便,可以理解为是 servlet 的升级。Spring MVC 框架是围绕一个 DispatcherServle            
                
         
            
            
            
            一、Spring与WEB容器整合    web项目中,Spring启动是在web.xml配置监听器,如下所示:    1. <!-- 配置Spring上下文监听器 -->
2. <listener>
3. <listener-class>org.springframework.web.context.ContextLoaderLi            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-26 10:49:32
                            
                                62阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            扫描器源码扫描的源码从这里开始,我们之前讲postProcessor的时候涉及过这部分代码,但是没有展开讲 invokeBeanFactoryPostProcessors()–> PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors() 这里就是我们之前涉及到的地方 ConfigurationClassPostPr            
                
         
            
            
            
            # Spring Boot 加载指定类
Spring Boot 是一个用于快速构建基于 Spring 框架的应用程序的框架。它通过提供默认配置和自动配置的方式,简化了 Spring 应用的开发过程。在 Spring Boot 中,根据项目的需求和配置,可以加载指定的类,以实现特定功能。本文将介绍如何在 Spring Boot 中加载指定类,并提供相应的代码示例。
## 什么是 Spring B            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-07-27 05:54:24
                            
                                725阅读