我希望mybatis调用工厂方法来创建对象而不是构造函数。因此,对于null值属性,我可以返回一个NULL对象(它具有覆盖行为以处理所有边缘情况)而不是实际对象。我能用mapper.xml实现吗?
答案 0 :(得分:1)
定义您自己的ObjectFactory
http://www.mybatis.org/core/configuration.html#objectFactory
答案 1 :(得分:0)
要回答您的具体问题,据我所知,无法直接(并且仅)在mapper.xml文件中指定工厂方法。但是,MyBatis中有两个选项可以执行您想要的操作:
如果您想查看如何使用MyBatis ObjectFactory实现Null对象的实例,请参阅MyBatis koans的koan19:https://github.com/midpeter444/mybatis-koans。 (查看完成的koans / koan19目录,了解我提出的解决方案。)