假设你是一个小商店的老板,你需要为店铺购买货物。在传统的情况下,你可能需要亲自去各个供应商那里购买货物,这样会使得你的商店与各个供应商之间产生直接的耦合关系。 但是,如果你采用了IOC的思想,你可以通过一个批发市场来购买货物。在这种情况下,你只需要去批发市场购买你需要的货物,而不需要与各个供应商直接打交道。批发市场会为你提供各种不同的货物选择,你只需要选择你需要的货物,而不需要关心这些货物是从哪里来的、是如何生产的等等。这样一来,你与各个供应商之间的关系就被解耦了,你只需与批发市场进行交互,而不需要关心具体的供应商是谁。 在这个例子中,批发市场就是IOC容器,各个供应商就是依赖,而你的商店就是需要这些依赖的对象。通过将依赖的管理交给IOC容器来完成,你的商店与各个供应商之间的耦合关系得到了解耦,使得你可以更加灵活地管理和维护你的商店

相关推荐

1、rabbitMQ如何保证不重复消费,如何保证消息不丢失。2、还有比较熟悉的中间件吗?(答kafka)kafka为什么快?3、@Service和@Bean的区别4、springboot与spring的区别,优点在哪里?自动装配的原理是什么?5、线程池的参数?什么时候会到达最大线程数,什么时候会采用拒绝策略6、项目中实现的功能,如果现在有一个需求需要使用第三方实现,比如说OSS,如何进行总体的规划?7、断点续传是如何实现的?如果有文件丢失怎么办?是否有优化空间?8、如果想要查找时间复杂度O(1),是用ArrayList还是Hash?9、HashMap的结构?10、IOC和AOP的原理?如何实现一个切面11、说说项目中xxl-job的执行器,项目中使用到了多少执行器12、项目中的权限管理如何实现13、项目中的rabbitMQ是单体的还是集群的,redis是单体还是集群的,项目中如何连接到redis14、redis中的数据结构,项目中有用到哪些?redis如何解决热点数据的问题15、redis如何保证数据不丢失16、JVM的参数有了解吗,如何通过参数选择垃圾回收器17、MySQL索引的数据结构了解吗,索引数据存放在哪里?如果有联合索引(a,b,c),使用a、c会走索引吗,使用b、c呢,如果我们想要自己构建一个存储引擎,应该从哪些方面考虑?18、WebSocket了解吗,在项目中是如何使用的19、Linux相关命令了解吗?Docker启动容器的命令,了解k8s吗20、线程的生命周期21、spring是如何解决循环依赖的,三级缓存都存放的什么22、在学校的学习最好的课程是哪一门,参加的比赛有哪些收获23、未来3-5年有什么规划?反问顺序可能有点混乱,只记得这些了总结:总共45min,面试官人很好,非常温和,有些问题没有答出来也会解释答案,但是感觉答得不好
查看23道真题和解析
点赞 评论 收藏
分享
11-09 15:06
已编辑
未填写教育信息 Java
面试时长:1h,后半段答得不好,估计凉了面试官人很好,有引导,有回答。后续:一面过,约二面1、JDK1.8 的新的特性2、Stream 流常用操作3、ConcurrentHashMap 用来解决什么问题?什么时候会用?4、你刚才提到了线程安全,什么现象表示出现了线程安全问题?5、Java 里有哪些锁?这些锁有什么异同呢?6、这些都是单机锁,分布式系统要加锁需要采取什么方案?7、SETNX 本身有超时时间吗?8、那如果方法执行时间很长,那锁不就提前被释放掉了吗?还有什么方案吗? 不会,不太清楚别的方案了,面试官提到也是基于 Redis 的。9、对 synchronized 关键字了解吗?原理是什么?如何加锁的?10、什么叫做偏向锁?偏向是体现在哪里了? 不会,回答了线程id11、你刚才提到了对象头,对象头中会存储哪些数据呢? 不会12、Spring 中有单例模式,除了单例模式你还知道什么模式? 13、你有用过原型模式吗?什么情况下可能会用原型模式? 不熟悉,面试官提示到是否有 “状态”14、Spring 中,哪些类是单例的?15、Spring 的 Bean 的生命周期分为几个阶段呢16、它的实例化的过程是怎样的?Bean 销毁的时候想调用一些函数要怎么做?17、Transactional 参数有哪些?18、标注了 Transactional 的方法,并没有回滚,是因为什么呢?回答 代理对象。异常那块答错了。19、为什么内部调用会导致事务失效呢?20、代理对象本质用的是 Spring 什么特性?反射中的核心方法是什么?21、如果想要内部调用,又想要事务生效要怎么做?22、用 getBean 来得到可不可以?开始回答错了,后面拐回来了 容器里面放的就是 代理对象23、Transactional 注解使用了 AOP,那么 AOP 体现在哪里呢?不会,面试官举了个例子:开启事务、回滚、提交 的这些点。24、Nacos 的集群部署了解吗?不会25、CAP 理论了解吗?Nacos 是 AP 还是 CP ?不知道(感觉最近面试好多都问我 Nacos 的)26、如果让你来实现 服务的注册中心,那么它需要哪些功能呢?27、Nacos 配置中心的功能用过吗?动态刷新是如何实现的?28、如何确定一个 SQL 是否使用了索引?如何知道这个 SQL 扫描了多少行?答道用 EXPLAIN,但是有哪些信息我有点忘了29、给你一个慢 SQL,你会从哪些方面去优化?答得不太好,后续好好补上30、事务的隔离级别?少答了一个31、JVM 常用启动参数用过吗?答了Xmx Xms,其他没用过不知道了32、什么是 Full GC?什么情况下会出现?答得不太好,JVM 有段时间没复习了。33、FullGC 会对 方法区和原空间 进行回收吗?同上34、OOM 你有遇到过吗?提到了 内存泄漏、内存很大的对象35、定位 内存泄漏/溢出 有哪些方式?面试官提到了 内存分析工具Spring 还有 JVM 这块最近没有好好看 好多都忘记了,回去好好复习。 #面经# #26届日常实习#
wulala.god:竟然是实习,看着好难
查看70道真题和解析
点赞 评论 收藏
分享
牛客网
牛客企业服务