自己试过可以,不知道有什么缺点。
工作需要,在事先不知道一个javaBean类的名字要动态调用这个类的set方法,给这个类的实例的属性设置值。
import java.lang.reflect.Field;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.lhx.test.model.User;
public class TestClass {
public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException, SQLException {
// TODO Auto-generated method stub
UserDAO dao = new UserDAO();
java.sql.ResultSet _rs = dao.getUsers(); //以上两步在数据库中去值
Class oc = Class.forName("com.lhx.test.model.User"); //根据字符串得到这个类
Field f[] = oc.getDeclaredFields(); //得到这个类的所有字段 不包括父类的字段
List list = new ArrayList();
while(_rs.next()){
Object o = oc.newInstance(); //得到这个类的一个实例
for(int i=0;i<f.length;i++){
String colmt = f[i].toString();
System.out.println("colmt =" + colmt);
int lastindex = colmt.lastIndexOf(".");
String colm = colmt.substring(lastindex+1);
f[i].set(o,(_rs.getObject(colm))); //重点 通过调用字段的set方法,给实例中的属性赋值
}
list.add(o);
}
for(int k=0;k<list.size();k++){
System.out.println(((User)list.get(k)).getUsername());
}
}
}
分享到:
相关推荐
在这些数据存取Bean中封装了对数据库中相对应表的插入insert,删除delete,查询select,更新update等操作,并通过get(),set()方法与JSP页面通信; 同时系统中各模块功能的实现也是通过操作各自商务逻辑Java Bean实现...
在这些数据存取Bean中封装了对数据库中相对应表的插入insert,删除delete,查询select,更新update等操作,并通过get(),set()方法与JSP页面通信; 同时系统中各模块功能的实现也是通过操作各自商务逻辑Java Bean实现...
它是基于Java的远程方法调用(RMI)技术的,所以EJB可以被远程访问(跨进程、跨计算机)。但EJB必须被布署在诸如Webspere、WebLogic这样的容器中,EJB客户从不直接访问真正的EJB组件,而是通过其容器访问。EJB容器是...
DWR共有三种Creator,最简单的”new”是调用bean的默认构造函数创建实例.”scripted”允许采用其他脚本语言创建实例.如BeanShell.在远程bean的默认构造函数不能进行进一步配置的情况下这种类型的creator比较有用.”...
当客户机第一次调用一个Stateful Session Bean 时,容器必须立即在服务器中创建一个新的Bean实例,并关联到客户机上,以后此客户机调用Stateful Session Bean 的方法时容器会把调用分派到与此客户机相关联的Bean实例...
定义留言属性的一个bean文件,定义了各个字段的get和set方法。 3. DBConn.java 定义了连接ACCESS数据库的方法,可以通过调用此方法访问数据库。 4. MessageBean.java 用来进行留言管理的bean,定义了添加留言,...
FactoryInstance 的 lookup() 方法被调用,在 SpringFactoryInstance 中,首先查找 Spring 容器,然后,通过 Bean 的 ID 查找 Bean,最终,FlexService 接口的实例被返回。 注意到 destination 的 id 并没有写死在...
FactoryInstance 的 lookup() 方法被调用,在 SpringFactoryInstance 中,首先查找 Spring 容器,然后,通过 Bean 的 ID 查找 Bean,最终,FlexService 接口的实例被返回。 注意到 destination 的 id 并没有写死在...
我一直以为类的私有构造函数、属性、方法除了类自身其他类是无法访问的,前几天正好学习Spring框架,在学习Spring框架基础 Bean包时,写了一个简单的例子,类似如下: package study.spring.bean; public class ...
13、是否可以从一个static方法内部发出对非static方法的调用? 12 14、Integer与int的区别 13 15、Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 13 16、下面的代码有什么不妥之处? 13 17、请说出作用域...
13、是否可以从一个static方法内部发出对非static方法的调用? 12 14、Integer与int的区别 13 15、Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 13 16、下面的代码有什么不妥之处? 13 17、请说出作用域...
Java 软件工程师面试资料大整合 1 Java 面霸 1 1. int 和 Integer 有什么区别? 8 2. String 和StringBuffer的区别 8 3. 运行时异常与一般异常有何异同? 8 4. 说出ArrayList,Vector,LinkedList的存储性能和特性 8 5...
13、是否可以从一个static方法内部发出对非static方法的调用? 12 14、Integer与int的区别 13 15、Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 13 16、下面的代码有什么不妥之处? 13 17、请说出作用域...
这里创建了一个XmlBeanDefinitionParser接口的实现,这个接口的具体类是DefaultXmlBeanDefinitionParser,这个接口很简单,只有registerBeanDefinitions一个方法,这个方法的作用也很明了,就是用来注册Bean的定义的...
13、是否可以从一个static方法内部发出对非static方法的调用? 12 14、Integer与int的区别 13 15、Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 13 16、下面的代码有什么不妥之处? 13 17、请说出作用域...
13、是否可以从一个static方法内部发出对非static方法的调用? 12 14、Integer与int的区别 13 15、Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 13 16、下面的代码有什么不妥之处? 13 17、请说出作用域...
AndroidWebServiceLibrary 该库进行http get / post请求调用,并且仅处理JSON响应。用法1.Your API class can extend BaseApi for you additional logic or directly create object of BaseApi class public class ...
在java代码中调用选择器: // This always works Intent i = newIntent(context, FilePickerActivity.class); // This works if you defined the intent filter // Intent i = new Intent(Intent.ACTION_GET_CONTENT...