×

spring框架面试 框架 prin

spring框架面试(Spring框架体系是重复造轮子吗有必要学吗)

admin admin 发表于2023-05-19 15:35:55 浏览29 评论0

抢沙发发表评论

本文目录

Spring框架体系是重复造轮子吗有必要学吗

谢谢邀请!

我的观点

Spring框架体系不是重复要轮子,下面是我们常用的开发框架:

①ssh (spring/struts/hibernate)

②ssm(spring/springmvc/mybatis)

③springboot (基于spring)

④ dubbo

⑤ springcloud

⑥其他二次封装的框架

上面我们开发使用的框架都离不开spring,一句话:只要你还在用java开发,你就离不开spring。

Spring为什么那么重要?

Spring最主要的两大模块是Ioc和aop,Ioc就是依赖注入,以前如果我们在一个类中引用另外一个类,那么直接是new的,而现在有了spring,所有bean的生命周期和相互的依赖,都是由spring来管理的。

AOP:面向切面编程,即把我们平时业务中的公共部分提取出来写在切面里,然后在系统启动时,在底层使用动态代理,给需要切入的类加上公共的业务。比如我们的性能监控,事务的处理都是用的spring aop。

而且spring得可扩展性非常强

Spring的强扩展性体现在在哪儿?

看过源码的都知道,spring提供了非常多的Bean的后置处理器,不仅是这些,spring还在加载的各个阶段预留了空方法,就给用户去自定义实现。比如bean注册少,注册后,实例化前,实例化后,最后容器初始化要了还有预留的接口,如果我们需要扩展只要实现一个接口即可。

其他框架是怎么融合spring的呢?

① 我们先说spring aop 在哪个阶段对bean进行代理的

Aop在getBean方法里,在bean实例化前会初始化好切面和增强器。

在bean实例化后,使用spring预留的接口,实现对bean的代理。

② springboot集成tomcat是怎么启动的?

实在spring中的onRefresh()的空方法实现的,这时bean还没有初始化。

③ ureka注册中心在什么时候启动的?

在spring容器初始化完成后,有一个预留接口,ureka实现了这个接口进行启动。

上面例子还有很多,就不一一说了;

java程序员面试中被问到会不会搭框架指的是什么呀怎样系统学习

搭建框架就是利用一些常见的开源工具,例如mybatis,springmvc,zookeeper等实现一个单机或者分布式的web应用或者大数据存储应用

JAVA架构师面试题,如何成为架构师

想成为一名优秀的架构师有以下几点是必须要具备的:

1.具有5年以上的大型互联网公司的工作经验,知识的深度:至少是某个领域的专家,比如消息队列,activeMQ熟悉其源码,高并发是如何实现以及多线程异步加载、JVM的优化。

2:熟练使用主流框架,如:mybatis,spring 等

3:研究过至少一种以web框架的源码,如spring mvc ,struts 等。

需要擅长的技术点:高并发、高可用、分布式、高性能、架构设计、源码分析、大数据等技术,例如:Dubbo/Zookeper/Redis/MongoDB/ActiveMQ/Nginx/Hadoop等主流核心技术。如果这些技术都会了离架构师之路已经不远了。

需要掌握的技能:1.有一句话说得好,将军就是更优秀的士兵。架构师作为程序员中的将军,首先需要有足够的技术深度,同时需要广泛了解行业内的主流技术,以便更好地设计架构和技术选型。

2.抛开业务谈架构就是耍流氓。这一点对应用架构师来说尤其重要。只有对业务有了充分的理解,才能对项目的设计和扩展做出合理的规划。

3.架构师不只是低头做技术,更需要协调指挥团队内的成员,也需要跨部门和产品、运营、项目经理等人员做及时有效的沟通,所以沟通能力是必不可少的。