10 2021 档案

摘要:本文目标:带领大家阅读aop的源码,深入理解aop的原理,内容有点长,消化需要大概一周时间,做好准备。 阅读本文之前,需要先掌握下面3篇文章内容,不然会比较吃力。 Spring系列第15篇:代理详解(java动态代理&CGLIB代理) Spring系列第30篇:jdk动态代理和cglib代理 Spr 阅读全文
posted @ 2021-10-31 23:30 程序员小明1024 阅读(133) 评论(0) 推荐(0) 编辑
摘要:本文主要内容 什么是Aop? Spring AOP中重要的一些概念详解 Spring AOP 硬编码实现 什么是AOP? 先看一下传统程序的流程,比如银行系统会有一个取款流程 我们可以把方框里的流程合为一个,另外系统还会有一个查询余额流程,我们先把这两个流程放到一起: 有没有发现,这个两者有一个相同 阅读全文
posted @ 2021-10-31 23:18 程序员小明1024 阅读(285) 评论(0) 推荐(0) 编辑
摘要:Spring中有个非常重要的知识点,AOP,即面相切面编程,spring中提供的一些非常牛逼的功能都是通过aop实现的,比如下面这些大家比较熟悉的功能 spring事务管理:@Transactional spring异步处理:@EnableAsync spring缓存技术的使用:@EnableCac 阅读全文
posted @ 2021-10-31 21:56 程序员小明1024 阅读(125) 评论(0) 推荐(0) 编辑
摘要:Spring中有2个非常重要的接口:BeanFactoryPostProcessor和BeanDefinitionRegistryPostProcessor,这2个接口面试中也会经常问到,本文我们一起来拿下他们俩。 先来看几个问题 BeanFactoryPostProcessor是做什么的? Bea 阅读全文
posted @ 2021-10-31 21:25 程序员小明1024 阅读(114) 评论(0) 推荐(0) 编辑
摘要:今天要说的是spring中循环依赖的问题,最近有大量粉丝问这个问题,也是高薪面试中经常会被问到的一个问题。 关于循环依赖的问题,来感受一下连环炮,试试自己否可以过关斩将,轻松应对。 什么是循环依赖? 如何检测是否存在循环依赖? 如何解决循环依赖? 多例的情况下,循环依赖问题为什么无法解决? 单例的情 阅读全文
posted @ 2021-10-31 21:15 程序员小明1024 阅读(262) 评论(0) 推荐(0) 编辑
摘要:面试官:看你是85年的 我:嗯,35了 面试官:那应该经验很丰富了,那我们来聊聊spring吧 我:好,这块我用了10几年了,你随便问吧 面试官:Spring中的事件用过么? 我:用过 面试官:可以介绍一下为什么需要使用事件么? 我:使用事件的模式可以对系统进行解耦,事件源发布一个事件,事件监听器可 阅读全文
posted @ 2021-10-31 20:26 程序员小明1024 阅读(147) 评论(0) 推荐(0) 编辑
摘要:前两天去一个电商公司面试: 面试官:Spring中国际化这块的东西用过么?可以介绍一下么? 我:spring中对国际化支持挺好的,比较简单,只需要按照语言配置几个properties文件,然后主要注册一个国际化的相关的bean,同时需指定一下配置文件的位置,基本上就可以了 面试官:那如果配置文件内容 阅读全文
posted @ 2021-10-31 02:59 程序员小明1024 阅读(258) 评论(0) 推荐(0) 编辑
摘要:面试官:Spring中的@Value用过么,介绍一下 我:@Value可以标注在字段上面,可以将外部配置文件中的数据,比如可以将数据库的一些配置信息放在配置文件中,然后通过@Value的方式将其注入到bean的一些字段中 面试官:那就是说@Value的数据来源于配置文件了? 我:嗯,我们项目最常用更 阅读全文
posted @ 2021-10-31 01:29 程序员小明1024 阅读(719) 评论(0) 推荐(0) 编辑
摘要:又一次被面试官带到坑里面了。 面试官:springmvc用过么? 我:用过啊,经常用呢 面试官:springmvc中为什么需要用父子容器? 我:嗯。。。没听明白你说的什么。 面试官:就是controller层交给一个spring容器加载,其他的service和dao层交给另外一个spring容器加载 阅读全文
posted @ 2021-10-31 01:12 程序员小明1024 阅读(813) 评论(0) 推荐(1) 编辑
摘要:来看几个问题 想不想月薪超过5万? 想不想进入公司架构组? 想不想成为项目组的负责人? 想不想成为spring的高手,超越99%的对手? 那么本文内容是你必须要掌握的。 本文主要详解bean的生命周期,分为13个环节,每个环节中spring都提供了一些扩展点,我们都将进行详细说明,让大家全面掌握这块 阅读全文
posted @ 2021-10-25 23:01 程序员小明1024 阅读(340) 评论(0) 推荐(0) 编辑
摘要:面试问题 @Scope是做什么的?常见的用法有几种? @DependsOn是做什么的?常见的用法有几种? @ImportResource干什么的?通常用在什么地方? @Lazy做什么的,通常用在哪些地方?常见的用法有几种? 上面几个问题中涉及到了4个注解,都是比较常用的,下面我们来一一介绍。 @Sc 阅读全文
posted @ 2021-10-25 22:36 程序员小明1024 阅读(214) 评论(0) 推荐(0) 编辑
摘要:先来看几个问题 通过注解的方式注入依赖对象,介绍一下你知道的几种方式 @Autowired和@Resource有何区别 说一下@Autowired查找候选者的过程 说一下@Resource查找候选者的过程 @Qulifier有哪些用法? @Qulifier加在类上面是干什么用的? @Primary是 阅读全文
posted @ 2021-10-24 22:00 程序员小明1024 阅读(187) 评论(0) 推荐(0) 编辑
摘要:面试阿里p7被问到的问题(当时我只知道第一个): @Conditional是做什么的? @Conditional多个条件是什么逻辑关系? 条件判断在什么时候执行? ConfigurationCondition和Condition有什么区别?什么时候使用ConfigurationCondition? 阅读全文
posted @ 2021-10-21 23:22 程序员小明1024 阅读(144) 评论(0) 推荐(1) 编辑
摘要:来看一下月薪5万的面试题: @Import你用过么?是做什么的? @Import使用有几种方式?有何区别? DeferredImportSelector是做什么的?他和ImportSelector有什么区别? 可以介绍介绍一下spring中哪些功能是通过@Import来实现的? 可以介绍一下spri 阅读全文
posted @ 2021-10-21 23:19 程序员小明1024 阅读(261) 评论(0) 推荐(0) 编辑
摘要:灵魂拷问 @ComponentScan注解是做什么的? basePackages的方式和basePackageClasses的方式有什么区别?你建议用哪个?为什么? useDefaultFilters有什么用? 常见的过滤器有哪些类型?说说你知道的几个 @ComponentScan是在哪个类中处理的 阅读全文
posted @ 2021-10-20 23:26 程序员小明1024 阅读(181) 评论(0) 推荐(0) 编辑
摘要:上次去头条面试: 面试官:spring中,类上加不加@Configuration注解,有什么区别? 我:当某个类上有@Configuration注解的时候,可以在这个类中使用@Bean注解向spring容器中注册bean;如果不加@Configuration注解,不能通过@Bean注解注册bean。 阅读全文
posted @ 2021-10-20 23:25 程序员小明1024 阅读(361) 评论(0) 推荐(0) 编辑
摘要:最近有个朋友去阿里面试,被面试官来了个灵魂拷问: 注解是干什么的? 一个注解可以使用多次么?如何使用? @Inherited是做什么的? @Target中的`TYPE_PARAMETER和TYPE_USER`用在什么地方? 泛型中如何使用注解? 注解定义可以实现继承么? spring中对注解有哪些增 阅读全文
posted @ 2021-10-20 23:21 程序员小明1024 阅读(172) 评论(0) 推荐(0) 编辑
摘要:本文内容 为什么需要用代理 jdk动态代理玩法详解 cglib代理常见的各种玩法详解 代理spring中用到的挺多的,比如上篇文章中的lookup-method和replaced-method,以及后面我们要学的aop、spring中的事务、spring中解析@configuration注解等等,这 阅读全文
posted @ 2021-10-19 23:28 程序员小明1024 阅读(188) 评论(0) 推荐(0) 编辑
摘要:lookup-method:方法查找 通常情况下,我们使用的bean都是单例的,如果一个bean需要依赖于另一个bean的时候,可以在当前bean中声明另外一个bean引用,然后注入依赖的bean,此时被依赖的bean在当前bean中自始至终都是同一个实例。 先来个案例回顾一下 package co 阅读全文
posted @ 2021-10-19 22:41 程序员小明1024 阅读(372) 评论(0) 推荐(0) 编辑
摘要:先来看一个案例 ServiceA.java package com.javacode2018.lesson001.demo12; public class ServiceA { } ServiceB.java package com.javacode2018.lesson001.demo12; pu 阅读全文
posted @ 2021-10-19 00:44 程序员小明1024 阅读(129) 评论(0) 推荐(0) 编辑
摘要:bean初始化的方式2种方式 实时初始化 延迟初始化 bean实时初始化 在容器启动过程中被创建组装好的bean,称为实时初始化的bean,spring中默认定义的bean都是实时初始化的bean,这些bean默认都是单例的,在容器启动过程中会被创建好,然后放在spring容器中以供使用。 实时初始 阅读全文
posted @ 2021-10-18 23:21 程序员小明1024 阅读(137) 评论(0) 推荐(0) 编辑
摘要:autowire-candidate做什么事情的? 上一篇文章Spring系列第10篇:primary可以解决什么问题?中遇到的问题我们再来回顾一下,当容器中某种类型的bean存在多个的时候,此时如果我们从容器中查找这种类型的bean的时候,会报下面这个异常: org.springframework 阅读全文
posted @ 2021-10-18 22:53 程序员小明1024 阅读(147) 评论(0) 推荐(0) 编辑
摘要:存在的问题以及解决方案 直接上案例,通过案例来看技术是如何使用的: package com.javacode2018.lesson001.demo8; public class NormalBean { public interface IService{} //@1 public static c 阅读全文
posted @ 2021-10-17 20:51 程序员小明1024 阅读(136) 评论(0) 推荐(0) 编辑
摘要:本文主要讨论一下bean的创建和销毁的顺序,如何来干预bean的创建和销毁的顺序。 无依赖bean创建和销毁的顺序 我们先来看一下没有任何依赖的bean的创建和销毁的顺序。 下面的xml中定义了3个bean: <?xml version="1.0" encoding="UTF-8"?> <beans 阅读全文
posted @ 2021-10-17 20:13 程序员小明1024 阅读(124) 评论(0) 推荐(0) 编辑
摘要:本文内容 手动注入的不足 Class.isAssignableFrom方法介绍 3种自动注入方式详解及案例 按名称自动注入 按类型自动注入 按构造器进行自动注入 按类型自动注入某种类型的所有bean给List和Map(重点) autowire=default介绍 总结 案例源码 手动注入的不足 上篇 阅读全文
posted @ 2021-10-17 19:30 程序员小明1024 阅读(615) 评论(0) 推荐(0) 编辑
摘要:本文内容 主要介绍xml中依赖注入的配置 构造器注入的3种方式详解 set方法注入详解 注入容器中的其他bean的2种方式 其他常见类型注入详解 依赖回顾 通常情况下,系统中类和类之间是有依赖关系的,如果一个类对外提供的功能需要通过调用其他类的方法来实现的时候,说明这两个类之间存在依赖关系,如: p 阅读全文
posted @ 2021-10-17 17:19 程序员小明1024 阅读(107) 评论(0) 推荐(0) 编辑
摘要:本文内容 详细介绍5种bean的sope及使用注意点 自定义作用域的实现 应用中,有时候我们需要一个对象在整个应用中只有一个,有些对象希望每次使用的时候都重新创建一个,spring对我们这种需求也提供了支持,在spring中这个叫做bean的作用域,xml中定义bean的时候,可以通过scope属性 阅读全文
posted @ 2021-10-17 16:29 程序员小明1024 阅读(144) 评论(0) 推荐(0) 编辑
摘要:本文内容 通过反射调用构造方法创建bean对象 通过静态工厂方法创建bean对象 通过实例工厂方法创建bean对象 通过FactoryBean创建bean对象 Spring容器内部创建bean实例对象常见的有4种方式。 通过反射调用构造方法创建bean对象 调用类的构造方法获取对应的bean实例,是 阅读全文
posted @ 2021-10-17 01:16 程序员小明1024 阅读(169) 评论(0) 推荐(1) 编辑
摘要:本文内容 bean xml配置文件 bean元素详解 名称和别名详解 alias元素详解 通过import元素引入外部配置 环境 jdk1.8 idea maven-3.6.1 spring-5.2.3.RELEASE bean概念回顾 我们再来回顾一下,被spring管理的对象统称为bean,我们 阅读全文
posted @ 2021-10-17 00:44 程序员小明1024 阅读(252) 评论(0) 推荐(0) 编辑
摘要:环境 jdk1.8 idea maven-3.6.1 spring-5.2.3.RELEASE IOC容器 IOC容器是具有依赖注入功能的容器,负责对象的实例化、对象的初始化,对象和对象之间依赖关系配置、对象的销毁、对外提供对象的查找等操作,对象的整个生命周期都是由容器来控制。我们需要使用的对象都由 阅读全文
posted @ 2021-10-16 23:54 程序员小明1024 阅读(992) 评论(0) 推荐(0) 编辑
摘要:Spring中有3个核心的概念:控制反转(Ioc)、依赖注入(DI)、面向切面编程(AOP),spring中其他的技术都是依靠3个核心的技术建立起来的,所以玩spring需要先对这3个概念有个深入的理解。 本文我们先介绍其中的两个:控制反转和依赖注入,而aop我们后面有专门的文章详解。 引出spri 阅读全文
posted @ 2021-10-16 23:25 程序员小明1024 阅读(207) 评论(0) 推荐(0) 编辑
摘要:Spring系列目标:从入门掌握一个高级开发所需要的技能。 环境 jdk1.8 idea maven-3.6.1 spring-5.2.3.RELEASE 整个spring系列使用官方最新版本5.2.3.RELEASE,会有大量案例,都是通过maven来管理的,所以maven是必备技能,对这块不熟悉 阅读全文
posted @ 2021-10-16 23:03 程序员小明1024 阅读(203) 评论(0) 推荐(1) 编辑
摘要:本文内容:详解@Aspect中5中通知的使用。 Aop相关阅读 阅读本文之前,需要先掌握下面几篇文章内容,不然会比较吃力。 Spring系列第15篇:代理详解(java动态代理&CGLIB代理) Spring系列第30篇:jdk动态代理和cglib代理 Spring系列第31篇:Aop概念详解 Sp 阅读全文
posted @ 2021-10-14 23:51 程序员小明1024 阅读(328) 评论(0) 推荐(1) 编辑
摘要:本文目标:带领大家阅读aop的源码,深入理解aop的原理,内容有点长,消化需要大概一周时间,做好准备。 阅读本文之前,需要先掌握下面3篇文章内容,不然会比较吃力。 Spring系列第15篇:代理详解(java动态代理&CGLIB代理) Spring系列第30篇:jdk动态代理和cglib代理 Spr 阅读全文
posted @ 2021-10-14 23:44 程序员小明1024 阅读(631) 评论(0) 推荐(0) 编辑
摘要:本文主要内容 什么是Aop? Spring AOP中重要的一些概念详解 Spring AOP 硬编码实现 什么是AOP? 先看一下传统程序的流程,比如银行系统会有一个取款流程 我们可以把方框里的流程合为一个,另外系统还会有一个查询余额流程,我们先把这两个流程放到一起: 有没有发现,这个两者有一个相同 阅读全文
posted @ 2021-10-14 23:38 程序员小明1024 阅读(5214) 评论(0) 推荐(0) 编辑
摘要:Spring中有个非常重要的知识点,AOP,即面相切面编程,spring中提供的一些非常牛逼的功能都是通过aop实现的,比如下面这些大家比较熟悉的功能 spring事务管理:@Transactional spring异步处理:@EnableAsync spring缓存技术的使用:@EnableCac 阅读全文
posted @ 2021-10-14 23:31 程序员小明1024 阅读(72) 评论(0) 推荐(0) 编辑
摘要:spring事务有2种用法:编程式事务和声明式事务。 编程式事务上一篇文章中已经介绍了,不熟悉的建议先看一下编程式事务的用法。 这篇主要介绍声明式事务的用法,我们在工作中基本上用的都是声明式事务,所以这篇文章是比较重要的,建议各位打起精神,正式开始。 什么是声明式事务? 所谓声明式事务,就是通过配置 阅读全文
posted @ 2021-10-14 23:23 程序员小明1024 阅读(622) 评论(0) 推荐(1) 编辑
摘要:本文开始,大概用10篇左右的文章来详解spring中事务的使用,吃透spring事务。 本文内容 详解spring中编程式事务的使用。 spring中使用事务的2种方式 spring使事务操作变的异常容易了,spring中控制事务主要有2种方式 编程式事务:硬编码的方式 声明式事务:大家比较熟悉的注 阅读全文
posted @ 2021-10-14 23:21 程序员小明1024 阅读(823) 评论(0) 推荐(0) 编辑
摘要:本来这篇文章要写spring事务的,但是事务中大部分案例会用到JdbcTemplate相关的功能,所以先把JdbcTemplate拿出来说一下。 什么是JdbcTemplate? 大家来回顾一下,java中操作db最原始的方式就是纯jdbc了,是不是每次操作db都需要加载数据库驱动、获取连接、获取P 阅读全文
posted @ 2021-10-14 23:18 程序员小明1024 阅读(162) 评论(0) 推荐(0) 编辑
摘要:1、本文内容 详解 @EnableAsync & @Async,主要分下面几个点进行介绍。 作用 用法 获取异步执行结果 自定义异步执行的线程池 自定义异常处理 线程隔离 源码 & 原理 2、作用 spring容器中实现bean方法的异步调用。 比如有个logService的bean,logserv 阅读全文
posted @ 2021-10-14 22:56 程序员小明1024 阅读(270) 评论(0) 推荐(0) 编辑
摘要:spring中 @Scheduled & @EnableScheduling 这2个注解,可以用来快速开发定时器,使用特别的简单。 如何使用? 用法 1、需要定时执行的方法上加上@Scheduled注解,这个注解中可以指定定时执行的规则,稍后详细介绍。 2、Spring容器中使用@EnableSch 阅读全文
posted @ 2021-10-14 22:54 程序员小明1024 阅读(342) 评论(0) 推荐(0) 编辑
摘要:本文主要详解spring中缓存的使用。 背景 缓存大家都有了解过吧,主要用来提升系统查询速度。 比如电商中商品详情信息,这些信息通常不会经常变动但是会高频访问,我们可以将这些信息从db中拿出来放在缓存中(比如redis中、本地内存中),当获取的时候,先从缓存中获取,缓存中没有的时候,再从db中获取, 阅读全文
posted @ 2021-10-14 22:50 程序员小明1024 阅读(519) 评论(0) 推荐(0) 编辑
摘要:面试官:看你是85年的 我:嗯,35了 面试官:那应该经验很丰富了,那我们来聊聊spring吧 我:好,这块我用了10几年了,你随便问吧 面试官:Spring中的事件用过么? 我:用过 面试官:可以介绍一下为什么需要使用事件么? 我:使用事件的模式可以对系统进行解耦,事件源发布一个事件,事件监听器可 阅读全文
posted @ 2021-10-14 22:44 程序员小明1024 阅读(616) 评论(0) 推荐(0) 编辑
摘要:面试官:Spring中的@Value用过么,介绍一下 我:@Value可以标注在字段上面,可以将外部配置文件中的数据,比如可以将数据库的一些配置信息放在配置文件中,然后通过@Value的方式将其注入到bean的一些字段中 面试官:那就是说@Value的数据来源于配置文件了? 我:嗯,我们项目最常用更 阅读全文
posted @ 2021-10-14 22:33 程序员小明1024 阅读(711) 评论(0) 推荐(0) 编辑
摘要:面试问题 @Scope是做什么的?常见的用法有几种? @DependsOn是做什么的?常见的用法有几种? @ImportResource干什么的?通常用在什么地方? @Lazy做什么的,通常用在哪些地方?常见的用法有几种? 上面几个问题中涉及到了4个注解,都是比较常用的,下面我们来一一介绍。 @Sc 阅读全文
posted @ 2021-10-14 22:24 程序员小明1024 阅读(105) 评论(0) 推荐(0) 编辑
摘要:先来看几个问题 通过注解的方式注入依赖对象,介绍一下你知道的几种方式 @Autowired和@Resource有何区别 说一下@Autowired查找候选者的过程 说一下@Resource查找候选者的过程 @Qulifier有哪些用法? @Qulifier加在类上面是干什么用的? @Primary是 阅读全文
posted @ 2021-10-14 22:17 程序员小明1024 阅读(147) 评论(0) 推荐(0) 编辑
摘要:参考:https://mp.weixin.qq.com/s?__biz=MzA5MTkxMDQ4MQ==&mid=2648934205&idx=1&sn=5407aa7c49eb34f7fb661084b8873cfe&chksm=88621f03bf1596159eeb40d75620db0345 阅读全文
posted @ 2021-10-11 23:50 程序员小明1024 阅读(498) 评论(0) 推荐(0) 编辑
摘要:参考:@import 一、来看一下月薪5万的面试题: @Import你用过么?是做什么的? @Import使用有几种方式?有何区别? DeferredImportSelector是做什么的?他和ImportSelector有什么区别? 可以介绍介绍一下spring中哪些功能是通过@Import来实现 阅读全文
posted @ 2021-10-10 22:08 程序员小明1024 阅读(300) 评论(0) 推荐(0) 编辑
摘要:一、思考 @ComponentScan注解是做什么的? basePackages的方式和basePackageClasses的方式有什么区别?你建议用哪个?为什么? useDefaultFilters有什么用? 常见的过滤器有哪些类型?说说你知道的几个 @ComponentScan是在哪个类中处理的 阅读全文
posted @ 2021-10-02 00:31 程序员小明1024 阅读(1347) 评论(0) 推荐(0) 编辑
摘要:Spring注解之@Configration定义配置类 之前我们都是通过xml的方式定义bean,里面会写很多bean元素,然后spring启动的时候,就会读取bean xml配置文件,然后解析这些配置,然后会将这些bean注册到spring容器中,供使用者使用。 jdk1.5里面有了注解的功能,s 阅读全文
posted @ 2021-10-01 21:31 程序员小明1024 阅读(809) 评论(0) 推荐(1) 编辑