是否可以将值从布尔值转换为" Y" /" N"当我们保存或更新时

时间:2016-03-01 07:50:15

标签: java mapping mybatis spring-mybatis

我使用mybatis和xml映射。它发生了,在我的数据库中,我必须以字符串格式存储布尔值,如:" Y" /" N"。在我的java代码中,我有很多行,比如setValue( someBooleanValue ? "Y" : "N" );有没有办法存储布尔值,然后所有这些值转换为" Y" :" N" ?也许我可以定义转换的方法或功能? 有任何想法吗? 感谢

1 个答案:

答案 0 :(得分:2)

您需要使用TypeHandlers

  

每当MyBatis在PreparedStatement上设置参数或检索时   ResultSet中的值,TypeHandler用于检索值   以适合Java类型的方式。

     

您可以覆盖类型处理程序或创建自己的处理程序   不支持或非标准类型。为此,请实现该接口   org.apache.ibatis.type.TypeHandler或扩展便利类   org.apache.ibatis.type.BaseTypeHandler并可选择将其映射到JDBC   类型。

可以找到更完整的示例here