1

guice で次のことをどのように行いますか?

XmlSerializerインターフェイスに依存するクラスがありますXmlFormatter。と の 2 つの実装がありXmlFormatterます。CompactXmlFormatterPrettyXmlFormatter

別のクラスMyApplicationは の 2 つのインスタンスに依存しますXmlSerializer。1 つのインスタンスを で構成し、もう 1 つのインスタンスを構成する必要がありますCompactXmlFormatterPrettyXmlFormatter

public class XmlSerializer {
    public XmlSerializer(XmlFormatter formatter) {
       ...
    }
}

public interface XmlFormatter {
    ...
}

public class CompactXmlFormatter implements XmlFormatter {
    ...
}

public class PrettyXmlFormatter implements XmlFormatter {
    ...
}

public class MyApplication {
    public MyApplication(XmlSerializer compactSerializer, XmlSerializer prettySerializer) {
        ...
    }
}

このようなグラフをどのように作成しますか?

2 つのインスタンスを取得したら、XmlSerializerそれらを注入するには、コンストラクターMyApplicationのパラメーターに注釈が必要であることを知っています。MyApplication

XmlFormatterとの両方にどのようにバインドするのかにもっと興味がありCompactXmlFormatterますPrettyXmlFormatter

4

1 に答える 1