我正在使用 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




