java 動(dòng)態(tài)生成SQL的實(shí)例講解
代碼如下:
/** * 動(dòng)態(tài)生成SQ及SQL參數(shù)L * @param ve 接收到的消息的CHGLIST * @param paramList MQ消息中的SQL參數(shù) * @param t 泛型對(duì)象 * @param table 數(shù)據(jù)表 * @param list 可執(zhí)行SQL語(yǔ)句集合 * @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語(yǔ)句 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 動(dòng)態(tài)生成SQL的實(shí)例講解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java+opencv3.2.0實(shí)現(xiàn)hough直線檢測(cè)
這篇文章主要為大家詳細(xì)介紹了Java+opencv3.2.0之hough直線檢測(cè),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02Java之map的常見(jiàn)用法講解與五種循環(huán)遍歷實(shí)例代碼理解
map是一組鍵值對(duì)的組合,通俗理解類似一種特殊的數(shù)組,a[key]=val,只不過(guò)數(shù)組元素的下標(biāo)是任意一種類型,而且數(shù)組的元素的值也是任意一種類型。有點(diǎn)類似python中的字典。通過(guò)"鍵"來(lái)取值,類似生活中的字典,已知索引,來(lái)查看對(duì)應(yīng)的信息2021-09-09Java如何使用JWT實(shí)現(xiàn)Token認(rèn)證機(jī)制
JWT(JSON Web Token)是一種用于在網(wǎng)絡(luò)上安全地傳輸信息的簡(jiǎn)潔的、URL 安全的表示方法,本文主要介紹了Java如何使用JWT實(shí)現(xiàn)Token認(rèn)證機(jī)制,需要的可以參考下2024-10-10spring boot整合log4j2及MQ消費(fèi)處理系統(tǒng)日志示例
這篇文章主要為大家介紹了spring boot整合log4j2及MQ消費(fèi)處理系統(tǒng)日志的示例過(guò)程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2022-03-03Java通過(guò)工廠、Map容器創(chuàng)建對(duì)象的方法
這篇文章主要介紹了Java通過(guò)工廠、Map容器創(chuàng)建對(duì)象的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03javaCV開(kāi)發(fā)詳解之推流器和錄制器的實(shí)現(xiàn)
這篇文章主要介紹了javaCV開(kāi)發(fā)詳解之推流器和錄制器實(shí)現(xiàn),對(duì)JavaCV感興趣的同學(xué),可以參考下2021-04-04SpringCloud中的Ribbon負(fù)載均衡器詳細(xì)解析
這篇文章主要介紹了SpringCloud中的Ribbon負(fù)載均衡器詳細(xì)解析,Ribbon 是一個(gè)基于 HTTP 和 TCP 的客戶端負(fù)載均衡工具,它基于 Netflix Ribbon 實(shí)現(xiàn),通過(guò)封裝可以讓我們輕松地將面向服務(wù)的 REST 模版請(qǐng)求自動(dòng)轉(zhuǎn)換成客戶端負(fù)載均衡的服務(wù)調(diào)用,需要的朋友可以參考下2024-01-01SpringBoot Logback日志記錄到數(shù)據(jù)庫(kù)的實(shí)現(xiàn)方法
這篇文章主要介紹了SpringBoot Logback日志記錄到數(shù)據(jù)庫(kù)的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11