1

引数のないコンストラクターを持たない Bean を Spring にインスタンス化させるにはどうすればよいですか? 私は(xml-configではなく)java-configを使用しています。XML を使用して動作するようですが、何らかの形で注釈を使用して同じことを行うことはできませんか?

チュートリアルから直接、次の例は xml-config と同等です。

<bean id="exampleBean" class="examples.ExampleBean">
    <constructor-arg index="0" value="7500000"/>
    <constructor-arg index="1" value="42"/>
</bean>

また、私が使用しようとした @ConstructorProperties アノテーションの使用についても言及していますが、機能させることはできません。BeanInstantiationException が発生し続けます。

4

4 に答える 4

0

別のSO記事@Autowiredのように、で使用できますか?@Qualifier

于 2012-10-09T15:19:16.087 に答える
0

以下のリンクからも http://docs.oracle.com/javase/6/docs/api/java/beans/ConstructorProperties.html

私が理解したことは、@ConstructorProperties アノテーションを xml-config の代わりとして使用しないことです。

于 2012-10-09T15:12:43.490 に答える
0

@Autowired または @Inject を使用できます

于 2012-10-09T16:53:29.170 に答える
0
@Configuration
public class MyConfiguration {

    @Bean
    public ExampleBean exampleBean() {
        return new ExampleBean(7500000, 42);
    }
}

または:

@Configuration
@PropertySource(value = { "my.properties" })
public class MyConfiguration {

    @Value("{prop.value1}")
    private int value1;
    @Value("{prop.value2}")
    private int value2;

    @Bean
    public ExampleBean exampleBean() {
        return new ExampleBean(value1, value2);
    }
}
于 2012-10-09T17:21:21.087 に答える