構成ファイルでクラスを指定できる方法と、コンストラクターに渡す必要があるパラメーターを見つけようとしています。
たとえば、次の XML 構成ファイルがあるとします。
<AuthServer>
<Authenticator type="com.mydomain.server.auth.DefaultAuthenticator">
<Param type="com.mydomain.database.Database" />
</Authenticator>
</AuthServer>
今、私のJavaコードで、次のことをしたいです:
public class AuthServer {
protected IAuthenticator authenticator;
public AuthServer(IAuthenticator authenticator) {
this.authenticator = authenticator;
}
public int authenticate(String username, String password) {
return authenticator.authenticator(username, password);
}
public static void main(String[] args) throws Exception {
//Read XML configuration here.
AuthServer authServer = new AuthServer(
new DefaultAuthenticator(new Database()) //Want to replace this line with what comes from the configuration file.
);
}
}
もちろん、XML を読み取って値を取得することはできますが、XML 構成ファイルの値を含むコメントで上記の行をエミュレートする方法がわかりません (置き換えたい...)。このようなことをする方法はありますか?