zoukankan      html  css  js  c++  java
  • spring12

    基于注解方式实现属性注入

    ​ (1)@Autowired:根据属性类型进行自动装配

    ​ 第一步 把 service 和 dao 对象创建,在 service 和 dao 类添加创建对象注解

    第二步 在 service 注入 dao 对象,在 service 类添加 dao 类型属性,在属性上面使用注解

    @Service
    public class UserService {
    //定义 dao 类型属性
    //不需要添加 set 方法
    //添加注入属性注解
    @Autowired
    private UserDao userDao;
    public void add() {
    System.out.println("service add.......");
    userDao.add();
    }
    }

    //Dao实现类
    @Repository
    //@Repository(value = "userDaoImpl1")
    public class UserDaoImpl implements UserDao {
    @Override
    public void add() {
    System.out.println("dao add.....");
    }
    }
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    ​ (2)@Qualifier:根据名称进行注入,这个@Qualifier 注解的使用,和上面@Autowired 一起使用

    //定义 dao 类型属性
    //不需要添加 set 方法
    //添加注入属性注解
    @Autowired //根据类型进行注入
    //根据名称进行注入(目的在于区别同一接口下有多个实现类,根据类型就无法选择,从而出错!)
    @Qualifier(value = "userDaoImpl1")
    private UserDao userDao;
    1
    2
    3
    4
    5
    6
    7
    ​ (3)@Resource:可以根据类型注入,也可以根据名称注入(它属于javax包下的注解,不推荐使用!)

    //@Resource //根据类型进行注入
    @Resource(name = "userDaoImpl1") //根据名称进行注入
    private UserDao userDao;
    1
    2
    3
    ​ (4)@Value:注入普通类型属性

    @Value(value = "abc")
    private String name
    1
    2
    ​ 6、完全注解开发

    ​ (1)创建配置类,替代 xml 配置文件

    @Configuration //作为配置类,替代 xml 配置文件
    @ComponentScan(basePackages = {"com.atguigu"})
    public class SpringConfig {

    }
    1
    2
    3
    4
    5
    ​ (2)编写测试类

    @Test
    public void testService2() {
    //加载配置类
    ApplicationContext context
    = new AnnotationConfigApplicationContext(SpringConfig.class);
    UserService userService = context.getBean("userService",
    UserService.class);
    System.out.println(userService);
    userService.add();
    }

    @Test
    public void testService2() {
    //加载配置类
    ApplicationContext context
    = new AnnotationConfigApplicationContext(SpringConfig.class);
    UserService userService = context.getBean("userService",
    UserService.class);
    System.out.println(userService);
    userService.add();
    }

  • 相关阅读:
    Python 中的 None 与真假
    AVR第5课:蜂鸣器
    Solr使用入门指南
    EJB究竟是什么,真的那么神奇吗??
    Android 各个版本号WebView
    android SQLite 使用实例
    BackTrack5 (BT5)无线password破解教程之WPA/WPA2-PSK型无线password破解
    腾讯QQ企业邮箱POP3/SMTP设置
    【LeetCode】Substring with Concatenation of All Words
    PreferenceFragment 使用 小结
  • 原文地址:https://www.cnblogs.com/huaobin/p/14892029.html
Copyright © 2011-2022 走看看