Spring
文章平均质量分 87
丿涛哥哥
站得更高才能看得更远。努力吧!少年!
展开
-
手写实现自定义简易版Spring (实现IoC 和 AOP)
手写实现自定义简易版Spring (实现IoC 和 AOP)源码地址点这里1、 银行转账案例界面2、 银行转账案例表结构3、 银行转账案例代码调用关系4、 银行转账案例关键代码TransferServletpackage com.tao.servlet;import com.tao.service.impl.TransferServiceImpl;import com.tao.utils.JsonUtils;import com.tao.pojo.Result;import c原创 2021-07-13 16:32:48 · 186 阅读 · 0 评论 -
Spring AOP源码剖析:Spring声明式事务控制
Spring AOP源码剖析:Spring声明式事务控制Spring声明式事务控制声明式事务很方便,尤其纯注解模式,仅仅几个注解就能控制事务了那这些注解都做了什么呢?好神奇!好厉害!@EnableTransactionManagement @Transactional1、 @EnableTransactionManagement@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Impor原创 2021-06-18 14:27:26 · 163 阅读 · 2 评论 -
Spring AOP源码剖析:代理对象创建流程
Spring AOP源码剖析:代理对象创建流程代理对象创建1、 AOP基础用例准备Bean定义@Componentpublic class LagouBean { public void tech(){ System.out.println("java learning......"); }}Aspect定义@Component@Aspectpublic class LagouAspect { @Pointcut("execution(* com.tao.*.*(..))")原创 2021-06-17 15:32:18 · 229 阅读 · 1 评论 -
Spring AOP 应用:Spring 声明式事务的支持
Spring AOP 应用:Spring 声明式事务的支持Spring 声明式事务的支持编程式事务: 在业务代码中添加事务控制代码,这样的事务控制机制就叫做编程式事务声明式事务: 通过xml或者注解配置的方式达到事务控制的目的,叫做声明式事务1、 事务回顾1.1、 事务的概念事务指逻辑上的一组操作,组成这组操作的各个单元,要么全部成功,要么全部不成功。从而确保了数据的准确与安全。例如:A——B转帐,对应于如下两条sql语句:/*转出账户减钱*/update account set mone原创 2021-06-16 15:07:38 · 268 阅读 · 0 评论 -
Spring AOP 应用:三种配置及实现方式
Spring AOP 应用:三种配置及实现方式AOP本质:在不改变原有业务逻辑的情况下增强横切逻辑,横切逻辑代码往往是权限校验代码、日志代 码、事务控制代码、性能监控代码。1、 AOP 相关术语1.1、 业务主线在讲解AOP术语之前,我们先来看一下下面这两张图,在此基础上去进一步回顾AOP,不进行实现上图描述的就是未采用AOP思想设计的程序,当我们红色框中圈定的方法时,会带来⼤量的重复劳动。 程序中充斥着⼤量的重复代码,使我们程序的独立性很差。而下图中是采用了AOP思想设计的程序,它把红框部分的原创 2021-06-16 13:17:47 · 774 阅读 · 0 评论 -
Spring IOC源码剖析:lazy-init 延迟加载机制和循环依赖问题
Spring IOC源码剖析:lazy-init 延迟加载机制和循环依赖问题1、 lazy-init 延迟加载机制原理1、lazy-init 延迟加载机制分析普通 Bean 的初始化是在容器启动初始化阶段执行的,而被lazy-init=true修饰的 bean 则是在从容器里第⼀次进行context.getBean() 时进行触发。Spring 启动的时候会把所有bean信息(包括XML和注解)解 析转化成Spring能够识别的BeanDefinition并存到Hashmap里供下⾯的初始化时用,然后原创 2021-06-16 09:18:16 · 556 阅读 · 0 评论 -
Spring IOC源码剖析:BeanFactory创建流程及Bean创建流程
Spring IOC源码剖析:BeanFactory创建流程及Bean创建流程1、 BeanFactory创建流程1.1、 获取BeanFactory子流程时序图如下:1.2、 BeanDefinition加载解析及注册子流程1、该子流程涉及到如下几个关键步骤Resource定位: 指对BeanDefinition的资源定位过程。通俗讲就是找到定义Javabean信息的XML文件,并将其封装成Resource对象。BeanDefinition载入 : 把用户定义好的Javabean表示为Io原创 2021-06-15 19:28:43 · 690 阅读 · 2 评论 -
Spring IOC源码剖析:Spring IOC容器初始化主体流程
Spring IOC源码剖析:Spring IOC容器初始化主体流程1、 Spring IOC的容器体系IoC容器是Spring的核⼼模块,是抽象了对象管理、依赖关系管理的框架解决方案。Spring 提供了很多的容器,其中 BeanFactory 是顶层容器(根容器),不能被实例化,它定义了所有 IoC 容器必须遵从的一套原则,具体的容器实现可以增加额外的功能,比如我们常用到的ApplicationContext,其下更具体的实现如 ClassPathXmlApplicationContext 包含了解原创 2021-06-15 14:48:18 · 188 阅读 · 0 评论 -
Spring IOC高级特性:lazy-Init 延迟加载、FactoryBean 和 BeanFactory、后置处理器
Spring IOC高级特性:lazy-Init 延迟加载、FactoryBean 和 BeanFactory、后置处理器1、 lazy-Init 延迟加载Bean的延迟加载(延迟创建)ApplicationContext 容器的默认行为是在启动服务器时将所有 singleton bean 提前进行实例化。提前实例化意味着作为初始化过程的一部分,ApplicationContext 实例会创建并配置所有的singleton bean。比如:<bean id="testBean" class=原创 2021-06-11 14:01:51 · 558 阅读 · 2 评论 -
Spring IOC 基础应用:BeanFactory与ApplicationContext区别及三种配置方式
Spring IOC 基础应用:BeanFactory与ApplicationContext区别及三种配置方式1、 Spring IoC1.1、 BeanFactory与ApplicationContext区别BeanFactory是Spring框架中IoC容器的顶层接口,它只是用来定义一些基础功能,定义一些基础规范,而 ApplicationContext是它的一个子接口,所以ApplicationContext是具备BeanFactory提供的全部功能的。通常,我们称BeanFactory为S原创 2021-06-11 10:50:06 · 1340 阅读 · 0 评论 -
Spring 概述核心结构及核心思想
Spring 概述及核心结构1、 Spring 简介Spring 是分层的 full-stack(全栈) 轻量级开源框架,以 IoC 和 AOP 为内核,提供了展现层 Spring MVC 和业务层事务管理等众多的企业级应⽤技术,还能整合开源世界众多著名的第三⽅框架和类库,已经成为使⽤最多的 Java EE 企业应⽤开源框架。Spring 官⽅⽹址:http://spring.io/我们经常说的 Spring 其实指的是Spring Framework(spring 框架)。2、 Spring 发原创 2021-06-08 13:36:30 · 556 阅读 · 2 评论 -
基于注解实现简单Spring框架:完成IOC容器和声明式事务控制
基于注解实现简单Spring框架:完成IOC容器和声明式事务控制内容说明自定义@Service、@Autowired、@Transactional注解类,完成基于注解的IOC容器(Bean对象创建及依赖注入维护)和声明式事务控制,写到转账工程中,实现异常时事务回滚。实现原理1.扫(项目路径下)所有的包,循环遍历所有类,使用反射获取类是否有注解@Service,如果有,则使用反射newInstance该类的实例,并将类名和类的实例存放在全局变量Map集合中。2.如果类的属性上有@Autowired,原创 2021-05-20 20:10:03 · 128 阅读 · 0 评论