本文共 1910 字,大约阅读时间需要 6 分钟。
- Spring是一个开源的轻量级框架
- spring核心主要有两部分 (1.)aop:面向切面编程,扩展功能不是修改源代码实现 (2.)ioc:控制反转,比如有一个类,在类里面有方法(不是静态方法),调用类里面的方法,创建类的对象,使用对象调用方法,创建类对象的过程,需要new出来对象 ioc是把对象的创建不是通过new方式实现,而是交给spring配置创建类对象
- spring是一个一站式的轻量级框架 (1.)spring在javaee三层结构中,每一层都提供不同的解决技术 ----web层:springMVC ----service:spring的ioc ----dao层:spring的jdbcTemplate
ioc底层原理使用技术
(1.)xml配置文件 (2.)dom4j解析xml (3.)工厂设计模式 (4.)反射
/*分两步:1.加载spring配置文件,根据配置文件创建对象*/ApplicationContext context = new ClassPathXmlApplicationContext("ApplicationContext.xml");//第二步:得到配置创建对象/*例如:User user = context.getBean("user");*/
创建对象的时候,向类里面属性里面设置值
属性注入方式:(Java方式) 1.有参数的构造函数 2.set方法 3.使用接口注入
//接口注入public interface Dao{ public void delete(String name);}public class DaoImpl implements Dao{ private String name; public void delete(String name){ this.name = name; }}
在sping中支持前两种方式(set、有参构造)
private UserDao userDao;
public void setUserDao(UserDO UserDO){this.userDao = userDao}
IOC:
控制反转,把对象创建交给spring进行配置 DI: 依赖注入,创建对象中向类里面的属性中设置值 关系: 依赖注入不能单独存在,需要对象创建的基础上存在(在ioc基础上完成操作)
加载spring核心配置文件
ApplicationContext context = new ClassPathXmlApplicationContext("ApplicationContext.xml");
new对象,功能可以实现,效率很低 实现思想:把加载配置文件和创建对象过程,在服务器启动时候完成 实现原理: 1.servletContext对象 2.监听器 3.具体使用 1).在服务器启动时候,为每个项目创建一个servletContext对象 2).在ServletContext对象创建的时候,使用监听器可以监听到具体的ServlectContext对象在什么时候创建 3).使用监听器监听到ServletContext对象创建时候 (1).加载spring文件,把配置文件的配置对象创建 (2).把创建出来的对象放到ServletContext域对象里面(setAttribute方法) 4).获取对象的时候,到ServletContext域对象得到(getAttribute方法)
转载地址:http://bygdo.baihongyu.com/