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

Mybatis增刪改查mapper文件寫法詳解

 更新時間:2017年03月01日 10:00:06   作者:real_孟林潔  
這篇文章主要介紹了Mybatis增刪改查mapper文件寫法的相關(guān)資料,需要的朋友可以參考下

  1. 插入

<mapper namespace="需要實(shí)現(xiàn)接口的全類名">
 <insert id="需要實(shí)現(xiàn)的接口里的方法名" parameterType="方法參數(shù)類型,如果是對象要寫全類名">
  INSERT sql命令(命令里通過#{}獲取對象屬性)
  <!--注意屬性名區(qū)分大小寫 -->
 </insert>
<mapper>

EG:

<mapper namespace="com.mlj.dao.PersonDao">
 <insert id="insertPerson" parameterType="com.mlj.entity.Prac_Person">
  INSERT INTO PRAC_PERSON(p_NAME,P_PASSWORD) VALUES(#{name},#{password})
 </insert>
</mapper>

2. 查詢

<select id="方法名" parameterType="方法參數(shù)類型" resultType="方法返回值類型,全類名">
 SELECT 表里字段名 AS 結(jié)果字段名 FROM 表名 WHERE 條件
 <!--注意:結(jié)果字段名與屬性名保持一致,區(qū)分大小寫-->
</select>

EG:

<resultMap type="Address" id="address">
 <result column="A_PERSON" property="personId"/>
 <result column="A_ADDRESS" property="address"/>
 <result column="A_NUMBER" property="number"/></resultMap>
 <select id="selectAddressByPersonId"
 parameterType="java.lang.String" resultMap="address">
   SELECT * FROM PRAC_ADDRESS LEFT JOIN PRAC_PERSON ON A_PERSON=#{personId} AND PRAC_ADDRESS.A_PERSON=PRAC_PERSON.P_ID
 </select>

此處先配置resultMapp,使表列名與屬性名一致。

3.修改

與前面插入除了sql語句基本一致,直接貼代碼

<update id="updatePersonInformation" parameterType="com.mlj.entity.Prac_Person" > 
  UPDATE PRAC_PERSON SET P_NAME=#{name},P_PASSWORD=#{password} WHERE P_ID=#{id}
  <!-- 屬性字段名區(qū)分大小寫 -->
</update>

4.刪除

與前面插入除了sql語句基本一致,直接貼代碼

<delete id="deletePerson" parameterType="java.lang.Integer">
  DELETE FROM PRAC_PERSON WHERE P_ID=#{id}
</delete>

下面看下mybatis的mapper配置文件的一般寫法

mapper.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.hzcominfo.voucher.CommodityCategoryManager">
<cache-ref namespace="com.hzcominfo.dataggr.cloud" />
<insert id="insertCommodityCategoryManager" parameterType="com.hzcominfo.voucher.mapper.CommodityCategoryManager" keyProperty="id" >
INSERT INTO COMMODITY_CATEGORY_MANAGER (
<include refid="fields" />
) VALUES (
<include refid="values" />
)
</insert>
<update id="updateCommodityCategoryManager" parameterType="com.hzcominfo.voucher.mapper.CommodityCategoryManagerKey">
UPDATE COMMODITY_CATEGORY_MANAGER 
<include refid="set" />
<include refid="where" />
</update>
<update id="deleteCommodityCategoryManager" parameterType="com.hzcominfo.voucher.mapper.CommodityCategoryManagerKey">
DELETE FROM COMMODITY_CATEGORY_MANAGER <include refid="where" />
</update>
<select id="selectCommodityCategoryManager" parameterType="String"
resultType="com.hzcominfo.voucher.mapper.CommodityCategoryManager">
SELECT * FROM COMMODITY_CATEGORY_MANAGER <include refid="where" />
</select>
<select id="selectCommodityCategoryManagerByCriteria" parameterType="net.butfly.albacore.dbo.criteria.Criteria"
resultType="com.hzcominfo.voucher.mapper.CommodityCategoryManagerKey">
SELECT CATEGORY_ID, USER_ID FROM COMMODITY_CATEGORY_MANAGER <include refid="where" />
</select>
<select id="countCommodityCategoryManagerByCriteria" parameterType="net.butfly.albacore.dbo.criteria.Criteria"
resultType="long">
SELECT count(*) FROM COMMODITY_CATEGORY_MANAGER <include refid="where" />
</select> 
<sql id="fields">
<if test="categoryId!=null">CATEGORY_ID</if>
<if test="userId!=null">,USER_ID</if>
</sql>
<sql id="values">
<if test="categoryId!=null">#{categoryId}</if>
<if test="userId!=null">,#{userId}</if>
</sql>
<sql id="set">
<set>
<trim prefix="" prefixOverrides=",">
<if test="categoryId!=null">,CATEGORY_ID=#{categoryId}</if>
<if test="userId!=null">,USER_ID=#{userId}</if>
</trim>
</set>
</sql>
<sql id="where">
<where>
 <trim prefix="" prefixOverrides="and|or" >
<if test="categoryId!=null">AND CATEGORY_ID=#{categoryId}</if>
<if test="userId!=null">AND USER_ID=#{userId}</if>
</trim>
</where>
</sql>
</mapper>

以上所述是小編給大家介紹的Mybatis增刪改查mapper文件寫法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 一篇文章帶你了解如何正確使用java線程池

    一篇文章帶你了解如何正確使用java線程池

    這篇文章主要介紹了如何正確使用java線程池,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-09-09
  • java選擇框、單選框和單選按鈕

    java選擇框、單選框和單選按鈕

    本文給大家介紹的是java中選擇框、單選框和單選按鈕的操作方法,十分的簡單實(shí)用,有需要的小伙伴可以參考下。
    2015-06-06
  • 計(jì)算機(jī)編程語言發(fā)展史

    計(jì)算機(jī)編程語言發(fā)展史

    這篇文章主要介紹了Java計(jì)算機(jī)編程語言發(fā)展史,編程語言?可以簡單的理解為一種計(jì)算機(jī)和人都能識別的語言。一種計(jì)算機(jī)語言讓程序員能夠準(zhǔn)確地定義計(jì)算機(jī)所需要使用的數(shù)據(jù),并精確地定義在不同情況下所應(yīng)當(dāng)采取的行動,下面詳細(xì)內(nèi)容,需要的小伙伴可以參考一下
    2022-01-01
  • java操作oracle數(shù)據(jù)庫示例

    java操作oracle數(shù)據(jù)庫示例

    這篇文章主要介紹了java操作oracle數(shù)據(jù)庫示例,需要的朋友可以參考下
    2014-04-04
  • 簡單聊一聊Spring中Bean別名的處理原理

    簡單聊一聊Spring中Bean別名的處理原理

    今天來和小伙伴們聊一聊 Spring 中關(guān)于 Bean 別名的處理邏輯,別名,顧名思義就是給一個 Bean 去兩個甚至多個名字,整體上來說,在 Spring 中,有兩種不同的別名定義方式,感興趣的小伙伴跟著小編一起來看看吧
    2023-09-09
  • Java中Elasticsearch的4種分頁方式詳解

    Java中Elasticsearch的4種分頁方式詳解

    在?Elasticsearch?中,有?4種常見的分頁方法,本文將帶大家分析一下每種方法的優(yōu)缺點(diǎn)以及我們該如何選擇,感興趣的小伙伴可以參考一下
    2025-01-01
  • Java實(shí)現(xiàn)單鏈表SingleLinkedList增刪改查及反轉(zhuǎn) 逆序等

    Java實(shí)現(xiàn)單鏈表SingleLinkedList增刪改查及反轉(zhuǎn) 逆序等

    單鏈表是鏈表的其中一種基本結(jié)構(gòu)。一個最簡單的結(jié)點(diǎn)結(jié)構(gòu)如圖所示,它是構(gòu)成單鏈表的基本結(jié)點(diǎn)結(jié)構(gòu)。在結(jié)點(diǎn)中數(shù)據(jù)域用來存儲數(shù)據(jù)元素,指針域用于指向下一個具有相同結(jié)構(gòu)的結(jié)點(diǎn)。 因?yàn)橹挥幸粋€指針結(jié)點(diǎn),稱為單鏈表
    2021-10-10
  • 使用SpringMVC接收文件流上傳和表單參數(shù)

    使用SpringMVC接收文件流上傳和表單參數(shù)

    這篇文章主要介紹了使用SpringMVC接收文件流上傳和表單參數(shù),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Eclipse中配置Maven build打包的方法步驟

    Eclipse中配置Maven build打包的方法步驟

    這篇文章主要介紹了Eclipse中配置Maven build打包的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • java并發(fā)編程實(shí)例分析

    java并發(fā)編程實(shí)例分析

    在本文里我們給大家分享了關(guān)于java并發(fā)編程實(shí)例分析以及相關(guān)知識點(diǎn),需要的朋友們學(xué)習(xí)下。
    2019-03-03

最新評論

秦皇岛市| 社旗县| 宕昌县| 丹棱县| 青神县| 淮阳县| 沂南县| 台前县| 清流县| 承德市| 称多县| 曲阜市| 大姚县| 镇赉县| 清镇市| 嘉义市| 金门县| 绿春县| 临城县| 镇安县| 西乌珠穆沁旗| 长垣县| 武邑县| 金坛市| 凤凰县| 富平县| 金乡县| 石阡县| 贡觉县| 新绛县| 社旗县| 云阳县| 宁明县| 惠来县| 偏关县| 泰宁县| 泗水县| 珲春市| 孙吴县| 宁夏| 岢岚县|