校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > mybatis映射XML文件詳解及實例

mybatis映射XML文件詳解及實例

熱門標簽:怎么申請400熱線電話 簡單的智能語音電銷機器人 泗洪正規電話機器人找哪家 怎么去開發一個電銷機器人 南昌呼叫中心外呼系統哪家好 湖南保險智能外呼系統產品介紹 河北便宜電銷機器人軟件 ai電話電話機器人 小程序智能電話機器人

mybatis映射XML文件

一個簡單的映射文件:

?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" >
mapper namespace="com.cnx.wxcar.mapper.CustomerMapper">
/mapper>

當然這個文件中沒有任何的元素

The Mapper XML files have only a few first class elements :

  1. cache – Configuration of the cache for a given namespace.
  2. cache-ref – Reference to a cache configuration from another namespace.
  3. resultMap – The most complicated and powerful element that describes how to load your objects from the database result sets.
  4. sql – A reusable chunk of SQL that can be referenced by other statements.
  5. insert – A mapped INSERT statement.
  6. update – A mapped UPDATE statement.
  7. delete – A mapped DELETE statement.
  8. select – A mapped SELECT statement.

select

簡單的例子:

select id="selectPerson" parameterType="int" resultType="hashmap">
 SELECT * FROM PERSON WHERE ID = #{id}
/select>

select也有很多屬性可以讓你配置:

select
 id="selectPerson"
 parameterType="int"
 parameterMap="deprecated"
 resultType="hashmap"
 resultMap="personResultMap"
 flushCache="false"
 useCache="true"
 timeout="10000"
 fetchSize="256"
 statementType="PREPARED"
 resultSetType="FORWARD_ONLY">

insert, update and delete

insert
 id="insertAuthor"
 parameterType="domain.blog.Author"
 flushCache="true"
 statementType="PREPARED"
 keyProperty=""
 keyColumn=""
 useGeneratedKeys=""
 timeout="20">

update
 id="updateAuthor"
 parameterType="domain.blog.Author"
 flushCache="true"
 statementType="PREPARED"
 timeout="20">

delete
 id="deleteAuthor"
 parameterType="domain.blog.Author"
 flushCache="true"
 statementType="PREPARED"
 timeout="20">

語句:

