當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
[Spring5]IOC容器_Bean管理注解方式_注入属性@Autowired_@Qualified_@Resource_@Value
生活随笔
收集整理的這篇文章主要介紹了
[Spring5]IOC容器_Bean管理注解方式_注入属性@Autowired_@Qualified_@Resource_@Value
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
基于注解方式實現屬性注入
(1)@AutoWired:根據屬性類型進行自動裝配
第一步 把service和dao對象創建,在service和dao類添加創建對象注解
第二步 在service注入dao對象,在service類添加dao類型屬性,在屬性上面使用注解
package com.atguigu.spring.dao;public interface UserDao {public void add(); } package com.atguigu.spring.dao;import org.springframework.stereotype.Repository;@Repository public class UserDaoImpl implements UserDao {@Overridepublic void add() {System.out.println("dao add");} } package com.atguigu.spring.service;import com.atguigu.spring.dao.UserDao; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.stereotype.Service;//在注解里面value屬性值可以省略不寫 //默認值是類名稱,首字母小寫 @Service(value = "userService")//<bean id = "" class = ""/> public class UserService {//定義dao類型屬性//不需要添加set方法//添加注入屬性注解@Autowired //根據類型進行注入private UserDao userDao;public void add(){System.out.println("service add");userDao.add();}} package com.atguigu.spring.testdemo;import com.atguigu.spring.service.UserService; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext;public class TestSpring5Demo1 {@Testpublic void testService(){ApplicationContext context = new ClassPathXmlApplicationContext("bean6.xml");UserService userService = context.getBean("userService", UserService.class);System.out.println(userService);userService.add();} }(2)@Qualifier:根據屬性名稱進行注入
這個@Qualifier注解的使用,和上面@Autowired一起使用
package com.atguigu.spring.dao;import org.springframework.stereotype.Repository;@Repository(value = "userDaoImpl") public class UserDaoImpl implements UserDao {@Overridepublic void add() {System.out.println("dao add");} } package com.atguigu.spring.service;import com.atguigu.spring.dao.UserDao; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Component; import org.springframework.stereotype.Service;//在注解里面value屬性值可以省略不寫 //默認值是類名稱,首字母小寫 @Service(value = "userService")//<bean id = "" class = ""/> public class UserService {//定義dao類型屬性//不需要添加set方法//添加注入屬性注解@Autowired //根據類型進行注入@Qualifier (value = "userDaoImpl")private UserDao userDao;public void add(){System.out.println("service add");userDao.add();}}(3)@Resource:可以根據類型注入,可以根據名稱注入
@Resource//根據類型進行注入 @Resource(name = "userDaoImpl")//根據名稱進行注入(4)@Value:注入普通類型屬性
package com.atguigu.spring.service;import com.atguigu.spring.dao.UserDao; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import org.springframework.stereotype.Service;//在注解里面value屬性值可以省略不寫 //默認值是類名稱,首字母小寫 @Service(value = "userService")//<bean id = "" class = ""/> public class UserService {@Value(value = "abc")private String name;//定義dao類型屬性//不需要添加set方法//添加注入屬性注解@Autowired //根據類型進行注入@Qualifier (value = "userDaoImpl")private UserDao userDao;public void add(){System.out.println("service add"+name);userDao.add();}} 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的[Spring5]IOC容器_Bean管理注解方式_注入属性@Autowired_@Qualified_@Resource_@Value的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电动牙刷的危害
- 下一篇: [Spring5]IOC容器_Bean管