Spring依赖注入(手动装配注解方式注入)

    技术2022-07-13  64

    手动装配注解方式注入

    一、导入jar包spring-aop.jar

    二、在applicationContext.xml中修改声明头信息,同时开启注解配置功能

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" 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-4.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd"> <bean id="userDao" class="spring.UserDaoImpl"></bean> <bean id="userDao2" class="spring.UserDaoImpl"></bean> <bean id="userName" class="java.lang.String"> <constructor-arg value="张三"></constructor-arg> </bean> <!-- 手动配置--> <bean id="userService" class="spring.UserService"></bean> <!-- 1. 开启手动装配的注解功能 --> <context:annotation-config/> </beans>

    三、我们配置的bean中使用注解进行装配

    package spring; import javax.annotation.Resource; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; public class UserService { @Autowired @Qualifier("userDao2") //默认根据属性的类型去匹配,如果对应的类型出现多个子类根据名称去匹配,我们可以加一个@Qualifier根据名称去匹配 private IUserDao userDao; @Resource(name="userName")//是@Autowired @Qualifier的结合版本,直接根据名字去匹配 private String userName; public void findUsers() { System.out.println("username:" + userName); userDao.selectUser(); } }
    Processed: 0.059, SQL: 9