您好,登錄后才能下訂單哦!
代碼如下:
/** * 動態(tài)生成SQ及SQL參數(shù)L * @param ve 接收到的消息的CHGLIST * @param paramList MQ消息中的SQL參數(shù) * @param t 泛型對象 * @param table 數(shù)據(jù)表 * @param list 可執(zhí)行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="";//可執(zhí)行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 動態(tài)生成SQL的實例講解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。