JAVA 利用反射机制查询数据库返回相应对象
2014-03-04 20:49
513 查看
public static void main(String [] rags){ SQLHepler SH=new SQLHepler(); String sql="select * from DB_Image"; String [] p={"107"}; try { List<Object> c=SH.excuteSelectSQL(sql, null, DBImage.class); for (Object o:c) { DBImage cam=(DBImage) o; System.out.println(cam.getImageID()+" "+cam.getImageRealPath()); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } private List<String> getAllMethods(Class c){ List<String> allMendth=new ArrayList<String>(); Field [] f=c.getDeclaredFields(); for(int i=0;i<f.length;i++){ String m="set"; m+=f[i].getName(); allMendth.add(m); } return allMendth; } public List<Object> excuteSelectSQL(String sql,String [] parmates,Class clazz) throws Exception{ List<Object> all=new ArrayList<Object>(); Conn conn=new Conn(); this.con=conn.getConn(); this.ps=con.prepareStatement(sql); if(parmates!=null && !parmates.equals("")){ int index=1; for(String s:parmates){ this.ps.setString(index, s); index++; } } this.rs=this.ps.executeQuery(); while(rs.next()){ Object o = clazz.newInstance(); List<String> allMethods=getAllMethods(clazz); int index=1; for(String s:allMethods){ clazz.getDeclaredMethod(s, String.class).invoke(o, rs.getString(index)); index++; } all.add(o); } return all; }
相关文章推荐
- JAVA 利用反射机制查询数据库返回相应对象
- 怎样在JAVA 中封装数据库操作(增删改查)运用反射机制!已贴出删除和查询方法,求增加和修改!
- 利用反射实现mysql数据库sql查询 返回List<E>泛型(持久化)对象
- 利用Java的反射机制解析一个Class对象的详细内容(工具方法留用)
- object对象java 利用反射 从数据库取出数据对象list 类似hibernate
- (三)JAVA利用反射机制将XML中的内容放入实体对象中
- Java记录 -88- 利用反射机制调用对象的私有方法和属性
- Java中的反射机制(二) 一个利用反射进行对象拷贝的例子
- 使用反射机制将纯Java对象放入数据库中
- Java中的反射机制(二) 一个利用反射进行对象拷贝的例子
- Java注解(Annotation)用法:利用注解和反射机制指定列名导出数据库数据
- 反射3:利用java反射技术将查询结果封装成对象
- Java中的反射机制(二) 一个利用反射进行对象拷贝的例子
- Java中的反射机制(二) 一个利用反射进行对象拷贝的例子
- (JDBC)利用Java反射编写一个万能的数据库表查询方法
- JAVA中利用反射机制进行对象和Map相互转换的方法
- JDBC_利用Java反射技术将查询结果封装为对象
- Java中的反射机制 一个利用反射进行对象拷贝的例子
- [Java]利用反射机制动态加载并创建包含参数的对象
- android中利用java反射原理将对象添加到sqlit数据库的万能方法