mybatisにファクトリメソッドを呼び出して、コンストラクターではなくオブジェクトを作成してもらいたい。null値の属性の場合、実際のオブジェクトの代わりにNULLオブジェクト(すべてのエッジケースを処理するためにオーバーライドされた動作を持つ)を返すことができるようにします。mapper.xmlでそれを達成できますか?
質問する
3102 次
2 に答える
1
独自のObjectFactoryを定義する
http://www.mybatis.org/core/configuration.html#objectFactory
于 2012-05-22T12:57:02.457 に答える
0
あなたの特定の質問に答えるために、私が知る限り、mapper.xmlファイル自体でファクトリメソッドを直接(そして唯一)指定する方法はありません。ただし、MyBatisには、必要なことを実行するための2つのオプションがあります。
- Bhaskarの回答で述べられているように、ObjectFactoryを使用できます。
- 理論的には、TypeHandlerを定義することもできますが、最近のテストではこれを機能させることができませんでした。
MyBatis ObjectFactoryを使用してNullオブジェクトを実装する方法の実際の例を確認したい場合は、MyBatis koansのkoan19を参照してください:https ://github.com/midpeter444/mybatis-koans 。(私が思いついた解決策については、completed-koans / koan19ディレクトリを見てください。)
于 2012-05-28T16:36:02.490 に答える