springIoC总结,不是很完整,,

springIoC总结

IoC称为控制反转(依赖注入)

  1. 引入依赖
<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-core</artifactId>
  <version>4.3.18.RELEASE</version>
</dependency>
<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-beans</artifactId>
  <version>4.3.18.RELEASE</version>
</dependency>
<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-context</artifactId>
  <version>4.3.18.RELEASE</version>
</dependency>
<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-context-support</artifactId>
  <version>4.3.18.RELEASE</version>
</dependency>

  1. 创建接口和类
public interface UserDao {
    public List<User> getUserList();
}
public class UserServiceImpl implements UserService {
    private UserDao userDao = new UserDaoImpl();
    @Override
    public List<User> getUserList() {
        return userDao.getUserList();
    }
}

  1. 依赖注入配置
<?xml version="1.0" encoding="UTF-8"?>
<!--
    第一句指明xml的文件的版本及编码
    xmlns: xml namespace(xml的命名空间,文件所需标签有固定的标签空间)
    xmlns:xsi:xml的命名空间库实例(表明标签有固定标签库实例,这个是xml schema约束方式的必备)
    xsi:schemalocation:标签库实例的具体库位置
-->
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd">

    <bean id="userDao2" class="com.qf.dao.impl.UserDaoImpl2"></bean>
    <bean id="userDao" class="com.qf.dao.impl.UserDaoImpl"></bean>
    <bean id="userService" class="com.qf.service.impl.UserServiceImpl">
        <!-- 依赖注入-->
        <property name="userDao" ref="userDao"></property>
    </bean>
</beans>

4.注入的两种方式
1)set注入
需要注入的类实现set方法
2)构造方法注入
实现注入类的构造方法
5.Bean的创建方式
1) 直接创建对象
利用反射直接创建bean对象
2)静态工厂方法创建
需要工厂类提供静态方法,交由spring容器调用该静态方法完成bean对象的创建。
3)非静态方法创建
Spring通过调用工厂类的普通方法创建对象,就意味着spring容器需要通过工厂类对象调用其普通方法。
4)注解配置
@Component
把普通类实例化的spring容器中,就可以直接调用了
@AutoWired注解:
自动装配,依赖的属性会告诉spring容器,spring容器会找到相应的对象自动注入,无需提供set方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值