如何将数据库值填充到现有的对象模型中



我已经有了一个模型实例,它是一个基本的POJO,我如何使用dbutils通过调用与表列名匹配的setter来填充它(通过发出SELECT)?

所以BasicRowProcessor应该匹配,我只是找不到合适的类/方法来调用对象作为参数。

我只想设置一个实例,而不是数组。

我不确定我是否理解你的问题。一些源代码会有所帮助。

有很多库执行ORM。有关一些ORM项目,请参阅源代码锻造。其中一个是我创造的sormula。有关它的最简单用法,请参阅POJO zero-config示例。

您所能做的就是

YourObject result = new BasicRowProcessor().toBean(yourResultSet,YourObject.class);

不过它将创建实例。此API的设计目的不是允许您修改已存在的对象。

如果你真的需要更新现有的对象,你可以实现一个YourObject.copy(YourObject obj)方法,并用BasicRowProcessor.toBean的结果来调用它,但它看起来很难看。

另一个(也是丑陋的)解决方案是实现BeanProcessor类,实现BeanProcessor.newInstance(Class)方法以返回对象,然后将实现实例传递给BasicRowProcessor实例。

最新更新