22道Java Spring Boot高频面试题,Java开发者必看

本文介绍了如何在SpringBoot中管理Actuator端点安全性,自定义应用端口,使用YAML配置,实现应用程序安全、集成ActiveMQ、分页排序、使用Swagger文档、SpringProfiles配置、SpringBatch批处理、FreeMarker模板和异常处理。还包括CSRF攻击和WebSocket技术,以及AOP在软件开发中的应用。还分享了Java开发者的学习资源。
摘要由CSDN通过智能技术生成

6、如何在 Spring Boot 中禁用 Actuator 端点安全性?


默认情况下,所有敏感的 HTTP 端点都是安全的,只有具有 ACTUATOR 角色的用户才能访问它们。安全性是使用标准的 HttpServletRequest.isUserInRole 方法实施的。 我们可以使用来禁用安全性。只有在执行机构端点在防火墙后访问时,才建议禁用安全性。

7、如何在自定义端口上运行 Spring Boot 应用程序?


为了在自定义端口上运行 Spring Boot 应用程序,您可以在application.properties 中指定端口。server.port = 8090

8、什么是 YAML?


YAML 是一种人类可读的数据序列化语言。它通常用于配置文件。与属性文件相比,如果我们想要在配置文件中添加复杂的属性,YAML 文件就更加结构化,而且更少混淆。可以看出 YAML 具有分层配置数据。

9、如何实现 Spring Boot 应用程序的安全性?


为了实现 Spring Boot 的安全性,我们使用 spring-boot-starter-security 依赖项,并且必须添加安全配置。它只需要很少的代码。配置类将必须扩展WebSecurityConfigurerAdapter 并覆盖其方法。

10、如何集成 Spring Boot 和 ActiveMQ?


对于集成 Spring Boot 和 ActiveMQ,我们使用依赖关系。 它只需要很少的配置,并且不需要样板代码。

11、如何使用 Spring Boot 实现分页和排序?


使用 Spring Boot 实现分页非常简单。使用 Spring Data-JPA 可以实现将可分页的传递给存储库方法。

12、什么是 Swagger?你用 Spring Boot 实现了它吗?


Swagger 广泛用于可视化 API,使用 Swagger UI 为前端开发人员提供在线沙箱。Swagger 是用于生成 RESTful Web 服务的可视化表示的工具,规范和完整框架实现。它使文档能够以与服务器相同的速度更新。当通过 Swagger 正确定义时,消费者可以使用最少量的实现逻辑来理解远程服务并与其进行交互。因此,Swagger消除了调用服务时的猜测。

13、什么是 Spring Profiles?


Spring Profiles 允许用户根据配置文件(dev,test,prod 等)来注册 bean。因此,当应用程序在开发中运行时,只有某些 bean 可以加载,而在 PRODUCTION中,某些其他 bean 可以加载。假设我们的要求是 Swagger 文档仅适用于 QA 环境,并且禁用所有其他文档。这可以使用配置文件来完成。Spring Boot 使得使用配置文件非常简单。

14、什么是 Spring Batch?


Spring Boot Batch 提供可重用的函数,这些函数在处理大量记录时非常重要,包括日志/跟踪,事务管理,作业处理统计信息,作业重新启动,跳过和资源管理。它还提供了更先进的技术服务和功能,通过优化和分区技术,可以实现极高批量和高性能批处理作业。简单以及复杂的大批量批处理作业可以高度可扩展的方式利用框架处理重要大量的信息。

15、什么是 FreeMarker 模板?


FreeMarker 是一个基于 Java 的模板引擎,最初专注于使用 MVC 软件架构进行动态网页生成。使用 Freemarker 的主要优点是表示层和业务层的完全分离。程序员可以处理应用程序代码,而设计人员可以处理 html 页面设计。最后使用freemarker 可以将这些结合起来,给出最终的输出页面。

16、如何使用 Spring Boot 实现异常处理?


