1.今日内容
今天重新学习了一下Spring,换了一套教程,初步来看我能接受。主要内容包括:1.了解Spring优势;2.了解Spring开发流程;3.了解配置文件怎么写;4.了解相关的API;
2.具体内容
2.1Spring优势
1.解耦;2.AOP;3.声明式事务支持;4.方便程序测试(整合了JUnit);5.方便继承各种开发框架;6.对API进行了封装(xxxTemplate);7.Spring源码是经典学习规范;
2.2基本开发步骤
1.导入Spring坐标;
2.编写一个接口与一个实现类;
3.在resource中,创建applicationContext的配置文件;
4.编写配置文件;
5.编写测试类;
2.3配置文件的用法
1.scope:配置范围;一般有singleton,protocol,然后使用起来也不一样;
1.scope:作用范围
1.singleton:单例模式,只会存在一个对象;
当加载Spring核心配置文件的时候,对象就会被创建;只要容器不销毁,那么多想就是一直在;
2.prototype:多例模式,创建的对象不同;
当使用getBean的时候,对象就会被创建;只要使用就会存活;长时间不使用的话,就会被;垃圾回收走了;
2.初始化方法以及销毁方法
init-method:初始化时执行的方法;
destro-method:销毁时执行的方法;
3.bean实例化的三种方式
1.使用无参构造实例化;
2.使用工厂静态方法实例化;
3.使用工厂实例方法实例化;
2.4依赖注入
从前面写的service里面,还要稀里糊涂写一顿dao加载,那是很不值当的。因此,有一种解决方法,将dao直接注入service,然后就不用再啰嗦的获取客户端然后拿出来dao了;这就叫做依赖注入:dependicy injection(DI);
注入对象有三种:
1.普通属性;
2.引用属性;
3.集合属性;
6.注入普通属性
就是注入String username这种;
对于引用对象来说是:ref;
对于基本属性来说是:value;
7.注入集合
1.List;
2.Map;
3.Properties;
8.import的使用
在一个主配置文件中,可以使用import来引入其他的配置文件,实现分模块开发;
9.bean配置总结
<bean>中可以配置很多参数:
1.id:是在容器中,实例的唯一标识,不允许重复;
2.class:配置对象的全类名;
3.scope:作用范围
4.在bean包围的标签体中,可以配置property属性,这个标签里面有很多的东西
1.value:普通属性;
2.ref:引用属性;
3.list,map.props:集合属性;
4.在集合属性中,可以嵌套很多属性包括引用属性和普通属性,还是需要多灵活使用的;
2.5常用API
10.常用API
ClassPathXmlApplicationContext:就是直接的xml文件;
File...:是磁盘路径;
anno:配置注解;
11.getBean
getBean中,可以配置两种东西;
1.字节码文件:UserService.class;这个在配置文件中只允许存在一个UseService;
2.id名称:这个需要每次都要强转类型;
3.总结
复制的东西比较多,因为内容i较多,但是相比于第一次学习,至少能听懂了spring也没有这么混乱了。