0

举个例子,我有两张桌子

table1 (
name varchar2,
id int,
customer bit, --or boolean
)

table2 (
name2 varchar2,
id2 int,
dob Date,
)

现在列的数量、名称和数据类型不同。它们将根据查询返回,例如select * from table1select id2 from table2

现在是否可以创建一个可以动态表示返回的行(根据数字、名称和数据类型)的 bean?

例如对于 table1 我应该能够创建类似的东西

class Table1{

private String name;
private int id;
private boolean customer;
//Corresponding getters and setters
}

表2的方式相同

4

2 回答 2

0

是否可以创建一个可以动态表示返回的行(根据数字、名称和数据类型)的 bean?

的,这在 Java 中是可能的。使用JPAHibernate。哪个映射了你的行与对象。

于 2013-09-04T05:45:05.503 回答
0

一个解决方案可以是探索ResultSetMetaData并遍历所有列:使用Javassist很容易创建一个带有字段和相关访问器的 POJO(您也可以查看DynaBean)。
如果您使用特定的 RDBMS 类型,检测列的 jdbc 类型可能会有点困难。

于 2013-09-04T06:31:41.990 回答