java 动态生成SQL的实例讲解

来源:爱站网时间:2019-10-15编辑:网友分享
我们在开发实际的项目中,往往需要连接多个数据库,不同的业务需求在实现过程中访问不同的数据库,一起去看看爱站技术频道小编为大家介绍的java 动态生成SQL的实例讲解吧!

我们在开发实际的项目中,往往需要连接多个数据库,不同的业务需求在实现过程中访问不同的数据库,一起去看看爱站技术频道小编为大家介绍的java 动态生成SQL的实例讲解吧!

代码如下:

/**
   * 动态生成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 动态生成SQL的实例讲解,相信大家已经了解了吧?如果你还想了解更多的Java知识,请继续留意小编为大家带来的更新。

上一篇:详解java配置文件的路径问题

下一篇:Java四位电话号码的加密方法

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载