4

コンストラクター引数を介して注入される MongoDB クライアント メンバーを持つクラスがあります。

public class MyDAO {

    private MongoClient mongoClient;

    public MyDAO(MongoClient mongoClient) {
        this.mongoClient = mongoClient;

        /*mongoClient = new MongoClient("localhost", 27017);*/   //This would be the way without using DI.

    }
}

私の Bean 構成ファイル bean.xml は次のとおりです。

<bean id="myDao" class="com.example.MyDAO">
        <constructor-arg ref="mongo" />
</bean>

<bean id="mongo" class="com.mongodb.MongoClient">
        <property name="host" value="localhost" />
        <property name="port" value=27017 />
</bean>

しかし、次のような bean.xml のエラー メッセージが表示されました。

No setter found for property 'port' in class 'com.mongodb.MongoClient'

MongoDB のJavadocから、クラスにはセッター メソッドとプロパティMongoClientがありません。では、この Mongo Bean に値を注入するにはどうすればよいでしょうか。hostport

4

2 に答える 2