2016-11-25 54 views
1

我正在寻找Jooq,并且发现了一些我可以找到很少文档的东西 - 没有一个真正能够真正回答我的问题。Jooq Postgres变化位

我想要做的是能有像 权限不同位(2000年)(Postgres的9.5+)

什么Jooq与然而,这,就是看它作为一个varchar表中的一列..即使在世代,这显然是不正确的。在这样的事情上取得成功的最短路径是什么?

+0

感谢您的问题。我已经删除了Kotlin的一部分,因为它不是问题的一部分,也不适合堆栈溢出(这是一个避免自以为是的事情的平台)。但请随时在[邮件列表](https://groups.google.com/forum/#!forum/jooq-user)上重新提出问题。我们非常乐意讨论!同时,我会回复你的PostgreSQL'不同位'问题。 –

回答

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> 
+0

感谢Lukas,你认为这件事可以/将来会在未来的JOOQ发行中受到欢迎吗? – user1210708

+0

@ user1210708:是的,在某些时候:https://github.com/jOOQ/jOOQ/issues/5507 –