栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

IOC基于注解创建对象和注入属性与完全注解开发

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

IOC基于注解创建对象和注入属性与完全注解开发

1基于注解创建对象

Spring针对Bean管理中船舰对象提供的注解

@Component @Service @Controller @Repository

第一步引入依赖

引入spring-aop-(版本).RELEASE.jar

第二步开启组件扫描




第三步在类的上面加上注解

//value可以不写,默认是类名称,首字母小写。value可以看成对象的id
@Component(value="book")
public class Book{
    public void add(){
        System.out.println("add");
}
}

第四步进行测试 

public class Test{
    @Test
    public void test(){
        ApplicationContext con=new ClassPathXmlApplicationContext("bean1.xml");
        Book book=con.getBean("book",Book.class);
        book.add();
}
}
2基于注解方式注入属性

@Autowired根据属性类型进行自动装配

@Qualifier根据名称进行注入

@Resource可以根据类型注入也可以根据名称注入

@Value注入普通类型属性

演示@Autowired根据属性类型进行自动装配

图书的属性Infor

@Component(value="infor")
public class Infor{
    public void add(){
        System.out.println("inforadd");
}
}
//value可以不写,默认是类名称,首字母小写
@Component(value="book")
public class Book{
//不需要添加set方法
    @Autowired
    private Info info;
    public void add(){
        System.out.println("add");
}
}
演示@Qualifier根据名称进行自动装配

//value可以不写,默认是类名称,首字母小写
@Component(value="book")
public class Book{
//不需要添加set方法
//要和Autowired一起使用
    @Autowired
    @Qualifier(value="infor")//value的值为Info对象的id
    private Info info;
    public void add(){
        System.out.println("add");
}
}

演示@Resource根据属性类型进行自动装配 

//value可以不写,默认是类名称,首字母小写
@Component(value="book")
public class Book{
    @Resource
    private Info info;
    public void add(){
        System.out.println("add");
}
}

演示@Resource根据名称进行自动装配

  

//value可以不写,默认是类名称,首字母小写
@Component(value="book")
public class Book{
    @Resource(name="info")
    private Info inat;
    public void add(){
        System.out.println("add");
}
}

 演示@value自动装配

//value可以不写,默认是类名称,首字母小写
@Component(value="book")
public class Book{
    @Value(value="spring")
    private String bname;
    @Resource(name="info")//name的值为Info对象的id
    private Info inat;
    public void add(){
        System.out.println("add");
}
}
3完全注解开发不写配置文件

新建一个配置类代替xml

@Configuration//作为配置类代替xml文件
@ConfigurationScan(basePackage={"com.spring"})
public class Confi{
    
}

编写测试代码 

public class Test(){
    public void test(){
        ApplicationContext con=new AnnotationConfigApplicationContext(Confi.class);//加载配置类
        Book book=con.getBean("book",Book.class);
        System.out.println(book);
}
}

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/697579.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号