Spring框架对Java开发的重要性,其核心特性就是IOC(Inversion of Control, 控制反转)和AOP,平时使用最多的就是其中的IOC,我们通过将组件交由Spring的IOC容器管理,将对象的依赖关系由Spring控制,避免硬编码所造成的过度程序耦合。
DI的三种常见注入方式
setter注入、构造器注入和基于注解的注入(也叫field注入)
底层实现方式有三种:设值注入、构造方法注入、接口注入
设值注入。
新建一个项目
②、新建一个User类,实现setter、getter方法
③、新建一个接口,名字为UserDAO,里面包含一个save方法,将信息存入数据库
④、新建一个UserDAO的实现类UserDAOImpl,实现save方法,模拟数据库存入
⑤、为了不将直接操作数据库的对象UserDAO暴露给用户,需添加service层,在数据库操作前后添加业务逻辑
⑥、在src下创建Spring配置文件,命名为applicationContext.xml,在其中配置数据访问类和业务逻辑实现类:
⑦、写一个测试方法进行测试
2、构造方法注入
①、修改UserServiceImpl类 加上构造方法
②、修改配置文件apllicationContext.xml
③、写测试方法进行测试
3、接口注入
由于接口注入会使类之间形成一定的依赖关系,产生侵入性,所以Spring不支持接口注入,这不是Spring的缺点,而应该是优点。