当前位置: 首页 > 科技观察

Spring系列Bean注解的使用介绍

时间:2023-03-13 17:49:02 科技观察

今天给大家介绍一下Spring中Bean注解的用法,后续文章会为大家介绍Spring的其他注解用法。希望对您的日常工作有所帮助!1、首先创建一个maven项目,引入spring依赖org.springframeworkspring-context5.3.92。新建person.java实体类包com.spring.bean;公共类Person{私有字符串名称;私人整数年龄;私有字符串地址;publicPerson(Stringname,Integerage,Stringaddress){this.name=name;这个。年龄=年龄;this.address=地址;}publicPerson(){}publicStringgetName(){返回姓名;}publicvoidsetName(Stringname){this.name=name;}publicIntegergetAge(){返回年龄;}publicvoidsetAge(Integerage){this.age=age;}publicStringgetAddress(){返回地址;}publicvoidsetAddress(Stringaddress){this.address=address;}@OverridepublicStringtoString(){return"Person{"+"name='"+name+'\''+",age='"+age+'\''+",地址='"+地址+'\''+'}';}}3.新建配置类TestBeanConfig.javapackagecom.spring.config;importcom.spring.bean.Person;importorg.springframework.context.annotation.Bean;importorg.springframework.context.annotation.Configuration;@ConfigurationpublicclassTestBeanConfig{/*@Bean是注册一个bean,type是返回值的类型,默认是用方法名作为id,可以自己定义*value可以自定义id,默认一样作为方法名**/@Bean(value="person1")publicPersonperson(){returnnewPerson("小王",35,"北京");}}4、资源创建配置文件5.新建一个测试类TestBean.java,具体展示实例注解和配置方法包com.spring.test;importcom.spring.bean。人;导入com.spring.config.TestBeanConfig;导入org.springframework.context.annotation.AnnotationConfigApplicationContext;导入org.springframework.context.support.ClassPathXmlApplicationContext;公共类TestBean{publicstaticvoidmain(String[]args){//配置文件方法ClassPathXmlApplicationContextapplicationContext=newClassPathXmlApplicationContext("person.xml");Personbean=(Person)applicationContext.getBean("person");System.out.println("Configurationmethod:");System.out.println(bean);//注解方法AnnotationConfigApplicationContext注解方式获取spring容器AnnotationConfigApplicationContextannotationContext=newAnnotationConfigApplicationContext(TestBeanConfig.class);PersonannotationPerson=(Person)annotationContext.getBean("person1");System.out.println("Annotationmethod:");System.out.println(annotationPerson);//用于获取指定类型的所有JavaBeans的名称Spring容器String[]beanNamesForType=annotationContext.getBeanNamesForType(Person.class);for(Stringitem:beanNamesForType){System.out.println(item);}}}6.运行效果: