发表于: 2017-07-20 22:09:14
1 965
任务进展:
今天看了一天spring,基本理清了几个问题:
1:Spring IoC容器、Metadata和Java POJO Classes
IoC容器通过阅读Metadata提供的配置信息去加载所需的Java POJO Classes并构建对象实例。简单的IoC容器如BeanFactory,提供基本的DI支持。一般常用的容器为ApplicationContext,扩展于BeanFactory,增加了企业常用的功能,其还有功能更细分的子接口如ConfigurationApplicationContext。ApplicationContext通过阅读Metadata加载Java POJO Classes并构建出指定的对象实例供使用。
Metadata可以通过 XML,Java 注释或 Java 代码来表示,XML方式最常用。bean对象是一个被实例化,组装,并通过 Spring IoC 容器所管理的对象,由Metadata提供的信息创建。bean有一系列属性来描述其整个生命周期内的信息,在XML中通过<bean>元素来配置。
Java POJO Classes是实体类,作为基本的描述模型在代码中展现。
2:Spring DI
应用程序中有许多对象,对象之间具有依赖关系,如同一个对象需要几个对象共同去构建。Spring提供了几种依赖注入方式:基于构造函数(通过bean中设置<constructor-arg>元素),基于setter方法(通过设置bean p-namespace属性),内部bean,集合注入等。另外Spring还提供了bean的自动装配规则,以及基于注释的配置来提供便利。
3:Spring JDBC框架和事务管理
Spring提供JdbcTemplate 类执行 SQL 查询、更新语句和存储过程调用,执行迭代结果集和提取返回参数值,捕获 JDBC 异常并转换。JdbcTemplate 类的实例是线程安全配置的,可以配置 JdbcTemplate 的单个实例,然后将这个共享的引用安全地注入到多个 DAOs 中。Spring还提供了SpringJdbcCall类来执行SQL的存储过程。
Spring的事务管理是处在AOP监控下的,对于AOP介绍看懂了例子,但是感觉有些陌生。
遇到问题:
对AOP概念术语有些陌生,如Aspect、Join point、Pointcut、Weaving等。其中声明式事务管理下,其配置文件中的<tx:advice>及其子元素的作用不太清楚。
明日计划:
继续学习Spring AOP,学习Spring MVC。
收获:
基本理解了Spring框架的结构和主要部分的作用
评论