guice で次のことをどのように行いますか?
XmlSerializerインターフェイスに依存するクラスがありますXmlFormatter。と の 2 つの実装がありXmlFormatterます。CompactXmlFormatterPrettyXmlFormatter
別のクラスMyApplicationは の 2 つのインスタンスに依存しますXmlSerializer。1 つのインスタンスを で構成し、もう 1 つのインスタンスを構成する必要がありますCompactXmlFormatter。PrettyXmlFormatter
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。