上一份Spring的手绘思维脑图(就像是个知识大纲总结),预览一下Spring的知识点,心里有个谱。不过这边我是采用的截图方式,为了把全部的内容都截取出来,所以整个就比较小,可能不是很清晰。
1. 不同版本的 Spring Framework 有哪些主要功能?
2. 什么是 Spring Framework?
3. 列举 Spring Framework 的优点
4. Spring Framework 有哪些不同的功能?
5. Spring Framework 中有多少个模块,它们分别是什么?
6. 什么是 Spring 配置文件?
7. Spring 应用程序有哪些不同组件?
8. 使用 Spring 有哪些方式?
9. 什么是 Spring IOC 容器?
10. 什么是依赖注入?
11. 可以通过多少种方式完成依赖注入?
12. 区分构造函数注入和 setter 注入。
13. spring 中有多少种 IOC 容器?
14. 区分 BeanFactory 和 ApplicationContext。
15. 列举 IoC 的一些好处。
16. Spring IoC 的实现机制。
17. 什么是 spring bean?
18. spring 提供了哪些配置方式?
19. spring 支持集中 bean scope?
20. spring bean 容器的生命周期是什么样的?
21. 什么是 spring 的内部 bean?
22. 什么是 spring 装配?
23. 自动装配有哪些方式?
24. 自动装配有什么局限?
25. 什么是基于注解的容器配置?
26. 如何在 spring 中启动注解装配?
27. @Component, @Controller, @Repository, @Service 有何区别?
28. @Required 注解有什么用?
29. @Autowired 注解有什么用?
30. @Qualifier 注解有什么用?
31. @RequestMapping 注解有什么用?
32. spring DAO 有什么用?
33. 列举 Spring DAO 抛出的异常。
34. spring JDBC API 中存在哪些类?
35. 使用 Spring 访问 Hibernate 的方法有哪些?
36. 列举 spring 支持的事务管理类型
37. spring 支持哪些 ORM 框架?
38. 什么是 AOP?
39. 什么是 Aspect?
40. 什么是切点(JoinPoint)
41. 什么是通知(Advice)?
42. 有哪些类型的通知(Advice)?
43. 指出在 spring aop 中 concern 和 cross-cutting concern 的不同之处
44. AOP 有哪些实现方式
45. Spring AOP and AspectJ AOP 有什么区别?
46. 如何理解 Spring 中的代理?
47. 什么是编织(Weaving)?
48. Spring MVC 框架有什么用?
49. 描述一下 DispatcherServlet 的工作流程
50. 介绍一下 WebApplicationContext
完整的答案解析如下(总共有18页)
问题一:什么是 Spring Cloud?
问题二:使用 Spring Cloud 有什么优势?
问题三:服务注册和发现是什么意思?Spring Cloud 如何实现?
问题四:负载平衡的意义什么?
问题五:什么是 Hystrix?它如何实现容错?
问题六:什么是 Hystrix 断路器?我们需要它吗?
问题七:什么是 Spring Cloud Bus?我们需要它吗?
问题八:什么是 Netflix Feign?它的优点是什么?
完整的答案解析如下(总共6页)
问题一:Spring Boot、Spring MVC 和 Spring 有什么区别?
问题二:什么是自动配置?
问题三:什么是 Spring Boot Stater ?
问题四:你能否举一个例子来解释更多 Staters 的内容?
问题五:Spring Boot 还提供了其它的哪些 Starter Project Options?
问题六:Spring 是如何快速创建产品就绪应用程序的?
问题七:创建一个 Spring Boot Project 的最简单的方法是什么?
问题八:Spring Initializr 是创建 Spring Boot Projects 的唯一方法吗?
问题九:为什么我们需要 spring-boot-maven-plugin? 问题十:如何使用 SpringBoot 自动重装我的应用程序?
问题十一 :什么是嵌入式服务器?我们为什么要使用嵌入式服务器呢?
问题十二:如何在 Spring Boot 中添加通用的 JS 代码?
问题十三:什么是 Spring Data?
问题十四:什么是 Spring Data REST?
问题十五:path=”users”, collectionResourceRel=”users” 如何与 Spring Data Rest 一起使用?
问题十六:当 Spring Boot 应用程序作为 Java 应用程序运行时,后台会发生什么?
问题十七:我们能否在 spring-boot-starter-web 中用 jetty 代替 tomcat?
问题十八:如何使用 Spring Boot 生成一个 WAR 文件?
问题十九:如何使用 Spring Boot 部署到不同的服务器?
问题二十:RequestMapping 和 GetMapping 的不同之处在哪里?
问题二十一:为什么我们不建议在实际的应用程序中使用 Spring Data Rest?
问题二十二:在 Spring Initializer 中,如何改变一个项目的包名字?
问题二十三:可以配置 application.propertierde 的完整的属性列表在哪里可以找到?
问题二十四:JPA 和 Hibernate 有哪些区别?
问题二十五:业务边界应该从哪一层开始?
问题二十六:使用 Spring Boot 启动连接到内存数据库 H2 的 JPA 应用程序需要哪些依赖项?
问题二十七:如何不通过任何配置来选择 Hibernate 作为 JPA 的默认实现?
问题二十八:指定的数据库连接信息在哪里?它是如何知道自动连接至 H2 的?
问题二十九:我们如何连接一个像 MySQL 或者Orcale 一样的外部数据库?
问题三十:Spring Boot 配置的默认 H2 数据库的名字是上面?为什么默认的数据库名字是 testdb?
问题三十一:如果 H2 不在类路径里面,会出现上面情况?
问题三十二:你能否举一个以 ReadOnly 为事务管理的例子?
问题三十三:发布 Spring Boot 用户应用程序自定义配置的最好方法是什么?
问题三十四:配置文件的需求是什么?
问题三十五:如何使用配置文件通过 Spring Boot 配置特定环境的配置?
答案解析如下(21页)
1. 什么是 SpringMvc?
2. Spring MVC 的优点:
3. SpringMVC 工作原理?
4. SpringMVC 流程?
5. SpringMvc 的控制器是不是单例模式,如果是,有什么问题,怎么解决?
6. 如果你也用过 struts2.简单介绍下 springMVC 和 struts2 的区别有哪些?
7. SpingMvc 中的控制器的注解一般用哪个,有没有别的注解可以替代?
8. @RequestMapping 注解用在类上面有什么作用?
9. 怎么样把某个请求映射到特定的方法上面?
10. 如果在拦截请求中,我想拦截 get 方式提交的方法,怎么配置?
11. 怎么样在方法里面得到 Request,或者 Session?
12. 我想在拦截的方法里面得到从前台传入的参数,怎么得到?
13. 如果前台有很多个参数传入,并且这些参数都是一个对象的,那么怎么样快速得到这个对象?
14. SpringMvc 中函数的返回值是什么?
15. SpringMVC 怎么样设定重定向和转发的?
16. SpringMvc 用什么对象从后台向前台传递数据的?
17. SpringMvc 中有个类把视图和数据都合并的一起的,叫什么?
18. 怎么样把 ModelMap 里面的数据放入 Session 里面?
19. SpringMvc 怎么和 AJAX 相互调用的?
20. 讲下 SpringMvc 的执行流
答案解析如下(4页)
无论是哪家公司,都很重视基础,大厂更加重视技术的深度和广度,面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。
针对以上面试技术点,我在这里也做一些资料分享,希望能更好的帮助到大家。
CodeChina开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频】