最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Mybatis動(dòng)態(tài)查詢字段及表名的實(shí)現(xiàn)

 更新時(shí)間:2024年01月19日 11:54:52   作者:天涯___小菜  
本文主要介紹了Mybatis動(dòng)態(tài)查詢字段及表名的實(shí)現(xiàn),通過靈活運(yùn)用Mybatis提供的動(dòng)態(tài)SQL功能,我們可以構(gòu)建更加靈活、高效的查詢語句,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

Mapper.java

IPage<Map<String, Object>> getDyData(@Param("page") Page page, @Param("columns")String columns, @Param("tableName")String tableName);

Mapper.xml

<select id="getDyData" resultType="java.util.Map">
select 
     ${columns}
from 
    ${tableName}  dy
</select>

使用場景:

1.我們必須知道查詢的表名,可以通過表名查詢字段及注釋,然后把表名和字段傳進(jìn)mapper

2.如果知道具體查詢哪些表,可以把這些表及表對(duì)應(yīng)的字段配置進(jìn)一張表和字段對(duì)應(yīng)的表中,通過表名查詢?cè)摫砣〕鰧?duì)應(yīng)的字段及注釋,此處的字段注釋可以自己寫相對(duì)比較靈活。

DROP TABLE IF EXISTS `table_colume_mapping`;
CREATE TABLE `table_colume_mapping`  (
  `table_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '表名',
  `column_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '字段名',
  `column_comment` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '字段漢語名',
  `table_comment` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '表名注釋',
  `sort` int(10) NULL DEFAULT NULL COMMENT '字段排序',
  `show_column` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '是' COMMENT '是否展示在列',
  `del_flag` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '0存在1刪除'
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '表字段注釋映射' ROW_FORMAT = Dynamic;

SET FOREIGN_KEY_CHECKS = 1;

調(diào)用 

LambdaQueryWrapper<TableColumeMapping> wrapper = new LambdaQueryWrapper<>();
			wrapper.eq(TableColumeMapping::getTableName, "查詢的表名");
			List<TableColumeMapping> list = SpringContextHolder.getBean(TableColumeMapping.class).list(wrapper);
Map<String, TableColumeMapping> tableColumeMap = list.stream().collect(Collectors.toMap(TableColumMapperPerson::getColumnName, account -> account));
String columnNames = list.stream().map(item -> "dy."+item.getColumnName()).collect(Collectors.joining(","));
IPage<Map<String, Object>> result = this.baseMapper.getDyData(page,columnNames,"查詢的表名");

到此這篇關(guān)于Mybatis動(dòng)態(tài)查詢字段及表名的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Mybatis動(dòng)態(tài)查詢字段及表名內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java基于ArrayList實(shí)現(xiàn)群主發(fā)紅包功能

    Java基于ArrayList實(shí)現(xiàn)群主發(fā)紅包功能

    這篇文章主要介紹了Java基于ArrayList實(shí)現(xiàn)群主發(fā)紅包功能,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • 詳解java中的static關(guān)鍵字

    詳解java中的static關(guān)鍵字

    這篇文章主要介紹了java中的static關(guān)鍵字的的相關(guān)資料,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • Java防止xss攻擊附相關(guān)文件下載

    Java防止xss攻擊附相關(guān)文件下載

    首先說一下思路,防止這種類似于注入攻擊,就是使用攔截器(Filter)處理特殊字符或過濾特殊字符 今天介紹一個(gè)方法,利用覆蓋Servlet的getParameter方法達(dá)到處理特殊字符的目的來解決(防止)Xss攻擊 web.xml,需要的朋友可以參考下
    2020-02-02
  • SpringBoot SSMP 整合案例分享

    SpringBoot SSMP 整合案例分享

    這篇文章主要介紹了SpringBoot SSMP 整合案例分享,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • Java基于迭代器模式實(shí)現(xiàn)的訪問人員列表操作示例

    Java基于迭代器模式實(shí)現(xiàn)的訪問人員列表操作示例

    這篇文章主要介紹了Java基于迭代器模式實(shí)現(xiàn)的訪問人員列表操作,簡單描述了迭代器模式的概念、原理以及使用迭代器模式實(shí)現(xiàn)訪問人員列表的相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • 解決springboot responseentity<string>亂碼問題

    解決springboot responseentity<string>亂碼問題

    這篇文章主要介紹了解決springboot responseentity<string>亂碼問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Java語言ReadWriteLock特性實(shí)例測試

    Java語言ReadWriteLock特性實(shí)例測試

    這篇文章主要介紹了Java語言ReadWriteLock特性實(shí)例測試,分享了相關(guān)代碼示例,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02
  • 淺析如何在IDEA中高效使用Test注解進(jìn)行單元測試

    淺析如何在IDEA中高效使用Test注解進(jìn)行單元測試

    在軟件開發(fā)過程中,單元測試是保證代碼質(zhì)量的重要手段之一,那么如何在IDEA中高效使用Test注解進(jìn)行單元測試呢,下面小編就來和大家簡單講講
    2025-04-04
  • Java中Mybatis-Plus使用方式介紹

    Java中Mybatis-Plus使用方式介紹

    Mybatis-Plus提供了多種方式來執(zhí)行SQL,包括使用注解、XML映射文件和?Lambda表達(dá)式等,其中,使用Lambda表達(dá)式是Mybatis-Plus推薦的方式,因?yàn)樗又庇^和類型安全,,需要的朋友可以參考下
    2023-06-06
  • IDEA代碼規(guī)范&質(zhì)量檢查的實(shí)現(xiàn)

    IDEA代碼規(guī)范&質(zhì)量檢查的實(shí)現(xiàn)

    這篇文章主要介紹了IDEA代碼規(guī)范&質(zhì)量檢查的實(shí)現(xiàn),文中通過圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08

最新評(píng)論

五大连池市| 辛集市| 老河口市| 虞城县| 凤翔县| 齐齐哈尔市| 巫溪县| 信阳市| 临邑县| 上饶市| 邛崃市| 安义县| 德保县| 安新县| 新余市| 肇东市| 新河县| 汕尾市| 新营市| 武威市| 汽车| 灵武市| 小金县| 台山市| 信丰县| 布尔津县| 玛沁县| 通江县| 偃师市| 宜兰市| 鹤岗市| 新安县| 广安市| 如皋市| 威信县| 页游| 泸水县| 宁化县| 平顶山市| 临西县| 互助|