【面试普通人VS高手系列】Spring Boot的约定优于配置,你的理解是什么?
对于Spring Boot约定优于配置这个问题,看看普通人和高手是如何回答的?
普通人的回答:
嗯, 在Spring Boot里面,通过约定优于配置这个思想,可以让我们少写很多的配置,
然后就只需要关注业务代码的编写就行。嗯!
高手的回答:
我从4个点方面来回答。
1.首先, 约定优于配置是一种软件设计的范式,它的核心思想是减少软件开发人员对于配置项的维护,从而让开发人员更加聚焦在业务逻辑上。
2.Spring Boot就是约定优于配置这一理念下的产物,它类似于Spring框架下的一个脚手架,通过Spring Boot,我们可以快速开发基于Spring生态下的应用程序。
3.基于传统的Spring框架开发web应用,我们需要做很多和业务开发无关并且只需要做一次的配置,比如
(1)管理jar包依赖
(2)web.xml维护
(3)Dispatch-Servlet.xml配置项维护
(4)应用部署到Web容器
(5)第三方组件集成到Spring IOC容器中的配置项维护
而在Spring Boot中,我们不需要再去做这些繁琐的配置,Spring Boot已经自动帮我们完成了,这就是约定由于配置思想的体现。
4.Spring Boot约定由于配置的体现有很多,比如
(1)Spring Boot Starter启动依赖,它能帮我们管理所有jar包版本
(2)如果当前应用依赖了spring mvc相关的jar,那么Spring Boot会自动内置Tomcat容器来运行web应用,我们不需要再去单独做应用部署。
(3)Spring Boot的自动装配机制的实现中,通过扫描约定路径下的spring.factories文件来识别配置类,实现Bean的自动装配。
(4)默认加载的配置文件application.properties 等等。
总的来说,约定优于配置是一个比较常见的软件设计思想,它的核心本质都是为了更高效以及更便捷的实现软件系统的开发和维护。
总结
本期的普通人VS高手面试系列就到这里结束了,对于这个问题,你知道该怎么回答了吗?
另外,如果你有任何面试相关的疑问,欢迎评论区给我留言。
我是Mic,一个工作了14年的Java程序员,咱们下篇文章再见。
- maven系列:实践中理解“约定优于配置”
- 【面试普通人VS高手系列】innoDB如何解决幻读
- 【面试普通人VS高手系列】CPU飙高系统反应慢怎么排查?
- 【面试普通人VS高手系列】lock和synchronized区别
- 【面试普通人VS高手系列】线程池如何知道一个线程的任务已经执行完成
- 【面试普通人VS高手】Kafka的零拷贝原理?
- Struts2 ActionWildcard(通配符配置)约定优于配置
- Ext JS学习第十六天 事件机制event(一) DotNet进阶系列(持续更新) 第一节:.Net版基于WebSocket的聊天室样例 第十五节:深入理解async和await的作用及各种适用场景和用法 第十五节:深入理解async和await的作用及各种适用场景和用法 前端自动化准备和详细配置(NVM、NPM/CNPM、NodeJs、NRM、WebPack、Gulp/Grunt、G
- Maven之(八)约定优于配置
- VMware View 5.0从菜鸟到高手系列 10 –远程图形工作站配置篇
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第一章 构建Spark集群-配置Hadoop单机模式并运行Wordcount(1)
- Maven之(八)约定优于配置
- SpringMVC介绍之约定优于配置
- 深入理解闭包系列第一篇——到底什么才是闭包
- 使用注解,实现ssh项目中spring配置文件的零配置,约定优于配置
- Entity Framework 5.0系列之约定配置
- “约定优于配置”与Magento总结
- Spring Boot干货系列:(二)配置文件解析
- Maven之(八)约定优于配置
- VS 中配置使用Visual SVN系列 一:SVN Server下载和安装