填空题:
1.Spring是一个基于使用JavaBean属性的Inversion of Control容器,框架的两大核心是 AOP依赖注入和IOC控制反转。
2.Spring配置文件的根元素是 3.Spring支持的依赖注入方式是 构造注入 和 set注入 对应于XML配置文件的元素是 constructor-arg 和 property 。 4.Spring Bean工厂创建对象的方式有 bean的构造方法 、 静态工厂法方法 、 实例工厂方法 。在Spring Bean工厂中可以配置抽象的对象,用属性 abstract=true进行配置,它的配置属性可以被其他Bean继承,这些继承的Bean须配置属性 parent 。 5.Spring Bean工厂创建的对象缺省是单例的,如果创建的对象不是单例的,需要配置属性 scope = “prototype” 。 6.Spring Bean对象的生命周期中,方法调用的先后顺序为 实例化 、 属性注入 、 初始化方法 、 业务方法 、 销毁 。 7.在Spring的配置文件中配置了一个FactoryBean,其id=“foo”。Bean工厂的getBean()方法要获得其创建的对象,其方法的参数是 foo 。要获得该FactoryBean的引用,getBean()方法的参数时 foo 。FactoryBean最主要的用途是对其他类型的Bean进行功能增加,Spring典型使用FactoryBean的类型举一例 TransactionProxyFactoryBean 。 8.对Spring Bean工厂最主要的扩充类型接口是 ApplicationContext 。它最主要增加的功能列出两项 国际化支持 和 多实例加载 。 9.Spring应用环境的事件模型是事件类型继承 ApplicationEvent 、事件侦听器实现 ApplicationListener ,事件源必须实现接口 无 。应用环境对多语言的支持是委托给id= messageSource 的bean来处理,我们的Bean要使用这些资源可以实现接口 ApplicationContextWare 。 Spring配置文件中配置类型为 org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator 的Bean来产生自动代理,配置类型为 org.spring.aop.framework.ProxyFactoryBean 的Bean来修改其他类型的配置。 10.通常使用的Bean工厂类型举一例ProxyFactoryBean,使用的应用环境举一类是ContextLoaderListener,配置文件通常封装在类型BeanFactory 中。 11.Spring支持标注编程,实现DAO的Bean用标注@Repository,实现服务接口的Bean用标注@Service,通用的Bean标注是@Component。在MVC框架中对控制器Bean使用标注@Controller,自动依赖注入用标注@Autowired。 12.面向层面编程中程序执行点叫做 joinpoint ,执行点的集合叫做 pointcut ,针对这些集合所采取的行动叫做 advice ,动态增加变量或方法叫做weave ,程序横截面上所解决的问题叫做advisor。 13.Spring提供的面向层面的编程对执行点集合描述用类型org.springframework.aop.aspectj.AspectJExpressionPointcut,这个类型定义了两个方法,这两个方法所返回的类型是ClassFilter和MethodMatcher。面向层面编程在Spring中主要解决的问题是实现与SpringIOC容器的整合。 14.Spring提供的建议主要有三种类型,它们是 MethodBeforeAdvice 、 AfterReturningAdvice 、 MethodInterceptor 。 15.Spring对DAO的支持主要表现在定义了统一的异常结构和对各种ORM的有效集成,该异常结构的根异常是 org.springframework.dao.DataAccessException ,用Hibernate实现DAO时的Bean通常继承 HibernateDaoSupport (org.springframework.orm.hibernate3.HibernateDaoSupport) ,在该类型中通常使用类型 HibernateTemplate 定义的方法来简化对Hibernate的编程。 16.Spring抽象了事务模型,定义了一个统一接口 PlatformTransactionManager 。Spring通过 AOP 编程概念支持声明的方式管理事务。通常我们配置 TransactionProxyFactoryBean Bean来实现声明的事务管理。Spring也可以通过标注 @Transactional 来定义事物的管理。