Spring 提供了一种使用 ControllerAdvice 处理异常的非常有用的方法。 我们通过实现一个 ControlerAdvice 类,来处理控制器类抛出的所有异常。

17、您使用了哪些 starter maven 依赖项?


使用了下面的一些依赖项

spring-boot-starter-activemq

spring-boot-starter-security

这有助于增加更少的依赖关系,并减少版本的冲突。

18、什么是 CSRF 攻击?


CSRF 代表跨站请求伪造。这是一种攻击,迫使最终用户在当前通过身份验证的Web 应用程序上执行不需要的操作。CSRF 攻击专门针对状态改变请求,而不是数据窃取,因为攻击者无法查看对伪造请求的响应。

19、什么是 WebSockets?


WebSocket 是一种计算机通信协议,通过单个 TCP 连接提供全双工通信信道。

1、WebSocket 是双向的 -使用 WebSocket 客户端或服务器可以发起消息发送。

2、WebSocket 是全双工的 -客户端和服务器通信是相互独立的。

3、单个 TCP 连接 -初始连接使用 HTTP,然后将此连接升级到基于套接字的连接。然后这个单一连接用于所有未来的通信

4、Light -与 http 相比,WebSocket 消息数据交换要轻得多。

20、什么是 AOP?


在软件开发过程中,跨越应用程序多个点的功能称为交叉问题。这些交叉问题与应用程序的主要业务逻辑不同。因此,将这些横切关注与业务逻辑分开是面向方面编程(AOP)的地方。

小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频

如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
img

(img-yjIHzPsZ-1710867054350)]

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频

如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
[外链图片转存中…(img-S99KcvDf-1710867054351)]

  • 20
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot是一个开源的Java框架,它基于Spring Framework并遵循“约定优于配置”的原则,简化了Spring应用程序的配置和部署。Spring Boot提供了自动配置、起步依赖、生产就绪功能和可操作性等特性,使得开发者可以更快地构建应用程序并快速部署到生产环境。 在面试中,常见的Spring Boot Could问题包括: 1. Spring Boot Could是什么? 答:Spring Boot Could是一种云端开发平台,可以为开发者提供快速、可靠、灵活的企业级应用程序开发和部署服务。它提供了一系列的工具和框架,使得开发者可以更方便地构建、测试和部署应用程序。 2. Spring Boot Could有哪些优点? 答:Spring Boot Could提供了一系列的优点,包括: (1)灵活性:它可以在各种环境中运行,包括公有云、私有云和混合云。 (2)快速部署:应用程序可以在几分钟内部署,从而提高了开发者的生产力。 (3)可靠性:Spring Boot Could提供了高可用性和弹性计算能力,可以确保应用程序在任何情况下都可以正常运行。 (4)安全性:Spring Boot Cloud提供了各种安全措施,包括身份验证和授权等。 3. Spring Boot Could如何实现自动化配置? 答:Spring Boot Cloud默认提供了自动化配置,它允许应用程序无需手动配置即可自动从配置中心获取配置信息。开发者只需提供一些基本配置信息,Spring Boot可以自动地配置应用程序所需的组件和功能。 4. Spring Boot Could有哪些组件? 答:Spring Boot Could包含了很多组件,包括: (1)服务注册和发现:Eureka (2)自动化配置:Spring Cloud Config (3)路由和负载均衡:Zuul (4)分布式追踪:Spring Cloud Sleuth (5)服务容错保护:Hystrix (6)消息总线:Spring Cloud Bus 5. 如何使用Spring Boot Cloud? 答:使用Spring Boot Cloud需要以下步骤: (1)选择一个云平台,如AWS、Google Cloud或Azure。 (2)创建一个Spring Boot项目,添加Spring Boot Cloud依赖。 (3)配置应用程序,包括数据库、消息队列和服务注册等。 (4)部署应用程序。 总之,Spring Boot Cloud是一个强大的开发平台,可以快速地构建和部署生产级应用程序,并在各种云环境中运行。开发者需要掌握其核心特性和组件,才能充分利用其优点并优化应用程序的性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值