spring
文章平均质量分 94
Danny_idea
热爱技术,热爱生活,一步一个脚印。
更多宝贵知识记录可以关注个人公众号:Idea的技术分享
展开
-
深入挖掘Spring系列 -- Spring内部的事件机制
相信在使用Spring框架的过程中,很多小伙伴都发现内部提供了一种叫做事件的机制,今天的文章主要重点给各位读者系统地介绍关于事件的部分知识点。其实事件并非是Spring官方专门创造出来的,在早期的JDK中就已经有事件设计的影子了。JDK内部提供的事件机理package org.idea.spring.framework.event;import java.util.EventListener;import java.util.EventObject;import java.util.Obse原创 2021-06-04 22:41:54 · 365 阅读 · 3 评论 -
深入挖掘Spring系列 -- 从设计模式角度看Spring
Spring的生态演进变化Spring是一款伟大的框架产品,在发展过程中一直都是靠一家叫做Pivotal的技术公司在背后支撑。Spring真正流行的时间是在2007年11月份,发布了2.5版本的时候。Spring Source 在3.0升级为了后续的发展所以拆分为了Spring Framework4.0 发布于2013年,随后Spring Boot发布于2014年,和传统的Spring Framework有所不同,SpringBoot是一款完全独立的产品路线,很多设计都是在为了简化对于Spring.原创 2021-06-04 22:19:23 · 334 阅读 · 1 评论 -
深入挖掘Spring系列 -- 实现一个简易版本的aop
在正式进行aop模块的介绍之前,我们需要先弄懂一些基本的术语概念。在软件业,AOP 为 Aspect Oriented Programming 的缩写,意为:面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。AOP可以用于解决什么问题?代原创 2021-05-09 20:18:53 · 182 阅读 · 0 评论 -
深入挖掘Spring系列 -- 依赖的来源
前言上一篇文章里面我们着重介绍了关于Spring容器内部的依赖注入。介绍了Spring内部的依赖注入方式:手动注入自动注入针对这两种模式的注入又细分了下其中的途径,具体为:手动模式注入的方法XML模式注入,Java注解方式注入,API方式代码注入。自动注入的方式通过xml配置中的Autowiring 项,自动帮我们绑定注入。手动注入在实际工作中使用的方式有:setter注入,构造器注入,字段注入,方法注入,回调注入 这么几种渠道。同时也介绍了一些特殊数据结构,例如枚举,集合,资源文件的依赖原创 2021-05-05 11:24:42 · 251 阅读 · 0 评论 -
深入挖掘Spring系列 -- 依赖注入专题
在上一篇的文章中,我们着重讲解了Spring内部的依赖查找这玩意,这一次着重介绍关于spring的依赖注入模块。关于依赖注入这块,本篇重点介绍实战方面的内容,实战案例的代码有些多,希望在分享结束后能对各位读者对Spring的依赖注入有个更加清晰的认识。依赖注入的模式我们通常在使用Spring的时候主要是用注解或者xml的方式进行注入,如果做过基于Spring容器的二次开发的朋友应该还清楚直接基于Spring的API方式进行依赖注入。依赖注入的模式主要可以分为两个大类别:手动模式的注入自动模原创 2021-05-05 11:08:10 · 189 阅读 · 0 评论 -
深入挖掘Spring系列 -- 依赖查找背后的细节
依赖查找是什么使用过Spring框架的同学应该都清楚,Spring会将我们所需要使用到的Bean按照一定规则存储到一个应用上下文中(ApplicationContext)。所谓的依赖查找就是根据规则从Spring容器中获取对应的Bean。流程有点类似于下图:客户端程序希望获取一个BeanA,那么就向Spring中发起一个请求,从容器中获取对应的BeanA。其实在Spring发明之前,jdk内部也有类似依赖查找的这种功能。下边我们来看看这几个类的属性。java.beans.beancontex.原创 2021-05-05 10:49:04 · 448 阅读 · 0 评论 -
深入挖掘Spring系列 -- 重新认识ioc
本文的主要讲解是关于spring里面的ioc发展以及对于ioc的理解学习任何知识点都不应该是直接去扣它的细节,而是应该先去从脉络上去熟悉相关知识点。什么是ioc?从spring容器的创建到销毁,每个bean都会有自己独立的生命周期。而ioc容器主要是用于配置,定位,实力化这些个bean的相关信息。个人的认识里面,ioc更多的是一种思想,原先我们创建一个bean的时候,都需要手动的去对这个b...原创 2020-04-19 23:12:37 · 382 阅读 · 1 评论 -
深入挖掘Spring系列 -- Spring里面常用的反射实例化技巧
ResolvableType,可解决的数据类型。它为java语言中的所有类型提供了相同的数据结构,其内部封装了一个java.lang.reflect.Type类型的对象。 在讲解这个数据结构之前,首先要了解一些预备知识,我们不妨思考如下2个问题:在java语法中,哪些元素可以代表一种类型?在java语法中,哪些元素具有类型?在jdk中,Type接口代表一种类型,所有的具体类型都需要...原创 2018-11-03 08:54:20 · 878 阅读 · 0 评论 -
Spring 基于Introduction的引入
在spring里面,引入了非常受大众所熟悉的Introduction,这里将会有一个模拟超市过节里面进行商品打折优惠活动时,该如何进行商品的优惠价格控制案例。 由于只是模拟而已,所以数据库方面暂时只是考虑用模拟的数据进行操控。核心部分在于如何引入introduction。package com.sise.lh.lab05Test.model;/** * 作者:idea * 时间:2017/10原创 2017-10-14 10:04:46 · 1632 阅读 · 0 评论 -
有关Spirng ioc的BeanPostProcessor接口案例
关于spring里面的BeanPostProcessor接口的调用,每一个实现了该接口的类,一旦被注入到了spring容器里面之后,那么spring容器在进行相应的类实例化的时候,会对每一个类进行拦截,判断该类是否有实现该接口。 案例代码: studentpackage com.sise.lh.lab01;/** * 作者:idea * 时间:2017/9/14 * 使用说明:学生bean原创 2017-09-28 15:08:49 · 382 阅读 · 0 评论 -
spring Aop 面向切面编程简单实例
最近画了一点时间研究了一下spring的aop,接下来就先直接放源码: 首先创建一个教师Teacher接口:package com.sise.aop;public interface Teacher { public void teach();}然后是一个教师类:package com.sise.aopimpl;import com.sise.aop.Teacher;public cl原创 2017-06-14 16:46:41 · 3186 阅读 · 0 评论