Spring面试总结
1,谈谈你对spring的理解
(1)总体介绍:spring是一个非常好的框架,可以说是给开发人员带来了春天(这也是为什么这个框架叫做spring),它其实就是框架与业务逻辑层之间的粘合剂,使得表现层框架与业务逻辑层进行解耦/数据层框架与业务逻辑层进行解耦,使他们之间的耦合度大大的降低,大大方便了软件后期的二次开发和扩展.
Spring相当于一个大的工厂类(BeanFactory),在其配置文件中通过<bean>元素配置用于创建实例对象的类名和实例对象的属性。
(2)包含的主要模块:spring主要包含核心部分(也就是IOC容器),spring AOP,spring JDBC,spring ORM,spring MVC等等
(3)各模块的作用:
Spring IOC: spring提供的IOC容器(控制反转)是一种编程思想,也是一种艺术架构,主要负责对象的创建和销毁的管理,实现模块之间的解耦.
Spring AOP: 通过配置管理特性,Spring AOP 模块直接将面向”方面”的编程功能集成到了 Spring 框架中
Spring JDBC:这是由spring提供的一种dao层操作的技术.
Spring ORM: spring提供的一些ORM类型的框架如JDO,Hibernate 和 iBatis ,SQL Map
Spring MVC: 其实就是一中全功能的构建 Web 应用程序的 MVC 实现.
2,aop是什么?aop的作用?
AOP称为面向切面编程,就是系统中有很多各不相干的类的方法,在这些众多方法中要加入某种系统功能的代码,例如,加入日志,加入权限判断,加入异常处理,这种应用称为AOP。实现AOP功能采用的是代理技术,客户端程序不再调用目标类,而调用代理类,代理类再去调用目标类,而在代理类中加入上述系统功能的代码,代理类与目标类对外具有相同的方法声明,有两种方式可以实现相同的方法声明,一是实现相同的接口,二是作为目标的子类.这样就将目标类中的方法业务与系统功能代码分离.
3,什么是IOC?什么是 DI?
IOC:控制反转,对于对象的创建和销毁让容器进行管理,权限让spring IOC容器进行管理,IOC容器中主要使用"依赖注入"(DI)
对象的依赖关系让容器管理,程序猿不用关心类与类之间的依赖关系,把重心放到业务处理上.
DI:依赖注入
4,谈谈你对spring依赖注入的理解?以及有哪些常用的依赖注入?
构造方法注入:
(a)程序中提供一个构造器(依赖抽象)
(b)在spring配置文件完成接口与实现的依赖关系
set方法注入:(开发中比较建议使用的一种注入方式)
(1)类中提供一个属性与set方法,通过set方法把属性注入到spring容器中
(2)在配置文件中完成它们依赖关系
属性注入:
int类型注入String类型注入List类型注入Set类型注入:不能有重复值
Map类型注入数组类型注入:<list>实现properties注入:key value--->key--->value连接数据库中
spring 继承(parent)注入:
(a)抽象继承类使用 abstract="true"
(b)子类继承 parent="父类Id"
5,jdo是什么
JDO(java data object)是Java对象持久化的新的规范,也是一个用于存取某种数据仓库中的对象的标准化API。使用jdo开发人员对于存储数据对象完全不需要额外的代码,这些繁琐的代码jdo已经进行了封转,另外,JDO很灵活,因为它可以在任何数据底层上运行,比如关系数据库、文件、XML以及对象数据库(ODBMS)等等,使得应用可移植性更强。
6,spring与ejb的区别
Spring是一中轻量级的框架,而EJB是一种重量级的框架(轻量和重量说的是框架的集成度[耦合度])
spring底层使用IOC容器(依赖注入)完成对象的实例化,完成bean的管理
EJB有两个bean:SessionBean[1,有状态的(性能耗费多,为其他bean服务)2,无状态的(消耗性能低)]EntityBean,EJB既是一种框架又是一种标准,EJB通过自己的容器(EJB容器)进行管理bean
Spring包含ejb的功能
7,spring的优点?
1,使框架集成解耦
2,提供对事物支持(spring的声明事物)
3,spring对bean的管理(单例/多例)
4,对流行框架支持(struts,struts2,webwork,jsf,hibernate,ibatis,flex[-->html5])
5,spring支持对hibernate session的管理(spring对其他框架(hibernate,ibtais)进行了二次封装,使得开发变得简单)
8,谈谈log4j的使用
添加类库,添加log4j的配置文件, 程序中的使用private Log log = LogFactory.getLog(BookTest.class);log.xxx()
log4j级别有低到高:(分别对应5个方法)debug info warn error fatal
debug:调试模式info:普通信息
warn:警告信息error:错误信息(exception)fatal:严重错误信息(导致内存泄露)
开发模式中建议使用info级别,生产模式(部署上线后)建议使用error级别.
相关推荐
本文将深入探讨2013年Spring面试中的关键知识点。 首先,我们来理解控制反转(Inversion of Control,IoC)和依赖注入(Dependency Injection,DI)。IoC意味着不再由对象自己创建和管理依赖关系,而是将这个责任...
Struts、Hibernate 和 Spring 是Java开发中常用的三大框架,它们分别负责不同的职责:Struts作为MVC模式的实现,主要用于处理Web应用的控制逻辑;...在面试中,理解并能详细解释这些概念和技术是至关重要的。
在面试中,理解Spring的核心概念和技术是至关重要的。以下是对Spring框架的一些关键知识点的详细说明: 1. 反转控制与注入: Spring的核心特性之一是反转控制(IoC),它通过容器管理对象的生命周期和依赖关系。在...
标题为"Spring面试题总结"的文档是一份专门针对程序员在应聘与Spring相关职位时可能会遇到的技术面试题的整理和总结。Spring作为一个企业级Java应用框架,已经成为业界使用最为广泛的框架之一,对于期望从事Java后端...
spring面试题总结,spring面试题总结,spring面试题总结,spring面试题总结
Spring常见面试题总结
SpringCloud微服务面试总结
本个工作7年经验,总结出的spring面试宝典,一般工作1年到5年左右面试的人 只要面试SPRING都不会离开这里面的内容,供大家学习
spring的面试题
spring复习面试个人总结题集
Spring和SpringMVC面试问题总结 1.Spring中AOP的应用场景、Aop原理、好处? 2.Spring中IOC的作用与原理?对象创建的过程。 3.介绍spring框架 4.Spring常见创建对象的注解? 5.Spring中用到的设计模式 6.Spring的优点...
### SpringCloud核心概念与面试题解析 #### 一、SpringCloud简介 1. **SpringCloud定义** SpringCloud是一个构建在Spring Boot之上的微服务框架集合,它利用Spring Boot的便捷开发特性,极大地简化了分布式系统...
总结来说,Spring框架通过其丰富的功能和设计理念,极大地简化了Java开发过程,提高了代码质量,并降低了维护成本。无论是进行企业级应用开发还是构建Web项目,Spring都扮演着至关重要的角色。理解和掌握Spring的...
spring +hibernate+struts面试总结
总结来说,Spring通过其独特的AOP和IOC特性,简化了开发流程,提高了代码的可维护性和可测试性。SSH整合则展示了Spring在多框架集成中的优势,而其强大的事务管理机制则保证了数据的一致性。理解并熟练掌握这些知识...
Spring 框架知识点总结 Spring 是一个 Java 企业级应用的开源开发框架,主要用来开发 Java 应用,但是有些扩展是针对构建 J2EE 平台的 web 应用。Spring 框架目标是简化 Java 企业级应用开发,并通过 POJO 为基础的...