最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

【Spring】使用注解装配bean

维修 admin 83浏览 0评论

【Spring】使用注解装配bean

目录

使用注解的两个必要步骤

正文

Cat

Dog

Animal

 beans.xml

 测试

@Qualifier


使用注解的两个必要步骤

1.导入约束

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns=""xmlns:xsi=""xmlns:context=""xsi:schemaLocation=" ://www.springframework/schema/beans/spring-beans.xsd://www.springframework/schema/context/spring-context.xsd"></beans>

2.配置注解的支持 

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns=""xmlns:xsi=""xmlns:context=""xsi:schemaLocation=" ://www.springframework/schema/beans/spring-beans.xsd://www.springframework/schema/context/spring-context.xsd"><context:annotation-config/>
</beans>

 <context:annotation-config/>     //配置注解的支持

正文

Cat

package org.example;public class Cat {public void eat(){System.out.println("猫吃鱼干");}
}

Dog

package org.example;public class Dog {public  void sleep(){System.out.println("小狗睡大觉");}
}

Animal

package org.example;import org.springframework.beans.factory.annotation.Autowired;public class Animal {@Autowiredprivate Cat cat;@Autowiredprivate Dog dog;public Cat getCat() {return cat;}public void setCat(Cat cat) {this.cat = cat;}public Dog getDog() {return dog;}public void setDog(Dog dog) {this.dog = dog;}@Overridepublic String toString() {return "Animal{" +"cat=" + cat +", dog=" + dog +'}';}
}

注意:要加上自动装配注解

 

set方法可以去掉也可以不用去掉

去掉的话如下图

package org.example;import org.springframework.beans.factory.annotation.Autowired;public class Animal {@Autowiredprivate Cat cat;@Autowiredprivate Dog dog;public Cat getCat() {return cat;}public Dog getDog() {return dog;}@Overridepublic String toString() {return "Animal{" +"cat=" + cat +", dog=" + dog +'}';}
}

 

 beans.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns=""xmlns:xsi=""xmlns:context=""xsi:schemaLocation=" ://www.springframework/schema/beans/spring-beans.xsd://www.springframework/schema/context/spring-context.xsd"><context:annotation-config/><bean id="cat" class="org.example.Cat" /><bean id="dog" class="org.example.Dog" /><bean id="animal" class="org.example.Animal" /></beans>

 测试

package org.example;import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class Test9 {public static void main(String[] args) {ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");Animal animal=(Animal) context.getBean("animal");animal.getCat().eat();animal.getDog().sleep();}
}

 

@Qualifier

与注解@Autowired配合使用

 

<bean id="cat111" class="org.example.Cat" />
<bean id="cat222" class="org.example.Cat" />
<bean id="cat333" class="org.example.Cat" />

如果有多个关于cat的bean的话,使用@Qualifier可以显式指定哪一个bean注入,

 

 

 

【Spring】使用注解装配bean

目录

使用注解的两个必要步骤

正文

Cat

Dog

Animal

 beans.xml

 测试

@Qualifier


使用注解的两个必要步骤

1.导入约束

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns=""xmlns:xsi=""xmlns:context=""xsi:schemaLocation=" ://www.springframework/schema/beans/spring-beans.xsd://www.springframework/schema/context/spring-context.xsd"></beans>

2.配置注解的支持 

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns=""xmlns:xsi=""xmlns:context=""xsi:schemaLocation=" ://www.springframework/schema/beans/spring-beans.xsd://www.springframework/schema/context/spring-context.xsd"><context:annotation-config/>
</beans>

 <context:annotation-config/>     //配置注解的支持

正文

Cat

package org.example;public class Cat {public void eat(){System.out.println("猫吃鱼干");}
}

Dog

package org.example;public class Dog {public  void sleep(){System.out.println("小狗睡大觉");}
}

Animal

package org.example;import org.springframework.beans.factory.annotation.Autowired;public class Animal {@Autowiredprivate Cat cat;@Autowiredprivate Dog dog;public Cat getCat() {return cat;}public void setCat(Cat cat) {this.cat = cat;}public Dog getDog() {return dog;}public void setDog(Dog dog) {this.dog = dog;}@Overridepublic String toString() {return "Animal{" +"cat=" + cat +", dog=" + dog +'}';}
}

注意:要加上自动装配注解

 

set方法可以去掉也可以不用去掉

去掉的话如下图

package org.example;import org.springframework.beans.factory.annotation.Autowired;public class Animal {@Autowiredprivate Cat cat;@Autowiredprivate Dog dog;public Cat getCat() {return cat;}public Dog getDog() {return dog;}@Overridepublic String toString() {return "Animal{" +"cat=" + cat +", dog=" + dog +'}';}
}

 

 beans.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns=""xmlns:xsi=""xmlns:context=""xsi:schemaLocation=" ://www.springframework/schema/beans/spring-beans.xsd://www.springframework/schema/context/spring-context.xsd"><context:annotation-config/><bean id="cat" class="org.example.Cat" /><bean id="dog" class="org.example.Dog" /><bean id="animal" class="org.example.Animal" /></beans>

 测试

package org.example;import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class Test9 {public static void main(String[] args) {ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");Animal animal=(Animal) context.getBean("animal");animal.getCat().eat();animal.getDog().sleep();}
}

 

@Qualifier

与注解@Autowired配合使用

 

<bean id="cat111" class="org.example.Cat" />
<bean id="cat222" class="org.example.Cat" />
<bean id="cat333" class="org.example.Cat" />

如果有多个关于cat的bean的话,使用@Qualifier可以显式指定哪一个bean注入,

 

 

 

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论