如何使用commons dbutils生成密钥?

我不明白如何使用commons-dbutils获取自动生成的密钥?

您可以使用QueryRunner#insert() 。 以下是一个例子。 给定一个名为users的表,它具有自动生成的主键列和名为usernamevarchar列,您可以执行以下操作:

 DataSource dataSource = ... // however your app normally gets a DataSource QueryRunner queryRunner = new QueryRunner(dataSource); String sql = "insert into users (username) values (?)"; long userId = queryRunner.insert(sql, new ScalarHandler(), "test"); 

事实上,我认为使用当前版本的common-dbutils无法做到这一点。 几个月前,当我在另一家公司工作时,我用自己的实现扩展了QueryRunner。

该请求已提交给DbUtils项目,在那里你甚至可以找到一个可行的实现,我猜你可以复制它,如果你真的需要它。

https://issues.apache.org/jira/browse/DBUTILS-54