我正在调查Jooq并且发现了一些我可以找到很少文档的东西 - 没有一个能够诚实地回答我的问题。
我想要做的是在表格中添加一列 权限变化位(2000)(Postgres 9.5 +)
Jooq对此做了什么,是将它视为varchar ......即使在生成时这显然是不正确的。在这样的事情上成功的最短途径是什么。
答案 0 :(得分:1)
我不确定将PostgreSQL的"bit string"类型映射到java.lang.String
的设计决策是什么。我甚至不排除对即使他们称为"位字符串" 这一事实的疏忽,他们也不是真正的字符串。
我怀疑代表这个的最合适的Java类型是BitSet
。因此,您理想的前进方式是实现data type binding形式:
public class VaryingBitBinding extends Binding<String, BitSet> {
// ...
}
并在JDBC级别实现它。然后,您可以将此绑定挂钩到代码生成器中:
<forcedType>
<userType>java.util.BitSet</userType>
<binding>com.example.VaryingBitBinding</binding>
<types>varying\ bit</types>
</forcedType>