java 动态生成SQL的实例讲解
时间:2022-03-14 10:05:35|栏目:JAVA代码|点击: 次
代码如下:
/**
* 动态生成SQ及SQL参数L
* @param ve 接收到的消息的CHGLIST
* @param paramList MQ消息中的SQL参数
* @param t 泛型对象
* @param table 数据表
* @param list 可执行SQL语句集合
* @return
*/
public <T> String updateSqlAndParamList(Vector<String> ve,List<String> paramList,T t,String table,List<String> list){
String strSql="";//MQ消息SQl
String upSql="";//可执行SQL
try {
//组装SQL语句
strSql = "update "+table+" set ";
upSql="update "+table+" set ";
for(int i = 0; i < ve.size(); i++){
String str = "";
String upStr="";
String key = ve.get(i);
String fileName="get"+key.toUpperCase();
String value=(String)t.getClass().getMethod(fileName).invoke(t);
paramList.add(i,value);
if(i == ve.size()-1){
str = key+" = ?";
upStr=key+"='"+value+"'";
}else{
str = key+" = ? ,";
upStr=key+"='"+value+"',";
}
strSql+=str;
upSql += upStr;
}
strSql +=" where Id = ? ";
upSql+=" where id='"+(String) t.getClass().getMethod("getID").invoke(t)+"'";
list.add(upSql);
paramList.add(ve.size(),(String) t.getClass().getMethod("getID").invoke(t));
} catch (Exception e) {
logger.info("组装UPDATE SQL失败!失败详情---"+e);
}
return strSql;
}
上一篇:Java计算数学表达式代码详解
栏 目:JAVA代码
本文标题:java 动态生成SQL的实例讲解
本文地址:http://www.codeinn.net/misctech/196195.html


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




