四 Mybatis對映檔案

2021-09-26 12:17:29 字數 3890 閱讀 9173

對映檔案指導著mybatis如何進行資料庫曾刪改查,有著非常重要的意義。

檔案頭:

<?xml version="1.0" encoding="utf-8" ?>

namespace

=>

>

insert 、update、delete元素

資料變更語句 insert,update 和 delete 的實現非常接近

"insertauthor"

parametertype

="domain.blog.author"

flushcache

="true"

statementtype

="prepared"

keyproperty="

" keycolumn="

" usegeneratedkeys="

" timeout

="20"

>

"updateauthor"

parametertype

="domain.blog.author"

flushcache

="true"

statementtype

="prepared"

timeout

="20"

>

"deleteauthor"

parametertype

="domain.blog.author"

flushcache

="true"

statementtype

="prepared"

timeout

="20"

>

官網截圖:

示例:bean檔案:

package com.jerry.beans;

import org.apache.ibatis.type.alias;

/** * 員工實體類

* @author jerry

* @create 2019-08-21 16:17

*/@alias

("employee"

)public

class

employee

public

void

setempid

(integer empid)

public string getempname()

public

void

setempname

(string empname)

public string getemail()

public

void

setemail

(string email)

public string getgender()

public

void

setgender

(string gender)

public string getdid()

public

void

setdid

(string did)

public

employee

(integer empid, string empname, string email, string gender, string did)

public

employee()

@override

public string tostring()

';}}

import com.jerry.beans.employee;

import org.apache.ibatis.annotations.param;

/** * @author jerry

* @create 2019-08-21 17:24

*/public

inte***ce

<?xml version="1.0" encoding="utf-8" ?>

namespace

=>

"getempbyidandempname"

resulttype

="com.jerry.beans.employee"

>

select emp_id,emp_name,email,gender,d_id from tbl_emp where emp_id = # and emp_name=#

select

>

"getempbyid"

resulttype

="com.jerry.beans.employee"

>

select emp_name,email,gender,d_id from tbl_emp where emp_id = #

select

>

"addemp"

usegeneratedkeys

="true"

keyproperty

="empid"

>

insert into tbl_emp (emp_name,email,gender,d_id)

values (#,#,#,#);

insert

>

"deleteempbyid"

>

delete from tbl_emp where emp_id=#

delete

>

"updateemp"

>

update tbl_emp set

emp_name=#,email=#,gender=#,d_id=#

where emp_id=#

update

>

>

主鍵生成方式

首先,如果你的資料庫支援自動生成主鍵的字段(比如 mysql 和 sql server),那麼你可以設定 usegeneratedkeys=」true」,然後再把 keyproperty 設定到目標屬性上就 ok 了。

"addemp"

usegeneratedkeys

="true"

keyproperty

="empid"

>

insert into tbl_emp (emp_name,email,gender,d_id)

values (#,#,#,#);

insert

>

對於不支援自增對於不支援自動生成型別的資料庫(oracle)或可能不支援自動生成主鍵的 jdbc 驅動,mybatis 有另外一種方法來生成主鍵。

"addemp"

databaseid

="oracle"

>

keyproperty

="id"

order

="before"

resulttype

="integer"

>

select employees_seq.nextval from dual

selectkey

>

insert into employees(employee_id,last_name,email)

values(#,#,#)

insert

>

Mybatis 四 對映檔案

參考入門程式中的finduserbyid的對映檔案。位置config user.xml 參考入門程式insertuser。綜合查詢時,可能會根據使用者資訊 商品資訊 訂單資訊等作為條件進行查詢,使用者資訊中的查詢條件由 使用者的名稱和性別進行查詢 加上getter和setter 和傳遞pojo型別一...

MyBatis對映檔案

5 刪除 6 更新 7 根據員工id和姓名獲取員工物件 8 測試類 mybatis 的真正強大在於它的對映語句,也是它的魔力所在。由於它的異常強大,對映器的 xml 檔案就顯得相對簡單。如果拿它跟具有相同功能的 jdbc 進行對比,你會立即發現省掉了將近 95 的 mybatis 就是針對 sql ...

Mybatis對映檔案

查詢語句是mybatis中最常用的元素之一,mybatis的基本原則之一是 在每個插入,更新,或刪除操作之間,通常會執行多個查詢操作。因此,mybatis在查詢和結果對映做了相當多的改進。乙個簡單查詢的select元素是很簡單的 select from person where id 這個語句名為s...