diff --git a/src/main/java/com/kwan/spring5/dao/impl/UserDaoImpl.java b/src/main/java/com/kwan/spring5/dao/impl/UserDaoImpl.java index 42e4b94deefe827ddbb309013d22ac789dfc36d4..277ce2ebdaec8dfc87d0591076be3763a183c217 100644 --- a/src/main/java/com/kwan/spring5/dao/impl/UserDaoImpl.java +++ b/src/main/java/com/kwan/spring5/dao/impl/UserDaoImpl.java @@ -1,6 +1,7 @@ package com.kwan.spring5.dao.impl; import com.kwan.spring5.dao.UserDao; +import org.springframework.stereotype.Repository; /** * UserDao 实现类 @@ -9,6 +10,7 @@ import com.kwan.spring5.dao.UserDao; * @version : 2.2.0 * @date : 2022/11/12 20:08 */ +@Repository(value = "userDaoImpl") public class UserDaoImpl implements UserDao { @Override public void update() { diff --git a/src/main/java/com/kwan/spring5/service/UserService.java b/src/main/java/com/kwan/spring5/service/UserService.java index ac8aed3a2b5e82aba265034fdd8e2a1b4c2fd8d2..8144a886e8a530501ad7d9edfe34572a1894785d 100644 --- a/src/main/java/com/kwan/spring5/service/UserService.java +++ b/src/main/java/com/kwan/spring5/service/UserService.java @@ -1,6 +1,9 @@ package com.kwan.spring5.service; import com.kwan.spring5.dao.UserDao; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.stereotype.Service; /** * user服务类 @@ -9,11 +12,16 @@ import com.kwan.spring5.dao.UserDao; * @version : 2.2.0 * @date : 2022/11/12 19:34 */ +@Service(value = "userService") public class UserService { /** * 创建UserDao类型属性,生成set方法 */ + @Autowired + @Qualifier(value = "userDaoImpl") +// @Resource(name = "userDaoImpl") +// @Resource(type = UserDaoImpl.class) private UserDao userDao; public void setUserDao(UserDao userDao) { @@ -24,4 +32,9 @@ public class UserService { System.out.println("service add..............."); userDao.update();//调用dao方法 } + + + public void update() { + System.out.println("service update..............."); + } } diff --git a/src/main/resources/spring16.xml b/src/main/resources/spring16.xml new file mode 100644 index 0000000000000000000000000000000000000000..73304e2343c2364887c522153bdb2f6242c23167 --- /dev/null +++ b/src/main/resources/spring16.xml @@ -0,0 +1,17 @@ + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/spring17.xml b/src/main/resources/spring17.xml new file mode 100644 index 0000000000000000000000000000000000000000..9a738daab535faeefd24a25035ea7207a59bb8f7 --- /dev/null +++ b/src/main/resources/spring17.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/spring18.xml b/src/main/resources/spring18.xml new file mode 100644 index 0000000000000000000000000000000000000000..73304e2343c2364887c522153bdb2f6242c23167 --- /dev/null +++ b/src/main/resources/spring18.xml @@ -0,0 +1,17 @@ + + + + + + + + \ No newline at end of file diff --git a/src/test/java/Spring_16_ComponentTest.java b/src/test/java/Spring_16_ComponentTest.java new file mode 100644 index 0000000000000000000000000000000000000000..8006ee1da9b906be8fa0527c7fe9baa3536c6e4e --- /dev/null +++ b/src/test/java/Spring_16_ComponentTest.java @@ -0,0 +1,20 @@ +import com.kwan.spring5.service.UserService; +import org.junit.Test; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +/** + * 注解ioc + * + * @author : qinyingjie + * @version : 2.2.0 + * @date : 2022/11/12 18:43 + */ +public class Spring_16_ComponentTest { + @Test + public void testBean3() { + ClassPathXmlApplicationContext context = + new ClassPathXmlApplicationContext("spring16.xml"); + UserService userService = context.getBean("userService", UserService.class); + userService.add(); + } +} diff --git a/src/test/java/Spring_17_ComponentTest.java b/src/test/java/Spring_17_ComponentTest.java new file mode 100644 index 0000000000000000000000000000000000000000..63de8324a8d55eb1f2e8efdd38866e369786cc8d --- /dev/null +++ b/src/test/java/Spring_17_ComponentTest.java @@ -0,0 +1,20 @@ +import com.kwan.spring5.service.UserService; +import org.junit.Test; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +/** + * 开启组件扫描细节配置 + * + * @author : qinyingjie + * @version : 2.2.0 + * @date : 2022/11/12 18:43 + */ +public class Spring_17_ComponentTest { + @Test + public void testBean3() { + ClassPathXmlApplicationContext context = + new ClassPathXmlApplicationContext("spring17.xml"); + UserService userService = context.getBean("userService", UserService.class); + userService.update(); + } +} diff --git a/src/test/java/Spring_18_ComponentTest.java b/src/test/java/Spring_18_ComponentTest.java new file mode 100644 index 0000000000000000000000000000000000000000..0de3d3b9ee64c6c27200d371f9c30635095624f1 --- /dev/null +++ b/src/test/java/Spring_18_ComponentTest.java @@ -0,0 +1,20 @@ +import com.kwan.spring5.service.UserService; +import org.junit.Test; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +/** + * 基于注解方式实现属性注入 + * + * @author : qinyingjie + * @version : 2.2.0 + * @date : 2022/11/12 18:43 + */ +public class Spring_18_ComponentTest { + @Test + public void testBean3() { + ClassPathXmlApplicationContext context = + new ClassPathXmlApplicationContext("spring18.xml"); + UserService userService = context.getBean("userService", UserService.class); + userService.add(); + } +} diff --git a/src/test/java/Spring_19_QualifierTest.java b/src/test/java/Spring_19_QualifierTest.java new file mode 100644 index 0000000000000000000000000000000000000000..79011a77add2c81a807f58a29e33b70a20135aa9 --- /dev/null +++ b/src/test/java/Spring_19_QualifierTest.java @@ -0,0 +1,20 @@ +import com.kwan.spring5.service.UserService; +import org.junit.Test; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +/** + * Qualifier注解 + * + * @author : qinyingjie + * @version : 2.2.0 + * @date : 2022/11/12 18:43 + */ +public class Spring_19_QualifierTest { + @Test + public void testBean3() { + ClassPathXmlApplicationContext context = + new ClassPathXmlApplicationContext("spring18.xml"); + UserService userService = context.getBean("userService", UserService.class); + userService.add(); + } +} diff --git a/src/test/java/Spring_20_ResourceTest.java b/src/test/java/Spring_20_ResourceTest.java new file mode 100644 index 0000000000000000000000000000000000000000..699a952028bc8105cdb3019adbcf6f07dbd1e400 --- /dev/null +++ b/src/test/java/Spring_20_ResourceTest.java @@ -0,0 +1,20 @@ +import com.kwan.spring5.service.UserService; +import org.junit.Test; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +/** + * Qualifier注解 + * + * @author : qinyingjie + * @version : 2.2.0 + * @date : 2022/11/12 18:43 + */ +public class Spring_20_ResourceTest { + @Test + public void testBean3() { + ClassPathXmlApplicationContext context = + new ClassPathXmlApplicationContext("spring18.xml"); + UserService userService = context.getBean("userService", UserService.class); + userService.add(); + } +}