我正在使用 MyBatis 将类实例写入 MySQL 数据库

// I have no control over how this java class is laid out -.- 
class Hello { 
    boolean isFriendly 
} 

我的 MyBatis Mapper 是这样的

<insert id="doHello" parameterType="Hello"> 
    insert into hello_table ( 
        is_friendly   --this is a varchar(1) btw 
    ) 
    values ( 
      #{isFriendly} 
    ) 
 </insert> 

问题是它将值作为 0 或 1 插入到数据库中,但我需要将其作为“N”或“Y” 而且我没有修改 java 的选择

我正在努力使我的代码尽可能少,理想情况下我想将东西添加到 Mybatis Mapper 中

我试过类似的东西

 #{isFriendly,jdbcType=Boolean} 

但是没有成功

请您参考如下方法:

MyBatis typeHandler 是一个合适的方法。

您可以实现一个类型处理程序,然后在任何 sql 语句中使用它:

#{isFriendly, typeHandler=YesNoBooleanTypeHandler}

有关详细信息,请参阅 MyBatis Java Boolean to Sql enum


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!