@Required 注释应用于 bean 属性的 setter 方法,它表明受影响的 bean 属性在配置时必须放在 XML 配置文件中,否则容器就会抛出一个 BeanInitializationException 异常。
    案例代码:
    Person.java

    1. package com.baklib.custom;
    2. import org.springframework.beans.factory.annotation.Required;
    3. public class Person {
    4. private String name;
    5. private int age;
    6. public String getName() {
    7. return name;
    8. }
    9. @Required
    10. public void setName(String name) {
    11. this.name = name;
    12. }
    13. public int getAge() {
    14. return age;
    15. }
    16. @Required
    17. public void setAge(int age) {
    18. this.age = age;
    19. }
    20. }

    MainApp.java

    1. package com.baklib.custom;
    2. import org.springframework.context.ApplicationContext;
    3. import org.springframework.context.support.ClassPathXmlApplicationContext;
    4. public class MainApp {
    5. public static void main(String[] args) {
    6. ApplicationContext context = new ClassPathXmlApplicationContext("Beans.xml");
    7. Person p = (Person) context.getBean("person");
    8. System.out.println("Name : "+p.getName());
    9. System.out.println("Age : "+p.getAge());
    10. }
    11. }

    配置文件 Beans.xml

    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <beans xmlns="http://www.springframework.org/schema/beans"
    3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    4. xmlns:context="http://www.springframework.org/schema/context"
    5. 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">
    6. <context:annotation-config />
    7. <bean id="person" class="com.baklib.custom.Person">
    8. <property name="name" value="张三"/>
    9. <property name="age" value="20"/>
    10. </bean>
    11. </beans>

    基于注释进行配置时,需要增加 beans 的属性 xmlns:context=”http://www.springframework.org/schema/context
    还需要在 xsi:schemaLocation 中添加 http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd 在 beans 内部添加

    编写完以上代码,就可以运行这个程序,运行结束后,可以在控制台看到下面的信息

    1. Name : 张三
    2. Age : 20