一尘不染

配置休眠(使用JPA)以将Y / N存储为布尔类型(而不是0/1)

hibernate

我可以设置JPA
/hibernate将Boolean类型持久化为Y/N吗?在数据库中(该列定义为varchar2(1)。当前将其存储为0/1。数据库为Oracle。


阅读 267

收藏
2020-06-20

共1个答案

一尘不染

我弄清楚如何执行此操作的唯一方法是为类提供两个属性。一个作为编程API的布尔值,不包含在映射中。它的getter和setter引用一个私有字符变量Y /
N。然后,我有另一个受保护的属性,它包含在hibernate映射中,它的getter和setter直接引用私有char变量。

编辑:正如已经指出的那样,还有直接内置于Hibernate中的其他解决方案。我留下这个答案是因为它可以在您处理的旧字段不适用于内置选项的情况下使用。最重要的是,这种方法不会造成严重的负面影响。

2020-06-20