问题描述
- 关于用DBUtils封装javavbean的问题
- 为了便于讲的更清楚举个例子。
假如自定义了一个person类如下:
class person{
? ? ? ?private String name;
? ? ? ? private Address address;
//以下一系列的getter和setter方法,省略
}
自定义的Address类如下:
class Address {
? ? ? ?private String city;
? ? ? ?private String street;
//以下一系列的getter和setter方法,省略?
}
这两个类分别对应两张表。
使用DBUtils可以将基本数据类型的字段封装到javabean 中,若定义的javabean里有的属性类型又是另一个
自定义的javabean的话(例如以上的person类)。
我的问题是:在这种情况下,那么使用DBUtils如何将表数据封装到person中。主要是Address属性。
我的一个解决思路是:先把Address表中数据封装到一个Address javabean中,再手动调用person的setter方法将这个Address对象赋值给person。但是如果javabean中的自定义类型比较多的时候,这样
自己一个一个的调用setter器会很麻烦的。不知道你们是如何解决这个问题的。没有C币了,抱歉。
解决方案
你可以写一个递归去复制属性的程序,通过反射获得属性,然后赋值,如果属性是一个类类型,那么对它再递归。
另一个方法就是序列化,再反序列化。
时间: 2024-10-30 13:30:32