日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > 数据库 >内容正文

数据库

Mybaits自定义SQL

發(fā)布時(shí)間:2023/11/30 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Mybaits自定义SQL 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

最近有個(gè)同事要包裝一個(gè)可以執(zhí)行sql語(yǔ)句的功能用的是mybatis

最開(kāi)始他想到的方案是拿到數(shù)據(jù)庫(kù)連接再執(zhí)行sql語(yǔ)句。

后來(lái)出了某些錯(cuò)誤來(lái)問(wèn)我,為了尋求比較快的解決方法于是我就試試了下下面的方法。


首先在Mapper添加?

<select id="select" resultMap="map" parameterType="java.lang.String" >
? ? ${_parameter}
? </select>

?parameterType為String的話 ?參數(shù)名就必須寫(xiě)_parameter

?resultMap 返回類(lèi)型是map型

這里的原理就是通過(guò)傳入字符串來(lái)執(zhí)行sql,當(dāng)然了上面這個(gè)只能執(zhí)行select 如果要執(zhí)行插入刪除更新就另外寫(xiě)個(gè)

大家可以封裝個(gè)函數(shù)來(lái)判斷是添加修改刪除來(lái)執(zhí)行對(duì)應(yīng)的Mapper

然后在對(duì)應(yīng)的dao接口添加


List<map>?select(String sql);

最后就可以得到自定義sql語(yǔ)句查詢的結(jié)果了。


@Resource ?
? private MyMapper myMapper;

....

List<map>?result?=myMapper.select("select * from user");


OK最后就可以用其他工具類(lèi)將map轉(zhuǎn)成你的對(duì)象或者轉(zhuǎn)成JsonString 再轉(zhuǎn)成對(duì)象數(shù)組。



? <resultMap extends="BaseResultMap" id="ResultMapWithBLOBs" type="com.pactera.domain.report.BasReport">

??? <!--
????? WARNING - @mbggenerated
????? This element is automatically generated by MyBatis Generator, do not modify.
??? -->
??? <result column="SQL" jdbcType="CLOB" property="sql" />

? </resultMap>



總結(jié)

以上是生活随笔為你收集整理的Mybaits自定义SQL的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。