一般自信的面试官都喜欢问这个问题,这次面试的小伙比较年轻,咱也装回B,不然都对不起自己。
答:我比较喜欢Spring,比较有趣。 目的: 希望应聘者能够有广度且有深度。如果最感兴趣的是Spring本身,而不是其上的解决方案,那顶多会承担被分解后的编码工作。
巧了,咱也熟。 复制代码
答:有很多方面。觉得最好的就是不用写那么多配置文件了,直接写个注解,通过自动配置,就完成了初始化。
目的:说什么无所谓,主要看有没有总结能力。判断是否用过早期的Spring版本,经历过版本更新更能了解软件开发之痛,接受新知识会考虑兼容和迭代。
答:写一个相应的starter
目的:判断是否了解和写过Spring Boot Starter,主要是META-INF目录下的spring.factories文件和AutoConfiguration。了解AOP更佳。
答:比较喜欢properties格式,感觉yml格式的配置文件缩进比较难处理。比如当我从网上拷贝一些别人长长的配置文件,可能要花较多时间整理文件格式。
目的此问题没有具体的意图,主要是过渡用。
【动手能力】这么喜欢properties方式,能够写一段代码,将yml翻译成properties么? 要是回答相反则反着来。
目的通过简单的伪代码,判断应聘者的动手能力和编码风格。是喜欢问题抽象化还是喜欢立刻动手去写。我希望回答能够有条理,而且能够考虑各种异常情况,比如把自己判断不了的配置交给用户处理;比如空格和的处理。
目的假如应聘者在一段时间内不能有任何产出,会给出简单的提示。找准了存储结构,你就基本完成了工作,此问题还判断了应聘者的培养成本和价值。
目的判断是否有基础的算法知识。做工程先不要求会什么动态规划或者贪心算法,但起码的数据结构是要了解的。
目的是否对java的基础集合类熟悉,期望回答TreeMap,如果回答上来,可能会追问它是什么数据结构(红黑树)。
##【知识广度】你还接触过哪些配置方式?比较喜欢那种?
目的了解应聘者的知识广度,说不出来也无所谓,了解的多会加分。比如ini、cfg、json、toml、序列化等。
目的是否了解SpringBoot的组件SpringConfig,或者了解一些其他的开源组件如携程的apollo等。
目的了解是否知晓常用的同步方式。有两种:一种是定时去轮询更新;一种是使用zk或者etcd这种主动通知的组件。
目的这个可真是没写过就真不知道了,主要是 org.springframework.cloud.context.scope.refresh.RefreshScope
这个类