目录前言AOP是什么AOP框架要做什么AOP技术元素分析Advice设计pointcut设计表达式设计类、接口设计aspect设计(advisor)weaving设计织入要完成什么织入时机如何确定bean需要增强如何实现织入加入扩展点BeanPostProcessor定义切面注册接口AdvisorRegistry定义BeanFactory注册接口BeanFactoryAware自动代理核心类Ad
转载 2024-05-28 14:26:27
46阅读
SpringMVC介绍SpringMVC基于Servlet去实现的。Servlet是单例的,所以也是存在线程安全问题的。线程不安全。SpringMVC基于Servlet实现,所以也是线程不安全的。判断是单例还是多例就看其构造函数执行几次,创建多个对象,构造函数调用了一次就是单例什么是ServletJava Servlet是运行在web服务器或应用服务器上的程序,他是作为来自web浏览器或者其他Ht
转载 2024-07-08 22:04:24
31阅读
Spring IoC容器的实现原理:工厂模式 + 解析XML + 反射机制。我们给自己的框架起名为:myspring(我的春天)1. 第一步:创建模块myspring 62采用Maven方式新建Module:myspring打包方式采用jar,并且引入dom4j和jaxen的依赖,因为要使用它解析XML文件,还有junit依赖。
原创 精选 2023-06-07 14:19:19
311阅读
1点赞
2评论
文章目录前言目前已实现1 简单校验2 扫描配置3 根据扫描到的配置组装 BeanDefinition4 根据 BeanDefinition 创建非懒加载、并且是单例的bean,存储到单例池5 增加 BeanNameAware 接口6 增加 InitializingBean 接口7 增加 BeanPostProcessor 接口延伸阅读手写 Spring的代码ApplicationContextA
手写spring事务框架1.写好UserDaopackage com.itmayiedu.dao;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.jdbc.core.JdbcTemplate;import org.springframework.stereot...
原创 2021-06-21 18:18:33
219阅读
org.dom4j.DocumentException: Cannot invoke "String.length()" because "spec" is null原因:配置文件路径没有写正确。如果是直接放到类路径下,直接写xml文件名就可以。如果在resource下建包,配置文件放到包里,文件名就要加上路径。这样就不会报上面的错。
原创 2023-03-05 14:50:48
974阅读
目录11、手写Spring框架第一步:创建模块myspring第二步:准备好我们要管理的Bean第三步:准备myspring.xml配置文件和log4j2.xml配置文件第四步:编写ApplicationContext接口第五步:编写ClassPathXmlApplicationContext第六步:确定采用Map集合存储Bean第七步:解析配置文件实例化所有Bean第八步:测试能否获取到Bean
  spring对于java程序员来说,无疑就是吃饭到筷子。在每次编程工作到时候,我们几乎都离不开它,相信无论过去,还是现在或是未来到一段时间,它仍会扮演着重要到角色。自己对spring有一定的自我见解,所以参考网上的视频和文章,整理出一套简单的SpirngMVC。   项目地址先贴出来,接下来大概讲下流程。  手写简单的SpringMvc框架。   主要分为几个步骤:  1.
1. 反射机制的回顾我们知道框架一般是由 设计模式+注解+反射 来实现,并进行运用开发的。所以我们要手写 Spring 框架,就需要先来回顾,回顾Java当中的反射机制,这里是简单的回顾反射 。我们知道,想要调用一个方法,就需要明确知道该方法的四个要素:调用的是哪个对象的哪个方法该方法传什么参数有无返回值,有返回值的话,又该返回什么值为了简单的回顾我们的反射机制,下面
手写spring准备工作:新建一个maven工程:架构新建类:package com.spring; public class keweiqinApplicationContext { private Class configClass; public keweiqinApplicationContext(Class configClass) { this.co
转载 2024-03-29 11:55:16
52阅读
人见人爱的 Spring 已然不仅仅只是一个框架了。如今,Spring 已然成为了一个生态。但深入了解 Spring 的却寥寥无几。这里,我带大家一起来看看,我是如何手写 Spring 的。我将结合对 Spring 十多年的研究经验,用不到 400 行代码来描述 Spring IOC、DI、MVC 的精华设计思想,并保证基本功能完整。首先,我们先来介绍一下 Spring 的三个阶段,配置阶段、初始
转载 2024-03-21 00:00:49
32阅读
背景为了练习手写一个简易的SpringMVC框架,实现了ioc以及Request和对应注解方法映射思路1.我们知道SpringMVC是基于Servlet实现的,所以首先要在web.xml中配置一个类,拦截所有的请求 2.这个类分别有init方法和doGet/doPost方法。在init方法中实现ioc。在doPost方法中执行url和ioc中定义类的映射。    &n
转载 2024-07-08 20:48:06
21阅读
手写SpringIOCXML版本 手写SpringIOC注解版本 基本思路: 扫包+反射 // 1.使用反射机制获取该包下所有的类已经存在bean的注解类 // 2.使用Java反射机制初始化对象 // 3.使用beanID查找查找对应bean对象 @resource // 4.使用反射读取类的属性
原创 2021-07-20 11:24:16
135阅读
原理-手写IoCIoC(Inversion of Control,控制反转)是一种设计原则,它的核心思想是将组件之间的依赖关系从组件内
原创 精选 2024-03-22 15:21:39
149阅读
估计很多朋友使用 spring 很长时间,对于 spring 使用非常频繁,实际上对于源码一直没有静下心来学习过。 你是不是有这样的感觉呢? 但是 spring 源码存在一个问题,那就是过于抽象,导致学习起来成本上升。所以本文由浅入深,只实现 spring 的核心功能,便于自己和他人学习 spring 的核心原理。 spring 的核心 Spring 的核心就是 spring-beans,后面
原创 2021-09-14 15:24:08
432阅读
手写Spring框架IOC容器核心流程
原创 精选 2023-05-29 09:53:52
251阅读
1点赞
Spring测试手写Spring框架对IOC的实现-----Spring框架
原创 6月前
51阅读
1点赞
Spring手写Spring框架解析XML文件并实例化Bean对象-----Spring框架
原创 6月前
55阅读
1点赞
一、前言Springboot的自动配置原理,面试中经常问到,一直看也记不住,不如手写一个starter,加深一下记忆。 看了之后发现大部分的starter都是这个原理,实践才会记忆深刻。 核心思想:约定大于配置。二、初探starter启动原理我们直接看看官网的starter是怎么设计的,仿照这写一个就行了!我们Ctrl点击<artifactId>spring-boot-starter-
转载 2024-03-24 19:17:50
145阅读
个人主页:https://blog.csdn.net/qq_27631217知音专栏程序员的出路写程序时该追求什么,什么是次要的?如何准备Java初级和高级的技术面试上一篇:手写spring+springmvc+mybatis框架篇【springIOC容器】整合Mybatis是本项目中的一个难点。实现功能:1动态绑定用户输入参数2Mybatis的resultType动态绑定返回实体类。3在spri
原创 2021-05-07 20:28:17
168阅读
  • 1
  • 2
  • 3
  • 4
  • 5