发表于: 2017-02-04 23:23:27
1 1888
今天学习了枚举的使用和Spring里IOC和DI思想的理解
1.JavaBean是什么?先看到Spring里有提到JavaBean,于是查了一下是什么,
JavaBean是一种规范,表达实体和信息的规范,便于封装重用, JavaBean是公共Java类,但是为了编辑工具识别,需要满足至少三个条件:
- 有一个public默认构造器(例如无参构造器,)
- 属性使用public 的get,set方法访问,也就是说设置成private,同时get,set方法与属性名的大小也需要对应。例如属性name,get方法就要写成,public String getName(){},N大写。
- 需要序列化。这个是框架,工具跨平台反映状态必须的
1.学习Spring,很多资料看不大懂,于是分解知识点,了解到主要核心是:
(1).控制反转(IOC):以前传统的java开发模式中,当需要一个对象时我们,我们会自己使用new或者getInstance等直接或者间接调用构造方法创建一个对象,而在Spring开发模式中,Spring容器使用了工厂模式为我们创建了所需要的对象,我们使用时不需要自己去创建,直接调用Spring为我们提供的对象即可,这就是控制反转的思想。实例化一个java对象有三种方式:使用类构造器,使用静态工厂方法,使用实例工厂方法,当使用spring时我们就不需要关心通过何种方式实例化一个对象,spring通过控制反转机制自动为我们实例化一个对象。
(2).依赖注入(DI):Spring使用Java Bean对象的Set方法或者带参数的构造方法为我们在创建所需对象时将其属性自动设置所需要的值的过程就是依赖注入的基本思想。
关于控制反转和依赖注入,这个网站描述的非常形象和通俗易懂,有基础差不懂Spring思想的同学可以看这个
http://blog.csdn.net/wanghao72214/article/details/3969594
另外关于IOC和DI和关系区别,看了很多资料简单解释就是:,IOC时目的,DI是手段, 它们是spring核心思想的不同方面的描述,不知道我这样说是否对
(3).面向切面编程(AOP):在面向对象编程(OOP)思想中,我们将事物纵向抽象成一个个的对象。而在面向切面编程中,我们将一个个对象某些类似的方面横向抽象成一个切面,对这个切面进行一些如权限验证,事物管理,记录日志等公用操作处理的过程就是面向切面编程的思想。
2.在Spring中,所有管理的对象都是JavaBean对象,而BeanFactory和ApplicationContext就是spring框架的两个IOC容器,现在一般使用ApplicationnContext,其不但包含了BeanFactory的作用,同时还进行更多的扩展。
明天计划
1.继续学习Spring
加油补坑,为去郑州历练储备知识!
评论