javabean封装-关于用DBUtils封装javavbean的问题

问题描述

关于用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币了,抱歉。

解决方案

你可以写一个递归去复制属性的程序,通过反射获得属性,然后赋值,如果属性是一个类类型,那么对它再递归。

具体代码:
http://wenku.baidu.com/link?url=_0o6nXYes3mlydMAsqC8NWxCcUgkfDYKPlin8EOT3ZIJPKTNbZsjxW_pEigey_CmWC6yf6aOaDft0l3AT9rZX3kar43ciN3nS6bQXDyQzOy

另一个方法就是序列化,再反序列化。

时间: 2024-10-30 13:30:32

javabean封装-关于用DBUtils封装javavbean的问题的相关文章

java里面的封装只对方法封装吗

问题描述 java里面的封装只对方法封装吗 java里面的封装只对方法封装吗 封装可以提高代码的简洁性 封装还有其他什么作用呢 解决方案 封装相同代码,减少代码量,灵活调用: 封装功能代码,根据代码的实现功能分别封装成功能方法,使逻辑清晰,便于阅读理解,以后修改方便. 比如 代码实现了A.B.C三种功能,如果 A.B.C抽出来封装,则以后要改B功能,就不用看 A.和 C功能了. 解决方案二: 对于java里面的封装思想,如何来封装

jni封装-Android Studio JNI封装问题

问题描述 Android Studio JNI封装问题 大家好,在下有一问题请教: 别人给了一个C语言编译的动态库和头文件(libxxx.so,xxx.h),我想在Android Studio中NDK开发时用JNI封装这个库,然后再生成一个libyyy.so给Android Java调用.我已经在linux下用yyy.c和Makefile实现了我的想法(即通过libxxx.so经过JNI封装生成libyyy.so给Android Java调用),我想为了方便,能否直接在Android Studi

iOS组件封装与自动布局自定义表情键盘_IOS

下面的东西是编写自定义的表情键盘,话不多说,开门见山吧!下面主要用到的知识有MVC, iOS开发中的自动布局,自定义组件的封装与使用,Block回调,CoreData的使用.有的小伙伴可能会问写一个自定义表情键盘肿么这么麻烦?下面 将会介绍我们如何用上面提到的东西来定义我们的表情键盘的.下面的内容会比较多,这篇文章还是比较有料的. 还是那句话写技术博客是少不了代码的,下面会结合代码来回顾一下iOS的知识,本篇博文中用到的知识点在前面的博客中都能找到相应的内容,本篇 算是一个小小的功能整合.先来张

Java JDBC封装模式

模仿DBUtils里面的一些用法,下面是一些简单的实现数据集的操作的方法 下面使用到的两个bean.首先是userbean package bean; public class user { String username; String password; public user(){ username=null; password=null; } @Override public String toString() { return "user [username=" + user

sg3525a-求SG3525A贴片封装尺寸

问题描述 求SG3525A贴片封装尺寸 求SG3525A贴片封装尺寸 求SG3525A贴片封装尺寸求SG3525A贴片封装尺寸 解决方案 贴片电阻封装尺寸

基于jQuery的ajax对WebApi和OData的封装

WebApi 的使用带来了一个显著的特点,对type有一定的要求.一般ajax的type无非就是两种,GET和POST.如果用JSONP来跨域的话,就只能用 GET.但是现在WebApi来了,type的类型增加了一倍还要多.这个虽说问题不大,就是多个put.delete,看看要求掌握一下就可以了.但是 我觉得,这个总是要有个过程,另外写代码的时候还要想想是put还是post,万一写错了,就会带来不必要的麻烦.那么能不能封装一下呢? jQuery的ajax使用其实已经很简单了,但是还是需要设置几个

封装的一个asp.net验证码类

第一个反映是验证码的这些属性是否可以设置(也就是说是封装成一个类,然后以暴露公有属性和方法的方式来使用的,还是在直接在一般处理程序中实现了验证码的生成到输出),结果比较可惜,是后者...... 里面的算法感觉挺不错,至少对于我这种对算法几乎是不懂的人来说是这样,于是想到去封装一下她然后无耻地纳入自己的类库中去^^ old原文件如下:点击下载 首先分析一下这份代码中的不足(自己觉得的): 1.面向过程式的编程,如果要修改验证码的属性,例如修改字体的大小.背景颜色等细节的东西,需要去一般处理程序中找

php---数据库类封装

为了节省以后的时间,今天封装了操作sql语句的一个类,在此保存起来,方面以后使用. 这个类的文件名:SqlTool.class.php 主要有dql和dml两个函数 看下面的源码" <?php class SqlTool{ private $conn; private $username="root"; private $password="1234"; private $host="127.0.0.1"; private $db

php (十三) 面向对象 封装

面向对象的封装性: 1,就是把对象的成员(属性,方法)结合成一个独立的相同单位,并尽可能隐藏对象的内部细节 public protected private 私有的,用这个关键字修饰的成员,只能在对象内部访问(只有用$this访问),不能在对象外部使用   示例:   class Person{ private $name; private $age; private $sex; function __construct($name="",$age=20,$sex="male