我在我的项目中使用mybaties 3.2.6和AWS Oracle RDS . 对于一个表选择,从表中我得到TimeStamp但在对象端我有String . 到目前为止,我使用TO_CHAR将timeStamp(JDBC端)转换为String(Java端),就像这样 .
SELECT SESSION_ID,
ct.MEMBER_ID as MEMBER_ID ,
ct.KO_MEMBER_ID as KO_MEMBER_ID,
ct.KO_MEMBER_NAME as KO_MEMBER_NAME,
ct.REASON as REASON,
TO_CHAR(ct.TICKET_DTM,'YYYY-MM-DD HH24:MI:SS.FF') as TICKET_DTM,
ct.DATA_TYPE as DATA_TYPE
FROM TICKET ct
WHERE id=#{Id}
fetch first 300 rows only
但是为了避免DB Function绑定问题,我不想再使用TO_CHAR函数了 . 我可以在Java end / mybaties结束时做些什么,比如CustomTypeHandler或类似的东西?在插入时我使用CustomTypeHandler与java类型和Jdbc类型表示法,如...
#{birthday,jdbcType=DATE,javaType=java.lang.String,typeHandler=StringDateTypeHandler}
这适用于插入类型转换......
有没有什么东西可以帮助我在选择时进行类型转换,就像我们有插入一样?
1 回答
您在类型的结果 Map 中can specify
typeHandler
.如果您不为查询使用结果映射,则需要通过在
select
中指定resultMap
属性来引入它,如下所示:还要像这样添加
resultMap
定义: