我对 IBatis/Mybatis 以及 ORM 和 Java 总体来说是新手。 我有一个 java 映射器接口(interface)和相应的映射器 xml。查询方法应返回的域对象类型称为 SourceStatus。该对象包含多个属性和 getter/setter 等。我实际上只想填充 SourceStatus 域对象的日期字段。我是否正确连接了 mybatis 映射器文件?
包含方法定义的 Java Mapper 文件:
public interface SupportSourceStatusMapper extends TPBMapper {
SourceStatus getSupportStatus();
}
MyBatis XML 映射器文件:
<mapper namespace="com.dealersInc.dao.mapper.SupportSourceStatusMapper">
<select id="getSupportStatus" resultType="Date">
SELECT MAX(s_valid_frm_dat)
FROM deals.supports_contracts
</select>
</mapper>
SourceStatus 域对象:
public class SourceStatus
{
private long contextKey;
private String serviceName;
private String contextName;
private String contextRunType;
private String contextLabel;
private String contextStatus;
private Date cobDate;
getters/setters ()....
}
预先感谢您提供的任何帮助。
最佳答案
您可以为 SourceStatus 指定别名,但为了简单起见,指定完全限定的类名就足够了。请注意,列名称映射到 SourceStatus 属性名称:
<select id="getSupportStatus" resultType="com.dealersInc.domain.SourceStatus">
SELECT MAX(s_valid_frm_dat) AS cobDate
FROM deals.supports_contracts
</select>
关于java - mybatis查询中需要返回SINGLE列Date值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21393747/