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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Mybatis 入门之resultMap与resultType讲解实例

發布時間:2024/7/19 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Mybatis 入门之resultMap与resultType讲解实例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

resultMap:適合使用返回值是自定義實體類的情況

resultType:適合使用返回值得數據類型是非自定義的,即jdk的提供的類型

resultMap :?

type:映射實體類的數據類型

id:resultMap的唯一標識

column:庫表的字段名

property:實體類里的屬性名


配置映射文件:

[java] view plaincopyprint?
  • <?xml?version="1.0"?encoding="UTF-8"??>??
  • <!DOCTYPE?mapper??
  • PUBLIC?"-//mybatis.org//DTD?Mapper?3.0//EN"??
  • "http://mybatis.org/dtd/mybatis-3-mapper.dtd">??
  • <!--?namespace:當前庫表映射文件的命名空間,唯一的不能重復?-->??
  • <mapper?namespace="com.hao947.sql.mapper.PersonMapper">??
  • ????<!--?type:映射實體類的數據類型?id:resultMap的唯一標識?-->??
  • ????<resultMap?type="person"?id="BaseResultMap">??
  • ????????<!--?column:庫表的字段名?property:實體類里的屬性名?-->??
  • ????????<id?column="person_id"?property="personId"?/>??
  • ????????<result?column="name"?property="name"?/>??
  • ????????<result?column="gender"?property="gender"?/>??
  • ????????<result?column="person_addr"?property="personAddr"?/>??
  • ????????<result?column="birthday"?property="birthday"?/>??
  • ????</resultMap>??
  • ????<!--id:當前sql的唯一標識??
  • ?????????parameterType:輸入參數的數據類型???
  • ?????????resultType:返回值的數據類型???
  • ?????????#{}:用來接受參數的,如果是傳遞一個參數#{id}內容任意,如果是多個參數就有一定的規則,采用的是預編譯的形式select???
  • ????????*?from?person?p?where?p.id?=???,安全性很高?-->??
  • ??
  • ????<!--?sql語句返回值類型使用resultMap?-->??
  • ????<select?id="selectPersonById"?parameterType="java.lang.Integer"??
  • ????????resultMap="BaseResultMap">??
  • ????????select?*?from?person?p?where?p.person_id?=?#{id}??
  • ????</select>??
  • ????<!--?resultMap:適合使用返回值是自定義實體類的情況???
  • ????resultType:適合使用返回值的數據類型是非自定義的,即jdk的提供的類型?-->??
  • ????<select?id="selectPersonCount"?resultType="java.lang.Integer">??
  • ????????select?count(*)?from??
  • ????????person??
  • ????</select>??
  • ??
  • ????<select?id="selectPersonByIdWithMap"?parameterType="java.lang.Integer"??
  • ????????resultType="java.util.Map">??
  • ????????select?*?from?person?p?where?p.person_id=?#{id}??
  • ????????</select>??
  • ??
  • </mapper>??



  • 實體類Person.java [java] view plaincopyprint?
  • <pre?name="code"?class="java">package?com.hao947.model;??
  • import?java.util.Date;??
  • public?class?Person?{??
  • ????private?Integer?personId;??
  • ????private?String?name;??
  • ????private?Integer?gender;??
  • ????private?String?personAddr;??
  • ????private?Date?birthday;??
  • ????@Override??
  • ????public?String?toString()?{??
  • ????????return?"Person?[personId="?+?personId?+?",?name="?+?name?+?",?gender="??
  • ????????????????+?gender?+?",?personAddr="?+?personAddr?+?",?birthday="??
  • ????????????????+?birthday?+?"]";??
  • ????}??
  • }??

  • 測試類 [java] view plaincopyprint?
  • public?class?PersonTest?{??
  • ????SqlSessionFactory?sqlSessionFactory;??
  • ????@Before??
  • ????public?void?setUp()?throws?Exception?{??
  • ????????//?讀取資源流??
  • ????????InputStream?in?=?Resources.getResourceAsStream("sqlMapConfig.xml");??
  • ????????//?初始化session工廠??
  • ????????sqlSessionFactory?=?new?SqlSessionFactoryBuilder().build(in);??
  • ????}??
  • ??
  • ??????
  • ??
  • ????@Test??
  • ????public?void?selectPersonById()?{??
  • ????????//?創建一個sqlsession??
  • ????????SqlSession?session?=?sqlSessionFactory.openSession();??
  • ????????try?{??
  • ????????????Person?p?=?session.selectOne(??
  • ????????????????????"com.hao947.sql.mapper.PersonMapper.selectPersonById",?1);??
  • ????????????System.out.println(p);??
  • ????????}?finally?{??
  • ????????????session.close();??
  • ????????}??
  • ????}??
  • ????@Test??
  • ????public?void?selectPersonCount()?{??
  • ????????//?創建一個sqlsession??
  • ????????SqlSession?session?=?sqlSessionFactory.openSession();??
  • ????????try?{??
  • ????????????Integer?p?=?session.selectOne(??
  • ????????????????????"com.hao947.sql.mapper.PersonMapper.selectPersonCount");??
  • ????????????System.out.println(p);??
  • ????????}?finally?{??
  • ????????????session.close();??
  • ????????}??
  • ????}??
  • ????@Test??
  • ????public?void?selectPersonByIdWithMap()?{??
  • ????????//?創建一個sqlsession??
  • ????????SqlSession?session?=?sqlSessionFactory.openSession();??
  • ????????try?{??
  • ????????????Map<String?,Object>?map?=?session.selectOne(??
  • ????????????????????"com.hao947.sql.mapper.PersonMapper.selectPersonByIdWithMap",1);??
  • ????????????System.out.println(map);??
  • ????????}?finally?{??
  • ????????????session.close();??
  • ????????}??
  • ????}??
  • }??

  • 轉載于:https://www.cnblogs.com/archermeng/p/7537407.html

    總結

    以上是生活随笔為你收集整理的Mybatis 入门之resultMap与resultType讲解实例的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。