@Resource和@Autowired
来源:互联网 发布:运动控制卡编程 编辑:程序博客网 时间:2024/06/10 09:13
user.java
package com.pactera.springBean;import javax.annotation.PostConstruct;import javax.annotation.PreDestroy;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Lazy;import org.springframework.stereotype.Component;@Component("user")//对象user加入IOC容器,id为user@Lazy(true)//一旦指定懒加载,注解value默认时truepublic class User { public User(){ System.out.println("创建 user "); } private String name="liuqi"; private int age=18; @Autowired //根据类型去容器中查找,如果容器中有多个同类型的对象,会抛出异常 。@Resource有两个属性name ,type //1指定name和type会根据名称和类型去找唯一的对象2.指定name会去根据id查找3.指定type会根据类型查找 //4.都不指定会先根据名称查找,没找到再根据类型查找,当有多个同类型时会抛出异常 private String address; public void setName(String name) { this.name = name; } @PostConstruct //初始化方法 public void initUser(){ System.out.println("init user"); } @PreDestroy //销毁容器对象的时候自动调用 public void destoryUser(){ System.out.println("destory user"); } @Override public String toString() { return "User [name=" + name + ", age=" + age + ", address=" + address + "]"; }}
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation= "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <bean id="address" class="java.lang.String"> <constructor-arg value="上海"></constructor-arg> </bean> <!-- <bean id="address2" class="java.lang.String"> <constructor-arg value="上海"></constructor-arg> </bean> --> <!-- 扫描包,将配有指定注解的类注入容器 --> <context:component-scan base-package="com.pactera"></context:component-scan></beans>
测试
package com.pactera.springBeanTest;import org.junit.Test;import org.springframework.context.support.ClassPathXmlApplicationContext;import com.pactera.springBean.User;public class TestSpringBean { @Test public void testIOC(){ ClassPathXmlApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); User user = ac.getBean("user", User.class); System.out.println(user); ac.destroy(); }}
0 0
- @Autowired和@Resource
- @autowired 和@resource区别
- @Autowired和@Resource区别
- @Resource和@Autowired区别
- @Resource和@Autowired对比
- @Autowired和@Resource装配
- @Resource和@Autowired
- @Resource和@Autowired对比
- @Resource和@Autowired区别
- @Autowired 和 @Resource 区别
- @Autowired和@Resource
- @Resource和@Autowired
- @Autowired和@Resource注解
- @Resource和@Autowired区别
- @autowired和@Resource
- 注解 @Resource和@Autowired
- @Autowired 和 @Resource 区别
- @Resource和@Autowired
- OpenSSL ECC 算法
- 在intellij idea中使用mybatis插件产生dao、model
- 为什么大多服务器用LinuxX系统
- 产生多路不同频率方波
- 131. Palindrome Partitioning(unsolved)
- @Resource和@Autowired
- Form content types(表单内容类型)--application/x-www-form-urlencoded和multipart/form-data
- Oracle视图,序列,索引,约束
- 大数据学习心得
- hibernate持久化数据实例解析
- 水池的数目
- 无法对ClientDataSet.XMLData进行赋值
- 互联网协议入门(二)
- c++ 由类型转换引起的指针偏移