insert id="insertAuthor">
 insert into Author (id,username,password,email,bio)
 values (#{id},#{username},#{password},#{email},#{bio})
/insert>

update id="updateAuthor">
 update Author set
  username = #{username},
  password = #{password},
  email = #{email},
  bio = #{bio}
 where id = #{id}
/update>

delete id="deleteAuthor">
 delete from Author where id = #{id}
/delete>

f your database supports auto-generated key fields (e.g. MySQL and SQL Server),上面的插入語句可以寫成:

insert id="insertAuthor" useGeneratedKeys="true"
  keyProperty="id">
 insert into Author (username,password,email,bio)
 values (#{username},#{password},#{email},#{bio})
/insert>

如果你的數據庫還支持多條記錄插入,可以使用下面這個語句:

insert id="insertAuthor" useGeneratedKeys="true"
  keyProperty="id">
 insert into Author (username, password, email, bio) values
 foreach item="item" collection="list" separator=",">
  (#{item.username}, #{item.password}, #{item.email}, #{item.bio})
 /foreach>
/insert>

sql

這個element可以定義一些sql代碼的碎片,然后在多個語句中使用,降低耦合。比如:

sql id="userColumns"> ${alias}.id,${alias}.username,${alias}.password /sql>

然后在下面的語句中使用:

select id="selectUsers" resultType="map">
 select
  include refid="userColumns">property name="alias" value="t1"/>/include>,
  include refid="userColumns">property name="alias" value="t2"/>/include>
 from some_table t1
  cross join some_table t2
/select>

Result Maps

官網給了個最最復雜的例子

大體意思呢就是一個博客系統有一個作者,很多博文,博文中有一個作者,很多評論,很多標簽(包括了一對多,一對一)

!-- Very Complex Statement -->
select id="selectBlogDetails" resultMap="detailedBlogResultMap">
 select
    B.id as blog_id,
    B.title as blog_title,
    B.author_id as blog_author_id,
    A.id as author_id,
    A.username as author_username,
    A.password as author_password,
    A.email as author_email,
    A.bio as author_bio,
    A.favourite_section as author_favourite_section,
    P.id as post_id,
    P.blog_id as post_blog_id,
    P.author_id as post_author_id,
    P.created_on as post_created_on,
    P.section as post_section,
    P.subject as post_subject,
    P.draft as draft,
    P.body as post_body,
    C.id as comment_id,
    C.post_id as comment_post_id,
    C.name as comment_name,
    C.comment as comment_text,
    T.id as tag_id,
    T.name as tag_name
 from Blog B
    left outer join Author A on B.author_id = A.id
    left outer join Post P on B.id = P.blog_id
    left outer join Comment C on P.id = C.post_id
    left outer join Post_Tag PT on PT.post_id = P.id
    left outer join Tag T on PT.tag_id = T.id
 where B.id = #{id}
/select>

!-- Very Complex Result Map -->
resultMap id="detailedBlogResultMap" type="Blog">
 constructor>
  idArg column="blog_id" javaType="int"/>
 /constructor>
 result property="title" column="blog_title"/>
 association property="author" javaType="Author">
  id property="id" column="author_id"/>
  result property="username" column="author_username"/>
  result property="password" column="author_password"/>
  result property="email" column="author_email"/>
  result property="bio" column="author_bio"/>
  result property="favouriteSection" column="author_favourite_section"/>
 /association>
 collection property="posts" ofType="Post">
  id property="id" column="post_id"/>
  result property="subject" column="post_subject"/>
  association property="author" javaType="Author"/>
  collection property="comments" ofType="Comment">
   id property="id" column="comment_id"/>
  /collection>
  collection property="tags" ofType="Tag" >
   id property="id" column="tag_id"/>
  /collection>
  discriminator javaType="int" column="draft">
   case value="1" resultType="DraftPost"/>
  /discriminator>
 /collection>
/resultMap>

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

您可能感興趣的文章:
  • mybatis框架的xml映射文件常用查詢指南
  • mybatis的mapper.xml中resultMap標簽的使用詳解
  • 淺談mybatis mapper.xml文件中$和#的區別
  • MyBatis中XML 映射文件中常見的標簽說明

標簽:那曲 荊門 瀘州 江蘇 威海 淮安 景德鎮 柳州

巨人網絡通訊聲明:本文標題《mybatis映射XML文件詳解及實例》,本文關鍵詞  mybatis,映射,XML,文件,詳解,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《mybatis映射XML文件詳解及實例》相關的同類信息!
  • 本頁收集關于mybatis映射XML文件詳解及實例的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    亚洲国产色一区| 日韩一区有码在线| 欧美三级中文字| 91欧美一区二区| 91免费视频网址| 欧美亚洲日本国产| 99久久综合国产精品| 99精品视频一区二区三区| 成人国产视频在线观看| 成人丝袜18视频在线观看| 成人免费视频视频| 色综合久久精品| 精品视频在线免费看| 欧美猛男gaygay网站| 日韩三级电影网址| 国产日韩欧美在线一区| 国产精品久久久久久亚洲毛片| 亚洲国产精品传媒在线观看| 国产精品二区一区二区aⅴ污介绍| 亚洲人成网站精品片在线观看| 亚洲女同一区二区| 奇米亚洲午夜久久精品| 九色|91porny| av爱爱亚洲一区| 欧美一区二区三区四区高清 | 亚洲免费观看视频| 亚洲v日本v欧美v久久精品| 青草国产精品久久久久久| 国产美女精品人人做人人爽| 成人动漫在线一区| 欧美群妇大交群中文字幕| 精品欧美黑人一区二区三区| 中文字幕av在线一区二区三区| 一区二区三区久久| 国产一区视频导航| 欧美私人免费视频| 国产精品久久久久一区二区三区共| 国产精品久久久久久久午夜片| 亚洲18色成人| 波多野结衣一区二区三区| 欧美一级夜夜爽| 亚洲欧美一区二区不卡| 激情小说亚洲一区| 91黄视频在线| 久久久久久97三级| 五月天激情综合| 99热99精品| 久久久久久一级片| 亚洲国产美国国产综合一区二区| 久久激五月天综合精品| 日本大香伊一区二区三区| 久久色视频免费观看| 天天色 色综合| 在线观看国产精品网站| 国产精品久久久久久久久搜平片| 久久精品国产色蜜蜜麻豆| 精品视频123区在线观看| 自拍视频在线观看一区二区| 国产成人免费视频一区| 欧美成人精品1314www| 日韩国产成人精品| 欧美在线高清视频| 日韩码欧中文字| www.亚洲国产| 亚洲欧洲成人精品av97| 国产成人av一区二区三区在线| 日韩三级电影网址| 美日韩黄色大片| 日韩免费性生活视频播放| 日韩电影免费在线观看网站| 在线不卡中文字幕播放| 亚洲国产成人精品视频| 在线亚洲一区二区| 亚洲午夜av在线| 欧美日韩视频一区二区| 亚洲一区二区在线播放相泽| 欧美色图一区二区三区| 亚洲精品成a人| 色综合色综合色综合| 亚洲精品日日夜夜| 欧美日韩一区三区四区| 丝袜国产日韩另类美女| 欧美一区二区三区日韩| 青青草原综合久久大伊人精品| 欧美主播一区二区三区| 肉色丝袜一区二区| 欧美一区二区三区播放老司机 | 欧美成人精品福利| 久久99精品久久久久久国产越南 | 日韩欧美精品在线视频| 日韩经典中文字幕一区| 91精品在线观看入口| 精品一区二区在线播放| 国产婷婷精品av在线| 成人a区在线观看| 亚洲午夜免费电影| 精品久久久久一区| 成人app软件下载大全免费| 亚洲免费av网站| 91精品国产一区二区人妖| 极品瑜伽女神91| 亚洲欧美日韩在线不卡| 欧美高清hd18日本| 经典三级视频一区| 一区二区三区欧美亚洲| 91精品国产综合久久精品app| 国产在线一区二区综合免费视频| 亚洲国产精品ⅴa在线观看| 在线看国产一区二区| 奇米在线7777在线精品 | 91黄视频在线| 久久精品99国产精品| 亚洲精品免费在线播放| 精品欧美乱码久久久久久 | 免费精品99久久国产综合精品| 国产欧美一区二区三区鸳鸯浴 | 欧美激情一区在线观看| 欧美四级电影在线观看| 成人一区在线观看| 日本美女一区二区三区视频| 国产精品欧美一区二区三区| 欧美日韩国产乱码电影| 99久久伊人精品| 久久99精品久久久久久 | 欧美zozozo| 欧美综合色免费| 成人性生交大片免费看中文| 日韩中文字幕1| 一区二区三区欧美在线观看| 中文字幕精品三区| 精品国产伦一区二区三区免费 | 欧美成人官网二区| 色94色欧美sute亚洲线路二| 国产精品1区2区| 精品一区二区免费在线观看| 亚洲丶国产丶欧美一区二区三区| 中文字幕在线不卡视频| 国产午夜精品久久久久久久| 精品国产凹凸成av人网站| 欧美精品黑人性xxxx| 在线观看免费亚洲| 91久久人澡人人添人人爽欧美| 成人在线视频一区二区| 风间由美性色一区二区三区| 久久99精品一区二区三区| 蜜桃精品视频在线| 日韩激情一二三区| 日韩专区中文字幕一区二区| 亚洲国产精品人人做人人爽| 最新久久zyz资源站| 日韩美女啊v在线免费观看| 中文字幕日本乱码精品影院| 国产精品污网站| 国产精品萝li| 中文字幕中文字幕在线一区 | 欧美一区2区视频在线观看| 欧美日韩美女一区二区| 欧美精品1区2区3区| 欧美精品电影在线播放| 欧美一区欧美二区| 欧美精品一区二区三区在线| 国产亚洲综合色| 亚洲素人一区二区| 一区二区三区四区激情| 天堂在线亚洲视频| 久久国产精品第一页| 国产美女主播视频一区| 丰满亚洲少妇av| 欧美视频在线观看一区| 日韩一区二区三区免费看| 精品国产免费一区二区三区香蕉| 久久久久99精品国产片| 亚洲视频一二三| 亚洲h精品动漫在线观看| 美国av一区二区| a在线播放不卡| 欧美日韩国产首页| 欧美激情一区二区三区不卡| 亚洲色图19p| 久久激情五月激情| 成人av电影免费在线播放| 欧美日韩一区 二区 三区 久久精品| 777亚洲妇女| 国产欧美日韩综合精品一区二区| 中文字幕亚洲区| 另类欧美日韩国产在线| 成人av电影在线网| 欧美疯狂做受xxxx富婆| 国产亚洲欧美激情| 视频一区国产视频| 成人av综合在线| 日韩精品一区二区在线| 日韩美女精品在线| 国产一区二区三区久久久 | 成人综合在线观看| 337p亚洲精品色噜噜噜| 国产精品久久国产精麻豆99网站| 天天色天天爱天天射综合| 99精品桃花视频在线观看| 亚洲精品一区二区三区蜜桃下载|