1

dozer マッピング ファイルの環境変数にアクセスしたいと考えています。方法はありますか?公式ドキュメントを調べたところ、変数の使用法がリストされていました。しかし、それらは環境変数ではありません。また、dozer マッピング ファイルの .property ファイルの値にアクセスする方法はありますか?

4

1 に答える 1

0

最も簡単な方法は、クラスファクトリを使用してクラスの新しいインスタンスを作成し、必要な環境変数を渡すことです。ドキュメントを参照してください。http://dozer.sourceforge.net/documentation/custombeanfactories.html

public class EnvironmentSetterBeanFactory implements BeanFactory {

public Object createBean(Object source, Class<?> sourceClass, String targetBeanId) {

try {
    Class<?> targetClass;
    targetClass = Class.forName(targetBeanId);
    Object instance = targetClass.newInstance()
    if (instance instanceof YourClass) {
        YourClass yourClass = (YourClass) idSource;
        yourClass.setThatVar(System.getenv("myenvvar"));            
    }
    return instance;
} catch (InstantiationException e) {
    throw new RuntimeException(e);
} catch (IllegalAccessException e) {
    throw new RuntimeException(e);
}
    }

} catch (ClassNotFoundException e) {
    throw new RuntimeException(e);
}

}

于 2012-06-15T15:46:25.010 に答える