【问题标题】:No qualifying bean of type [] is defined没有定义 [] 类型的限定 bean
【发布时间】:2018-07-25 01:22:19
【问题描述】:

我刚开始学习 Spring 并尝试制作一个基本的 Spring 程序,但我无法解决这个错误。下面是代码:

Student.java

@Component
public class Student {
private String name;

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}
}

配置类

@Configuration
@ComponentScan("springfirst1")

public class ConfigClass {
public Student getStudent(){
    return new Student();
}
}

主类

public class SpringFirst1 {

public static void main(String[] args) {
    ApplicationContext context = new AnnotationConfigApplicationContext("ConfigClass.class");
    Student s1 = context.getBean(Student.class);
    s1.setName("Adam");
    System.out.println(s1.getName());
}       

}

错误:

Exception in thread "main" org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [springfirst1.Student] is defined
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:318)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:985)
at springfirst1.SpringFirst1.main(SpringFirst1.java:13)

【问题讨论】:

  • 使用包声明更新 Java 类。调试问题会很有帮助
  • 错误在 AnnotationConfigApplicationContext 参数中。检查文档并更正它,这将起作用。

标签: java spring spring-mvc


【解决方案1】:
    public Student getStudent(){
        return new Student();
    }

如果你把 @Component 放在你的类上面,这不是必需的:

如果你想使用java配置你必须把@Bean放在上面:

@Bean
public Student getStudent(){
  return new Student();
 }

编辑:检查 Arun 答案:-)

【讨论】:

    【解决方案2】:

    ApplicationContext 参数的更改将解决此问题。

    主类

    public class SpringFirst1 {
    
    public static void main(String[] args) {
        ApplicationContext context = new AnnotationConfigApplicationContext(ConfigClass.class);
        Student s1 = context.getBean(Student.class);
        s1.setName("Gaurav");
        System.out.println(s1.getName());
    } 
    

    【讨论】:

      猜你喜欢
      • 2016-06-28
      • 2016-01-12
      • 2013-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多