博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring注解第01课 @Configuration、@Bean
阅读量:7261 次
发布时间:2019-06-29

本文共 2705 字,大约阅读时间需要 9 分钟。

一、原始的 xml配置方式

1.Spring pom 依赖 

org.springframework
spring-context
4.1.2.RELEASE

2.JavaBean

public class Person {    private String name;        private Integer age;     public Person() {    }     public Person(String name, Integer age) {        this.name = name;        this.age = age;    }     public String getName() {        return name;    }     public void setName(String name) {        this.name = name;    }     public Integer getAge() {        return age;    }     public void setAge(Integer age) {        this.age = age;    }     @Override    public String toString() {        return "Person [name=" + name + ", age=" + age + "]";    }}

3.beans.xml 

4.测试类

import org.springframework.context.support.ClassPathXmlApplicationContext;import com.atguigu.bean.Person; public class Test {     public static void main(String[] args) {        ClassPathXmlApplicationContext beans = new ClassPathXmlApplicationContext("beans.xml");        Person p = (Person)beans.getBean("person");        System.out.println(p);     } }

二、注解的形式

1. @Configuration替代beans.xml,@Bean 替代<bean>

package com.atguigu.config; import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.ComponentScan;import org.springframework.context.annotation.Configuration;import org.springframework.context.annotation.FilterType;import org.springframework.context.annotation.ComponentScan.Filter;import org.springframework.context.annotation.ComponentScans; import com.atguigu.bean.Person; //配置类==配置文件@Configuration  //告诉Spring这是一个配置类public class MainConfig {    //给容器中注册一个Bean;类型为返回值的类型,id默认是用方法名作为id    @Bean("person")    public Person person01(){        return new Person("lisi", 20);    } }

2.测试用例

package com.atguigu;import org.springframework.context.ApplicationContext;import org.springframework.context.annotation.AnnotationConfigApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import com.atguigu.bean.Person;import com.atguigu.config.MainConfig; public class MainTest {        @SuppressWarnings("resource")    public static void main(String[] args) {                ApplicationContext applicationContext = new AnnotationConfigApplicationContext(MainConfig.class);        Person bean = applicationContext.getBean(Person.class);        System.out.println(bean);                String[] namesForType = applicationContext.getBeanNamesForType(Person.class);        for (String name : namesForType) {            System.out.println(name);        }    }}

 

转载于:https://www.cnblogs.com/guchunchao/p/9691493.html

你可能感兴趣的文章
MySQL初始化出错(please install the following Perl modules before executing)
查看>>
Thrift原理分析(二)协议和编解码
查看>>
自己动手开发调试器 01
查看>>
nodejs的事件处理机制以及事件环机制
查看>>
重新上路
查看>>
TeaWeb v0.0.9 发布,统计底层优化、主机监控功能改进
查看>>
在计算机中安装Manjaro
查看>>
mac版QQ聊天信息备份与导出方法
查看>>
硬盘 SMART 检测参数详解[转]
查看>>
linux下svn的常用操作命令总结
查看>>
【网管必备技巧:如何跟踪IP地址】
查看>>
2017第四届中国国际大数据大会成功召开
查看>>
锐捷网络连续入围中国联通交换机路由器集采
查看>>
virtualbox vboxmanage命令
查看>>
偶然发现的一个贝赛尔曲线绘制算法
查看>>
VMware环境虚拟机快照操作最佳实践
查看>>
Windbg内核调试之二: 常用命令
查看>>
saltstack (3) grains 与 pillar
查看>>
shell 整理(27)===大小写字母替换修改文件名
查看>>
centos 安装 svn
查看>>