zoukankan      html  css  js  c++  java
  • 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;
        }
  • 相关阅读:
    mongodb 添加用户
    mongo 安装
    python 操作redis
    python 安装 redis
    redis 命令文档网址
    redis 事务
    Redis key命令
    手动卸载的vs2010
    个人封装JavaScript函数
    女学-温砚如老师的人生女学
  • 原文地址:https://www.cnblogs.com/x-jingxin/p/7193013.html
Copyright © 2011-2022 走看看