當前位置:首頁 > 今日熱點 > 民生資訊 > 正文

    mybatis映射文件操作存儲過程的實現

    2023-07-02 17:17:06    來源:腳本之家    


    (相關資料圖)

    先隨便創建一個存儲過程

    DELIMITER $$
    CREATE PROCEDURE
    getUserNameById (IN i_id BIGINT, OUT o_name VARCHAR(10))
    BEGIN
        SELECT u.name INTO o_name FROM tb_user u WHERE id = i_id;
    END $$
    

    delimiter $$ : 是將sql語句的結束符號先替換成$$的意思,因為sql是遇到;號加回車自動就直接執行的
    mybatis調用存儲過程

    @Mapper
    public interface UserMapper {
    
    ? ? void getUserNameById(UserDto userDto); ?// 注意沒有返回值
    }
    
    
    
    
    ? ? 
    
    @Test
    void contextLoads() {
        UserDto userDto = new UserDto();
        userDto.setId(445225202303020001L);
        System.out.println(userDto);
        userMapper.getUserNameById(userDto);
        System.out.println(userDto);
        }
    

    UserDto(id=445225202303020001, name=null, age=null, phone=null, email=null, password=null)
    2023-03-12 23:37:42.354 INFO 4848 --- [ main] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} inited
    UserDto(id=445225202303020001, name=admin, age=null, phone=null, email=null, password=null)

    這里需要注意就是
    接口的方法沒有返回值

    statementType=“CALLABLE”
    jdbcType=VARCHAR

    在mapper文件中可以使用statementType標記使用什么的對象操作SQL語句。
    statementType:標記操作SQL的對象

    取值說明:

    1、STATEMENT:直接操作sql,不進行預編譯,獲取數據:$—Statement
    2、PREPARED:預處理,參數,進行預編譯,獲取數據:#—–PreparedStatement:默認
    3、CALLABLE:執行存儲過程————CallableStatement

    其中如果在文件中,取值不同,那么獲取參數的方式也不相同

    注意:如果只為STATEMENT,那么sql就是直接進行的字符串拼接,這樣如果為字符串需要加上引號,如果為PREPARED,是使用的參數替換,也就是索引占位符,我們的#會轉換為?再設置對應的參數的值。

    到此這篇關于mybatis映射文件操作存儲過程的實現的文章就介紹到這了,更多相關mybatis映射文件操作存儲過程內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

    關鍵詞:

    上一篇:【全球快播報】沒有VAR導致進球被忽視,蘇州東吳遭遇蘭帕德式門線冤案
    下一篇:最后一頁

    亚洲精品成人在线| 久久亚洲高清综合| 亚洲永久永久永久永久永久精品| 国产成人亚洲精品91专区手机| 久久久久亚洲国产AV麻豆| 亚洲国产精品日韩av不卡在线| 亚洲欧美一区二区三区日产| 亚洲色大网站WWW永久网站| 亚洲熟妇AV乱码在线观看| 亚洲日本天堂在线| 亚洲精品av无码喷奶水糖心| 亚洲欧洲国产综合AV无码久久| 亚洲另类自拍丝袜第五页| 亚洲av成人无码网站…| 麻豆亚洲AV成人无码久久精品 | 老汉色老汉首页a亚洲| 亚洲国产香蕉碰碰人人| 亚洲网站在线免费观看| 亚洲六月丁香六月婷婷蜜芽| 亚洲精品国产精品国自产网站| 亚洲熟女精品中文字幕| 亚洲av纯肉无码精品动漫| 亚洲a∨无码精品色午夜| www亚洲精品少妇裸乳一区二区| 亚洲爽爽一区二区三区| 久久青青草原亚洲av无码| 亚洲色欲久久久综合网东京热| 国产亚洲一区二区三区在线| 亚洲熟妇丰满多毛XXXX| 亚洲av无码不卡一区二区三区| 久久久久亚洲av无码专区| 亚洲一级毛片视频| 亚洲成在人线在线播放无码| 亚洲av高清在线观看一区二区 | 亚洲国产精品一区二区久| 亚洲一区二区三区高清在线观看| 99亚洲精品卡2卡三卡4卡2卡| 亚洲国产成人久久一区久久| 亚洲精品午夜无码电影网| 亚洲人成网站影音先锋播放| 亚洲五月综合网色九月色|