java面试题网

普通会员

265

帖子

9

回复

179

积分

楼主
发表于 2018-03-23 17:31:15 | 查看: 703| 回复: 0

1.是什么?

Spring是基于JEE的轻量级的应用框架 

2.有什么?

每个包的功能:

WEBMVC:spring 本身提供的web 框架

WEB:集成web 应用的框架

JEE :继承一系列的jee的技术

DAO:封装了JDBC;

ORM:提供了对ORM工具的集成

AOP :面向切面编成

CORE:spring的核心包,提供bean的公厂和IOC容器

3.能干什么?

把一列的jee的技术有效的组合在一起形成以良好的系统

4.容器和bean

           Bean :是指受spring和ioc管理的对象称为bean

           容器 :(与jee的容器类比)

           Jee    :提供组件的运行环境和管理组件的生命周期(不能单独存在)

           Spring :提供bean的运行环境和管理bean的生命周期(可以单独存在)

5.IOC控制反转

从前的应用程序想要得到A的实例他会直接主动的去拿,当用了sping后,应用程序由主动的去取变成被动的等待,由spring来控制应用程序所需要的对象

  1.IOC的优点

    1.可以通过IOC来获得实例

    2.可以通过DI来获取注入的资源

  2.配置IOC的原则

   1.一定是可变的资源才采用依赖注入

   2.一定是层间的接口或者是模块之间的相互调用才采用依赖注入

   3.表现层调用逻辑层,可以让表现层作为客户端,而不要采用依赖注入。表现层只需要逻辑层接口一个资源

6.DI依赖注入

1. 应用程序依赖spring注入所需要的对象IOC和DI是对同一种事情的不同描述

2.setter注入: 在配置文件中将接口的实现配置为bean在应用程序中注入

3.构造器注入

        4.singleton

         1.单例模式是整个的jvm中只有一个实例

         2.spring的singleton是指在spring的容器中只有一个实例,一个生命周期中只有一个实例

        5.DI的优点:

         1.程序被动等待,强化面向接口编成

         2.切断了对象或组件之间的联系,使程序的结构更加松散,运行和维护更加简单


7.Aop面向切面编程

1.AOP面向切面编程  一些较好的模式或者是示例----范式

  切面:一个切面代表我们所关注的一系列的共同的功能点(模块之间的共同的功能点)

2.AOP的思想: 主动---->被动(追加功能)

3.AOP 的概念

1.切面     :我们所关注的功能点

2.连接点   :事件的触发点(方法的执行)

3.通知     :连接点触发时 执行的动作(方法)

4.切入点   :一系列的连接点的集合  (连接点的模块化)

5.引入     :扩展的功能

6.目标对象 :包含连接点的对象

7.aop代理  :实现机制

8.使用注解

1.@Aspect声明一个切面,将一系列的共同的功能定义成一个切面

       直接在类上定义@Aspect

2.@Pointcut声明切入点

  用一个专门的类来定义pointcut,类中的方法名就是该pointcut的名字

3.@Aronud 

   注解@Around环绕追加功能;

   在执行目标对象的方法的前、后追加功能;

   必须有参数;第一个参数的类型必须为ProceedingJoinPoint;

   通过ProceedingJoinPoint的实例的proceed来调用所监控的目标对象的方法

   定义一个pointcut,通过方法名来作为pointcut的名称来引用    

4.@Before

 注解@Before在执行目标对象的方法前追加相应的功能

 定义一个pointcut,通过方法名来作为pointcut的名称来引用          

5.@After

 注解@After在执行目标对象的方法后追加相应的功能

 定义一个pointcut,通过方法名来作为pointcut的名称来引用 

6.@Transcational

  指哪打哪(可以在类上,也可以在方法上)

  同样需要注入dataSource和spring的事务管理



您需要登录后才可以回帖 登录 | 立即注册

java面试题网无聊看看网与java建站系统提供技术支持V2.1 网站地图 © 2016-2018