成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Mybatis中statement基本用法

Atom / 1439人閱讀

摘要:提供了四個(gè)主要的每一個(gè)都有一個(gè)可選的以及可選的其中要和中的方法簽名相同。

mybatis提供了四個(gè)主要的statement: insert select update delete 每一個(gè)statement都有一個(gè)id,可選的parametertype 以及可選的resultMap,其中statement要和mapper interface中的方法簽名相同。調(diào)用方式:


    INSERT INTO STUDENTS(STUD_ID,NAME,EMAIL, PHONE)
    VALUES(#{studId},#{name},#{email},#{phone})


int count =sqlSession.insert("com.mybatis3.mappers.StudentMapper.insertStudent", student);

StudentMapper mapper = sqlSession.getMapper(StudentMapper.class);
int count = mapper.insertStudent(student);

在insert statement中如果要使用自動(dòng)生成主鍵的功能,需要在insert中進(jìn)行配置useGeneratedKeys和keyProperty


    INSERT INTO STUDENTS(NAME, EMAIL, PHONE)
    VALUES(#{name},#{email},#{phone})

但是有些數(shù)據(jù)庫并不支持自增功能,例如oracle數(shù)據(jù)庫,以oracle為例,oracle雖然不提供自增功能,但是提供了一個(gè)sequence,假設(shè)有一個(gè)sequence稱為STUD_ID_SEQ,insert statement可以寫為:


    
      select STUD_ID_SEQ.NEXTVAL FROM DUAL;
    
    INSERT INTO STUDENTS(NAME, EMAIL, PHONE)
    VALUES(#{name},#{email},#{phone})

對于select statement 若查詢結(jié)果返回多個(gè)結(jié)果,mybatis會(huì)返回一個(gè)list集合,當(dāng)然也可以將返回結(jié)果設(shè)置為map set 等集合。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/70181.html

相關(guān)文章

  • Mybatis源碼分析

    摘要:我認(rèn)為學(xué)習(xí)框架源碼分為兩步抓住主線,掌握框架的原理和流程理解了處理思路之后,再去理解面向?qū)ο笏枷牒驮O(shè)計(jì)模式的用法目前第一步尚有問題,需要多走幾遍源碼,加深下理解,一起加油 這篇文章我們來深入閱讀下Mybatis的源碼,希望以后可以對底層框架不那么畏懼,學(xué)習(xí)框架設(shè)計(jì)中好的思想; 架構(gòu)原理 架構(gòu)圖 showImg(https://segmentfault.com/img/remote/...

    lindroid 評論0 收藏0
  • MybatisResultMap基本用法

    摘要:功能將查詢結(jié)果映射為實(shí)力對象。屬性標(biāo)簽的標(biāo)識返回值的全限定類名屬性設(shè)為則自動(dòng)查找與字段名小寫同名的屬性名,并調(diào)用方法設(shè)為則需要在內(nèi)明確映射關(guān)系才會(huì)調(diào)用對應(yīng)的方法。 ResultMap功能:將select statement查詢結(jié)果映射為java實(shí)力對象。 RestultMap屬性: id:resultmap標(biāo)簽的標(biāo)識; type:返回值的全限定類名; autoMapping屬性:設(shè)為t...

    cppowboy 評論0 收藏0
  • mybatis模仿1之我先看看

    摘要:通過工廠獲得對象。咱直接看,這個(gè)命名明顯告訴玩家,就在前面了。是個(gè)抽象方法,我們得去看實(shí)現(xiàn)??吹较肟吹臇|西了,之后將結(jié)果交給處理。執(zhí)行完操作之后,將結(jié)果交給。 用了挺久的mybatis,但一直停留在用的層面上,覺得不行的呀,得走出舒適區(qū)。所以想自己看看mybatis的實(shí)現(xiàn),然后模仿著寫一個(gè),哈哈,當(dāng)然一開始不會(huì)要求完成度很高。這一篇就先看下mybatis奧秘。這里參考的mybatis源...

    tylin 評論0 收藏0
  • Mybatis【配置文件】就是這么簡單

    摘要:場合常見一些明細(xì)記錄的展示,將關(guān)聯(lián)查詢信息全部展示在頁面時(shí),此時(shí)可直接使用將每一條記錄映射到中,在前端頁面遍歷中是即可。如果查詢單表就可以滿足需求,一開始先查詢單表,當(dāng)需要關(guān)聯(lián)信息時(shí),再關(guān)聯(lián)查詢,當(dāng)需要關(guān)聯(lián)信息再查詢這個(gè)叫延遲加載。 配置文件和映射文件還有挺多的屬性我還沒有講的,現(xiàn)在就把它們一一補(bǔ)全 映射文件 在mapper.xml文件中配置很多的sql語句,執(zhí)行每個(gè)sql語句時(shí),封裝...

    freewolf 評論0 收藏0
  • Mybatis常見面試題

    摘要:執(zhí)行沒有,批處理不支持,將所有都添加到批處理中,等待統(tǒng)一執(zhí)行,它緩存了多個(gè)對象,每個(gè)對象都是完畢后,等待逐一執(zhí)行批處理。 Mybatis常見面試題 #{}和${}的區(qū)別是什么? #{}和${}的區(qū)別是什么? 在Mybatis中,有兩種占位符 #{}解析傳遞進(jìn)來的參數(shù)數(shù)據(jù) ${}對傳遞進(jìn)來的參數(shù)原樣拼接在SQL中 #{}是預(yù)編譯處理,${}是字符串替換。 使用#{}可以有效的防止...

    liuchengxu 評論0 收藏0

發(fā)表評論

0條評論

最新活動(dòng)
閱讀需要支付1元查看
<