发表于: 2017-10-22 22:25:14
2 714
1;梳理一下小课堂springioc
Spring是一个基于IOC和AOP结构的开源轻量级开发应用框架,大神是为了解决企业级应用开发复杂性创建的,因此spring也说是J2EE系统的框架;然后就是重要的两点。IOC 反转控制是Spring的基础,Inversion Of Control简单说就是创建对象由以前的程序员自己new 构造方法来调用,变成了交由Spring创建对象;DI 依赖注入 Dependency Inject. 简单地说就是拿到的对象的属性,已经被注入好相关值了,直接使用即可。
java程序中的每个业务逻辑至少需要两个或以上的对象来协作完成,通常每个对象在使用他的合作对象时,使用像new object () 这样的语法来完成合作对象的申请工作。而IOC的思想是: Spring容器来实现这些相互依赖对象的创建、协调工作,对象只需要关系业务逻辑本身就可以了。从这方面来说,对象如何得到他的协作对象的责任被反转了。
反转概念; 对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系; 所有的类的创建、销毁都由spring来控制,也就是说控制对象生存周期的不再是引用它的对象,而是spring。对于某个具体的对象而言,以前是它控制其他对象,现在是所有对象都被spring控制,所以这叫控制反转。
DI (Dependency Injection),依赖注入概念; 比如对象A需要操作数据库,以前要在A帕自己编写代码来获得一个Connection对象,有了spring我们就只需要告诉spring,A中需要一个Connection,在系统运行时,spring会在适当的时候制造一个Connection,注射到A中,这样就完成了对各个对象之间关系的控制。A需要依赖Connection才能正常运行,Connection是由spring注入到A中的,依赖注入的名字就这么来的。
2;代码实战部分,ref手动装配
首先是获取对象的同时获取被注入的id和name属性
然后是创建对象的同时,创建另一个对象
3;Autowired自动装配
4;用component的时候报了空指针异常,student类没有出来。。
后来发现是少了@autowried,本来以为有了component就把它注释掉了。。。
明日计划的事情:
1;学习spring+mybatis
2;完善小课堂的内容流程
遇到的问题及解决方法:
1;任务二还是不太清除目的是什么,与几位师兄交流了一下,暂时确定方向
2;任务一前期没好好学,后期适应之后优于时间原因,还是有点赶,基础还是不够牢靠,在任务二这继续深入学习。
收获:
1;对spring又熟悉了一点,尤其是概念,这一块清晰了很多
2;代码看起来也清爽了不少,自己也能独立完成一部分
评论