反射Update
来源:互联网 发布:谷笑爷 知乎 编辑:程序博客网 时间:2024/05/21 22:32
public static void update(Object obj) throws Exception{
//修改
Class clazz=obj.getClass();
Method[] m=clazz.getMethods();
Field[] f=clazz.getDeclaredFields();
/*
* 拼接Sql
*/
String str1="";
String str3="";
for(int i=0;i<f.length;i++){
//str1=str1+","+f[i].getName()+"="+"?";
for(int j=0;j<m.length;j++){
String str2="get"+f[i].getName();
if(str2.equalsIgnoreCase(m[j].getName())){
str1=str1+f[i].getName()+"="+"'"+m[j].invoke(obj)+"'"+",";
if("getId".equalsIgnoreCase(m[j].getName())){
str3=m[j].invoke(obj).toString();
}
}
}
}
str1=str1.substring(0,str1.length()-1);
String sql="update "+clazz.getSimpleName().toLowerCase()+" set "+str1+" where id="+"'"+str3+"'";
System.out.println(sql);
Connection conn=DBUtils.createConn();
PreparedStatement pst=conn.prepareStatement(sql);
pst.execute();
/*
* update table set id=?,name=?,age=?,address=? where id=?.
*/
}
//修改
Class clazz=obj.getClass();
Method[] m=clazz.getMethods();
Field[] f=clazz.getDeclaredFields();
/*
* 拼接Sql
*/
String str1="";
String str3="";
for(int i=0;i<f.length;i++){
//str1=str1+","+f[i].getName()+"="+"?";
for(int j=0;j<m.length;j++){
String str2="get"+f[i].getName();
if(str2.equalsIgnoreCase(m[j].getName())){
str1=str1+f[i].getName()+"="+"'"+m[j].invoke(obj)+"'"+",";
if("getId".equalsIgnoreCase(m[j].getName())){
str3=m[j].invoke(obj).toString();
}
}
}
}
str1=str1.substring(0,str1.length()-1);
String sql="update "+clazz.getSimpleName().toLowerCase()+" set "+str1+" where id="+"'"+str3+"'";
System.out.println(sql);
Connection conn=DBUtils.createConn();
PreparedStatement pst=conn.prepareStatement(sql);
pst.execute();
/*
* update table set id=?,name=?,age=?,address=? where id=?.
*/
}
- 反射Update
- 利用反射实现Update方法
- 练习使用反射来写SQL update语句
- update
- update
- update
- update
- update
- update
- update
- update
- update
- update
- update
- update
- Update()
- Update
- update
- 护照办理&旅游担保信格式(SH)
- Oracle数据库中的Where条件执行顺序是从后往前的?
- 【Author : DS】Regionals 2010, Asia - Amritapuri - E 题解
- 从http协议看百度360大战
- RabbitMQ 问题 记录
- 反射Update
- FAT32、NTFS文件直接操作小工具(上图MARK记录)
- SmartFTP.4.1.1274.0.Loader-REPT
- N个专项搜索引擎
- 用字节流复制文件的几种方式
- hive安装
- 用Hive读取Hbase表格问题解决
- update
- 一招解决wordpress管理登录重复提示的问题