当前位置: 首页 > 知识库问答 >
问题:

如何为类编写@bean?[副本]

孟意致
2023-03-14

下面是我的员工课。如果我在第1行、第2行或第3行编写@bean注释,它会抛出一个错误。

它只允许对方法名使用@bean注释。为什么?

    import org.springframework.context.annotation.Bean;

    //line 1
    public class Employee {

        int id;
        String name;

        // line 2
        public Employee(int id, String name) {
            this.id = id;
            this.name = name;
        }

        //line 3
        public Employee() {
        }

        @Bean
        public void showCurrentEmployee() {
            System.out.println(this.id + " " + this.name);
        }

    }
<bean name="emp" class="com.myProj.Employee"> 
<property name="id"> 
      <value>20</value> 
</property> 
<property name="name"> 
      <value>John</value> 
</property> 
</bean> 

共有1个答案

卫开济
2023-03-14

@bean注释只能在Spring配置类中使用。这些类应该使用@Configuration注释进行注释

对于属性注入,@value注释可能会有所帮助。

@Configuration
public class ConfigClass {
   @Bean
   public BeanClassOne beanOne(@Value("20") Integer intValue) {
      return new BeanClassOne(intValue);
   }

   @Bean
   public BeanClassTwo beanTwo() {
      return new BeanClassTwo();
   }

   @Bean
   public BeanClassThree beanThree() {
      return new BeanClassThree();
   }
}

另一种从类中生成Spring bean并使用@service或@component annotation对其进行注释的方法

@Service
public class BeanClass {

    @Value("String value")
    privat String strField;
    // your bean methods
}

更多信息请访问https://www.tutorialspoint.com/spring/spring_java_based_configuration.htm

 类似资料:
  • 我正在我的web应用程序中实现Spring SAML,该应用程序已经实现了Spring Security,因此我现在有两个身份验证管理器。由于spring总是引用最后声明的authenticationManager,我找到了将一个authentitionManager定义为bean的解决方案。 以下是我在转换为bean之前的AuthenticationManager: 以下是我转换为bean后的代

  • 一些背景知识,以防我为实际想要实现的目标解决了错误的问题:我的目标是编写一个函数: 它检查和是否具有相同的类型并相等,然后返回提供的(我们当时知道它与相同--T可能不是内射的,但它是一个函数!)或,否则。 我已经找到了一个解决办法,将违规的包装在中,使用,然后再次打开包装: 这种解决方法是完全可以接受的,但我希望去掉虚假的类型。

  • 我一直在学习使用Jest库编写JavaScript/TypeScript代码的单元测试。下面是一个我不知道如何处理的例子。它是用TypeScript输入的——只有两个公共方法和一个构造函数需要service1参数。 我想我需要测试两种情况: > 如果 函数为空。我没有在代码中看到它的任何实现,也不知道它是如何工作的。我应该把它作为参数传递给这个类的实例吗? 我很困惑,在这个特定的例子中,我应该使用

  • 我想写一个小游戏,我可以用W,a,S,D键在JavaFX面板上移动一个球 我有一个和但是我不知道如何编写一个,如果我按D,它将计算。 我必须做什么?

  • 问题内容: 我正在尝试为我的简单类生成hashCode()方法,但是我什么也没用。我将不胜感激任何帮助。我已经实现了equals()方法,该方法如下所示,并且还想知道是否需要实现compareTo()方法。我已经导入了java.lang.Character以使用character.hashCode(),但它似乎不起作用。 提前致谢… 正在给我java.lang.Comparable转换错误的com

  • 有人能给我解释一下如何为下面这样的apex触发器编写测试类吗? 我是Salesforce的新手。有人帮助我如何为上述触发器编写顶点类(测试类)吗? AccountBrowseExtensionTesttestAccountBrowseSystem。DmlException:插入失败。第0行第一个异常;第一个错误:FIELD\u CUSTOM\u VALIDATION\u EXCEPTION,Cit