このような静的 dozer マッパーを使用すると、同時実行エラーが発生する可能性があるのではないかと考えています。
public static Mapper mapper = new DozerBeanMapper();
public static MyDTO toDTO(MyEntity e) {
MyDTO dto = mapper.map(e, MyDTO.class);
return dto;
}
または、常にこのコードを使用する必要があります:
public static MyDTO toDTO(MyEntity e) {
Mapper mapper = new DozerBeanMapper();
MyDTO dto = mapper.map(e, MyDTO.class);
return dto;
}
このメソッドは JBoss サーバーの @Stateless セッション Bean で使用され、同時にアクセスできます。実際には、Dozer がライブラリ内の静的変数またはインスタンス変数を使用して、静的 Mapper を使用できるかどうか、またはすべての呼び出しで新しいインスタンスを作成する必要があるかどうかを判断するかどうかはわかりません。