本文主要详细介绍了springboot的10个常见面试问题,具有一定的参考价值。感兴趣的朋友可以参考一下。
本文分享10个springboot常见面试问题,供大家参考。具体情况如下
1.什么是Spring Boot?
这些年来,随着新特性的加入,spring变得越来越复杂。只要访问https://spring.io/projects页面,我们就会看到所有Spring项目的不同功能,这些功能都可以在我们的应用程序中使用。
如果我们必须开始一个新的spring项目,我们必须添加一个构建路径或添加Maven依赖项,配置应用服务器,并添加Spring配置。
因此,开始一个新的spring项目需要付出很多努力,因为现在我们必须从头开始做所有的事情。
Spring Boot是这个问题的解决方案。Spring Boot建立在现有的Spring框架之上。使用spring startup,我们避免了以前必须做的所有样板代码和配置。
因此,Spring Boot可以帮助我们以最少的工作量更健壮地使用现有的Spring函数。
2.Spring Boot有哪些优点?
减少开发和测试的时间和工作量。
使用JavaConfig有助于避免使用XML。
避免大量Maven导入和各种版本冲突。
提供建议和开发方法。
通过提供默认值快速开始开发。
不需要单独的Web服务器。这意味着您不再需要启动Tomcat、Glassfish或其他任何东西。
因为没有web.xml文件,所以需要的配置较少。只需添加用@ Configuration注释的类,然后添加用@Bean注释的方法。Spring会像以前一样自动加载对象并管理它。您甚至可以将@Autowired添加到bean方法中,让Spring自动加载所需的依赖项。
基于环境的配置使用这些属性,您可以将正在使用的环境传递给应用程序:-dspring . profiles . active={ environment }。加载主应用程序属性文件后,Spring将在(application {environment})中加载后续的应用程序属性文件。属性)。
3.什么是JavaConfig?
Spring JavaConfig是Spring社区的产品,它提供了一个纯Java的方法来配置Spring IoC容器。因此,它有助于避免使用XML配置。使用JavaConfig的优点是:
面向对象的配置。由于在JavaConfig中将配置定义为一个类,所以用户可以充分利用Java中面向对象的功能。一个配置类可以从另一个继承,覆盖它的@Bean方法,等等。
或者减少或消除XML配置。基于依赖注入原理的外化配置的好处已经被证明。然而,许多开发人员不希望在XML和Java之间来回切换。
JavaConfig为开发人员提供了一个纯Java的方法,用类似于XML配置的概念来配置Spring容器。
从技术角度来说,只使用JavaConfig配置类来配置容器是可行的,但实际上,很多人认为将JavaConfig与XML混合使用是最理想的。
类型安全和重构友好性。JavaConfig提供了一种类型安全的方式来配置Spring容器。由于Java 5.0对泛型的支持,现在可以通过类型而不是名称来检索bean,而无需任何转换或基于字符串的查找。
4.如何重新加载Spring Boot上的更改,而无需重新启动服务器?
这可以通过使用DEV工具来实现。有了这种依赖关系,您可以保存任何更改,嵌入式tomcat将重新启动。
Spring Boot有一个开发工具模块,有助于提高开发人员的生产力。Java开发人员面临的主要挑战之一是自动将文件更改部署到服务器并重启服务器。
开发人员可以在Spring Boot上重新加载更改,而无需重启服务器。这将消除每次手动部署更改的需要。Spring Boot发布第一版时没有这个功能。
这是开发者最需要的功能。DevTools模块完全满足开发者的需求。该模块将在生产环境中被禁用。它还提供了H2数据库控制台来更好地测试应用程序。
属国
groupIdorg.springframework.boot/groupId
artifactId spring-boot-dev tools/artifactId
optional true/可选
/依赖关系
5.Spring Boot中的监视器是什么?
弹簧靴致动器是弹簧靴框架中的重要功能之一。Spring boot Monitor可以帮助您访问生产环境中正在运行的应用程序的当前状态。
在生产环境中,必须检查和监控几个指标。即使一些外部应用程序可能正在使用这些服务来向相关人员触发警报消息。monitor模块公开了一组REST端点,可以作为HTTP URL直接访问这些端点来检查状态。
6.如何在Spring Boot中禁用Actuator端点安全性?
默认情况下,所有敏感的HTTP端点都是安全的,只有具有执行器角色的用户才能访问它们。
安全性是使用标准的http servlet request . isuserinrole方法实现的。我们可以使用management . security . enabled=false来禁用安全性。建议仅当执行器的端点在防火墙后访问时禁用安全性。
如何在自定义端口上运行Spring Boot应用程序?
为了在自定义端口上运行Spring Boot应用程序,可以在application.properties中指定端口
server.port=8090
7.什么是YAML?
YAML是一种人类可读的数据序列化语言。它通常用于配置文件。
与属性文件相比,如果我们想在配置文件中添加复杂的属性,YAML文件更加结构化,也更容易理解。可以看出,YAML具有分层的配置数据。
8.如何实现Spring Boot应用程序的安全性?
为了实现Spring Boot的安全性,我们使用了spring-boot-starter-security依赖,并且必须添加安全配置。它只需要一点代码。配置类必须扩展WebSecurityConfigurerAdapter并覆盖其方法。
9.如何集成Spring Boot和ActiveMQ?
为了集成Spring Boot和ActiveMQ,我们使用spring-boot-starter-activemq。
依赖关系。它需要很少的配置,没有样板代码。
10.如何使用Spring Boot实现分页和排序?
用Spring Boot寻呼非常简单。可以使用Spring Data-JPA将可分页的org . Spring framework . Data . domain . page able转移到repository方法。
更多面试问题学习资料请关注专题《面试题大全》。
这就是本文的全部内容。希望对大家的学习有帮助,支持我们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。