mybatis 簡介與基本使用

2021-07-16 15:09:26 字數 2959 閱讀 9288

**

mybatis是乙個資料持久層的框架;

框架:就是乙個軟體的半成品;乙個框架中包含了多個元件;核心配置檔案 :只有乙個

對映檔案 :多個,通常每個表對應乙個

核心配置檔案

乙個mybatis工程只需要乙個核心配置檔案 ,這個配置檔案中包含

mybatis的一些通過配置;例如:

資料庫連線;*

載入的對映檔案;*

通用選項配置;

類的別名等;

核心配置檔案中的配置項

properties;

setting:設定(功能開關)

typealiases:型別的別名

environments:環境配置:

資料庫連線資訊;資料庫連線池;

事務處理

資料庫處理的步驟

1.開啟連線;

2.運算元據庫

3.斷開連線;

log4j

這是乙個使用最廣泛的日誌處理元件;

目前,基本所有的框架都支援log4j

使用方法:只需要將定義好的log4j.properties檔案放置到src的根目錄即可;

對映檔案的編寫;

select 標記:用來定義查詢語句;

屬性:id:語句的唯一標識;

resulttype:返回值的型別,如果是乙個集合,這個值代表集合中的型別;map

parametertype:引數型別,最多有乙個(如有多個,可封裝到vo或map)

statementtype:執行sql語句的介面型別,有三個可選值 statement,prepared,callable,預設是prepared

insert標記

作用:用於插入;

獲得生成的主鍵的方式:

如果資料庫本身支援自動增長,則可以使用insert標記的usegeneratedkeys和keyproperty屬性;

如果資料庫本身不支援,可以使用selectkey子標記來獲得主鍵值;

select max(accountid)+3 from account

update和delete (沒有特殊的屬性)

sql標記

用於包含一些重複使用的sql片斷;通過include標記可以引入它;

select accountid,name,remain from account

空值的處理

# #

與資料庫及驅動有關;如果資料庫不允許,則可以使用此方式插入空值;

字串替換 屬性

名;注意

,這種寫

法應該通

過vo或

map來

傳值;高

級對映可

以通過自

定義對映

型別來實

現高階映

射;實現

步驟;定

義乙個r

esul

tmap

標記;有

兩個屬性

id,t

ype一

定要有;

此標記中

可以使用

id,r

esul

t,co

llec

tion

(一對多

),as

soci

atio

n(多對

一)等子

標記;可

以能過s

elec

t標記來

使用re

sult

map,

(通過r

esul

tmap

屬性指定

對映型別

id) 和 #有什麼區別? :是

用於字元

串的替換

;通常在

orde

rby 時使用;但它會引發sql注入的風險;因此這個值最好避免由使用者直接輸入;

#{}:用來給ps賦值;

多個引數;

可以在dao介面中為每個引數增加乙個@param註解,這樣,在對映檔案中就可以通過註解上的名稱來獲得多個引數;例如;

public void insert(@param(「name」) string name,@param(「a」) int remain);

多對一對映;

可用於一對一,和多對一;

作業要求;

一對多表的curd;

jquery(ajax)->jsp->jstl/el->servlet>service->dao->mybatis->(mysql/oracle)

動態sql

sql語句不是固定的,有時需要根據使用者的請求,動態生成不同的sql語句,通過mybatis的一些標記可以有效的解決這類問題;

if,where,trim,choose,foreach

if:用來判斷某個表示式是否成立

choose:也是用也判斷,只是增加乙個 else項;

where:條件標記,用它可以動態的刪除多餘的and ,or,where

set:用來執行update語句的動態標記,用它可以刪除字尾,號;

trim:可以刪除任何字首及字尾

四個屬性:

prefix:增加字首

suffix:增加字尾

prefixoverrides:去掉第乙個符號

suffixoverrides:去掉最後乙個符號;

foreach:用於迴圈

collection:需要迭代的集合,list型別使用list,陣列型別使用array,

item:遍歷到的當前元素;

open:字首

close:字尾

seperator:分隔符

index:索引

jquery基本簡介與使用

它是乙個功能強大的js庫 它將一些常用的js通用功能和操作進行了封裝 是目前最流行的js庫 write less,do more 輕量級 小 跨瀏覽器 鏈式程式設計 讓程式設計更加簡單 使用簡單 入門快 jquery的模組化分 入口模組 相當於window.nl ad function f unct...

Mybatis基本使用(一)

實體 public class user public void setid long id public string getusername public void setusername string username public string getpwd public void setp...

mybatis的基本使用

一 mybatis概述 乙個實現資料持久化的開源框架。是對jdbc的封裝。二 mybatis核心介面和類 1 sqlsessionfactorybuilder sqlsessionfactory sqlsession 2 獲取原理sqlsessionfactory 三 使用方式 1 新建資料庫表 t...