• java开发面试题:spring面试题总结


    今天分享的java实习生常见面试题,是spring专场,主要是针对spring总结的面试题,有需要的小伙伴可以收入囊中了!

    1、 Spring Framework 中有多少个模块,它们分别是什么?

    Spring 核心容器 – 该层基本上是 Spring Framework 的核心。它包含以下模块:

    Spring Core

    Spring Bean

    SpEL (Spring Expression Language)

    Spring Context

    数据访问/集成 – 该层提供与数据库交互的支持。它包含以下模块:

    JDBC (Java DataBase Connectivity)

    ORM (Object Relational Mapping)

    OXM (Object XML Mappers)

    JMS (Java Messaging Service)

    Transaction

    Web – 该层提供了创建 Web 应用程序的支持。它包含以下模块:

    Web

    Web – Servlet

    Web – Socket

    Web – Portlet

    AOP – 该层支持面向切面编程

    Instrumentation – 该层为类检测和类加载器实现提供支持。

    Test – 该层为使用 JUnit 和 TestNG 进行测试提供支持。

    几个杂项模块:

    Messaging – 该模块为 STOMP 提供支持。它还支持注解编程模型,该模型用于从 WebSocket 客户端路由和处理 STOMP 消息。

    Aspects – 该模块为与 AspectJ 的集成提供支持。

    2、什么是 Spring 配置文件?

    Spring 配置文件是 XML 文件。该文件主要包含类信息。它描述了这些类是如何配置以及相互引入的。但是,XML 配置文件冗长且更加干净。如果没有正确规划和编写,那么在大项目中管理变得非常困难。

    3、Spring 应用程序有哪些不同组件?

    Spring 应用一般有以下组件:

    接口 - 定义功能。

    Bean 类 - 它包含属性,setter 和 getter 方法,函数等。

    Spring 面向切面编程(AOP) - 提供面向切面编程的功能。

    Bean 配置文件 - 包含类的信息以及如何配置它们。

    用户程序 - 它使用接口。

    4、spring 中有多少种 IOC 容器?

    BeanFactory - BeanFactory 就像一个包含 bean 集合的工厂类。它会在客户端要求时实例化 bean。

    ApplicationContext - ApplicationContext 接口扩展了 BeanFactory 接口。它在 BeanFactory 基础上提供了一些额外的功能。

    5、spring 支持集中 bean scope?

    Spring bean 支持 5 种 scope:

    Singleton - 每个 Spring IoC 容器仅有一个单实例。

    Prototype - 每次请求都会产生一个新的实例。

    Request - 每一次 HTTP 请求都会产生一个新的实例,并且该 bean 仅在当前 HTTP 请求内有效。

    Session - 每一次 HTTP 请求都会产生一个新的 bean,同时该 bean 仅在当前 HTTP session 内有效。

    Global-session - 类似于标准的 HTTP Session 作用域,不过它仅仅在基于 portlet 的 web 应用中才有意义。Portlet 规范定义了全局 Session 的概念,它被所有构成某个 portlet web 应用的各种不同的 portlet 所共享。在 global session 作用域中定义的 bean 被限定于全局 portlet Session 的生命周期范围内。如果你在 web 中使用 global session 作用域来标识 bean,那么 web 会自动当成 session 类型来使用。

    仅当用户使用支持 Web 的 ApplicationContext 时,最后三个才可用。

    6、Spring MVC 框架有什么用?

    Spring Web MVC 框架提供 模型-视图-控制器 架构和随时可用的组件,用于开发灵活且松散耦合的 Web 应用程序。 MVC 模式有助于分离应用程序的不同方面,如输入逻辑,业务逻辑和 UI 逻辑,同时在所有这些元素之间提供松散耦合。

    未完待续……

  • 相关阅读:
    [转]CentOS 修改yum源为国内源
    著名的镜像网站
    [译]LRTHW练习五——更多的变量及输出打印
    CentOS足迹一
    LRTHW笔记二
    线程的创建和运行(未完待续)
    比较当前时间和给定时间大小
    单独管理image
    Java 修改页面排序条件
    Java 如何使用radio button保存值
  • 原文地址:https://www.cnblogs.com/qf-dd/p/9984604.html
Copyright © 2020-2023  润新知