我有一张约200个左右的表。我想知道使用Jooq将这些数据插入MySQL的最佳方法。
现在,我在我的程序中使用POJO来处理/转换我的数据。我的问题是,据我所知,如果我想创建一个POJO,我必须调用.set {column name}。我没有可以在我的POJO上调用的通用.set方法,例如:.set(column,value)。
在任何人说出来之前,我会很乐意为200列做很长的路,但是我还有大约十个相似大小的表,我也需要这样做,所以这很难维护。
所以我的问题是双重的:
我对POJO api的理解是否正确?我查看了配置,但我看不到任何可能对我有帮助的内容。
在POJO之外最简单的方法是什么?我最好的想法是使用记录
Record test = conn.newRecord(table);
Field<Object> field1 = field(name(table,col));
test.set(field1, 10);
但我不知道这是否是正确的做法(如果这会让我感到悲伤)。
答案 0 :(得分:0)
如果用“POJO”表示jOOQ生成的POJO,那么确实没有set(column, value)
方法,因为这不是你对经典POJO(或JavaBean)的期望。然而,jOOQ的记录(正如你所注意到的)确实有这些方法。记录还支持一次设置多个值,例如来自Map
或来自数组。有关详细信息,请参阅Record.from(Object)
方法。
换句话说,您对记录的使用对于jOOQ来说是惯用的。我不知道这会如何导致“悲伤”。