Spring boot和微服务面试题(进阶)

258 阅读2分钟

正如我在上一篇文章中承诺的那样,我将分享spring boot和微服务等高级主题的面试问题,这里有一些我在许多面试中反复遇到的问题:

启动Spring

  1. 为什么要使用spring boot?spring boot和spring MVC的区别?
  2. @service和@repository注解之间的区别?@controller vs @RestController注解?试着准备并理解spring boot中使用的所有注解。有些时候,人们要求解释spring boot的所有重要注解。(答案)
  3. 解释一下@SpringBootApplication注解,这是一个非常基本的问题,但有很多后续问题,所以试着在内部理解这个注解。
  4. 你是如何在你的spring boot应用程序中进行剖析的? 这个问题基本上是为了了解你是否真的在spring boot项目中工作过。虽然这个问题很简单,但对面试来说非常重要。
  5. 在spring boot中实现saveEmployee()方法。现在,面试官试图通过给出一个小的用例来检查你的动手能力,比如从控制器到存储库层实现getEmployee()或saveEmployee(),在后续的面试中,他们也会要求处理异常。所以要准备好spring boot中的异常处理场景,比如如何使用@ControllerAdvice和@ExceptionHandler注解。
  6. 如何使用spring data jpa实现分页?
  7. 如何改变spring boot中的默认服务器和端口?
  8. PUT和PATCH http方法的区别?
  9. @PathParam和@RequestParam以及@QueryParam注解之间的区别?试着理解使用这些注解的场景。

微服务。

  1. 什么是微服务?所有的微服务面试都是从这个问题开始的。它非常简单,但很难解释,所以要准备好关于微服务架构的解释,你也可以通过解释单片机和微服务架构的区别来处理这个问题。
  2. 你将采取什么方法将单体应用迁移到微服务?

3.微服务服务A调用服务B,服务B调用服务C,如果服务B停机或没有响应,那么在微服务中如何处理这种情况,或者哪种设计模式适合这种情况?

4.如何为你的微服务实现服务发现和Api网关?Api网关在微服务中的意义是什么?

5.如何在微服务架构中实现分布式日志。

6.如何处理微服务架构中的事务?

7.在微服务中,我们在哪一层实现安全?

这里我添加了一些我最近遇到的spring boot和微服务问题,在下一篇文章中,我将尝试创建一个与编码问题有关的帖子