简化开发
spring(春天)是一个轻量级的框架,零配置,API简单,面向Bean,松耦合(aop),万能胶(与各种框架结合),使用了java经典模式,所以学习spring不仅要学习使用,更要学习思想,以及实现。
概念:
EJB(之前带有业务逻辑的 java对象)
DI依赖注入 (注入方式,成员变量的方式(set,get), 也可以再构造函数,强制赋值 ),对象间的依赖链,注入就是 把= 右边的内容赋值给左边,实例化的先后顺序(spring会自动注入依赖对象)
例子 @autowired InterfaceA a;//会把他的实现类注入进来
@Resource ("a")A b;//IOC容器中的id为a的对象自动注入到 b(可以区分父子类)
@autowired ClassA a;//根据类型自动注入
IOC (控制反转,实例化的控制权,交给容器处理,不需要人为的去控制也就是new)容器存储bean 实例,例如使用@autowired注解,用来实现依赖注入,
AOP 面向切面 (是一种编程思想)先把一个整体按照规则拆分,等发布的时候再按照规则组装起来,核心即解耦。
声明式编程
减少模板编程
常用的设计模式:
代理模式:
1.执行者
2.被代理者
3.被代理者不直接去实现
4.获取被代理者的信息
工厂模式:
单例模式:
委派模式:
策略模式:
原型模式:
额外:
web容器:用来装Servlet的,例如tomcat,jboss