我使用mybatis和xml映射。它发生了,在我的数据库中,我必须以字符串格式存储布尔值,如:" Y" /" N"。在我的java代码中,我有很多行,比如setValue( someBooleanValue ? "Y" : "N" );
有没有办法存储布尔值,然后所有这些值转换为" Y" :" N" ?也许我可以定义转换的方法或功能?
有任何想法吗?
感谢
答案 0 :(得分:2)
您需要使用TypeHandlers。
每当MyBatis在PreparedStatement上设置参数或检索时 ResultSet中的值,TypeHandler用于检索值 以适合Java类型的方式。
您可以覆盖类型处理程序或创建自己的处理程序 不支持或非标准类型。为此,请实现该接口 org.apache.ibatis.type.TypeHandler或扩展便利类 org.apache.ibatis.type.BaseTypeHandler并可选择将其映射到JDBC 类型。
可以找到更完整的示例here。