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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java技术分享:小白如何入门Mybatis?

發(fā)布時間:2024/9/30 java 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java技术分享:小白如何入门Mybatis? 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

本文由小千給大家分享小白如何入門Mybatis。

一、數(shù)據(jù)持久化概念和ORM原理

1、數(shù)據(jù)持久化:持久化是程序數(shù)據(jù)在瞬時狀態(tài)和持久狀態(tài)間的轉(zhuǎn)換過程

2、ORM:編寫程序的時候,以面向?qū)ο蟮姆绞教幚頂?shù)據(jù)。保存數(shù)據(jù)的時候卻以關(guān)系型數(shù)據(jù)庫的方式存儲數(shù)據(jù)

3、ORM提供:

(1) 在持久化對象上執(zhí)行基本的增、刪、改、查操作

(2) 對持久化對象提供一種查詢語言或者API

(3) 對象關(guān)系映射工具

(4) 提供與事務(wù)對象交互、執(zhí)行檢查、延遲加載以及其他優(yōu)化功能

二、MyBatis的概念以及優(yōu)點特性

1、簡單易學(xué):沒有任何第三方依賴,本身很簡單

2、靈活:不會影響編程或數(shù)據(jù)庫的設(shè)計,sql寫在xml中,便于統(tǒng)一管理優(yōu)化

3、解耦:將業(yè)務(wù)邏輯和數(shù)據(jù)訪問邏輯分離,設(shè)計清晰,便于維護。Sql與代碼分離,方便維護

三、理解核心類的作用域和生命周期,核心配置

1、SqlSessionFactoryBuilder

(1) 生命周期及作用域:用過即丟,生命周期只存在方法體內(nèi)

(2) 作用:可重用其來創(chuàng)建多個 SqlSessionFactory 實例,負責構(gòu)建SqlSessionFactory,并提供多個build方法的重載

2、SqlSessionFactory

(1) 生命周期及作用域:生命周期與應(yīng)用的生命周期相同,存在于整個應(yīng)用運行時,并且同時只能存在一個對象實例(單例)。作用域為Application

作用:創(chuàng)建SqlSession實例

參數(shù):true:關(guān)閉事務(wù)、false開啟事務(wù)(默認)

注:當開始事務(wù)的時候,對表做增刪改操作時,需要提交事務(wù):commit

3、SqlSession

(1) 生命周期及作用域:一個request請求期間,線程級別

(2) 作用(兩種):

① 通過SqlSession實例直接運行映射的sql語句

② 基于Mapper接口方式操作數(shù)據(jù)

1、mybatis-config.xml系統(tǒng)核心配置文件

2、Mapper.xml:SQL映射文件

四、搭建MyBatis環(huán)境

mybatis-config.xml系統(tǒng)核心配置文件:

(1) 頭文件

(1) 根元素:

(2) 配置元素(要放在根元素內(nèi)):

① properties 可以配置在Java 屬性配置文件中

② settings 修改 MyBatis 在運行時的行為方式:9

③ typeAliases 為 Java 類型命名一個別名(簡稱)

④ typeHandlers 類型處理器

⑤ objectFactory 對象工廠

⑥ plugins 插件

⑦ environments 環(huán)境

⑧ environment 環(huán)境變量

  • transactionManager 事務(wù)管理器

  • dataSource 數(shù)據(jù)源

  • ⑨ mappers 映射器

    五、掌握全局配置文件結(jié)構(gòu)內(nèi)容

    1、properties配置兩種方式:

    (1) 利用外部文件:database.properties

    (2) 直接在xml文件中配置數(shù)據(jù)庫信息

    2、settings元素:(共有9個,自行百度瀏覽下其他得屬性)

    (1) cacheEnabled:對在此配置文件下得所有cache(緩存)進行全局性開/關(guān)設(shè)置(true/false),默認為true

    (2) LazyLoadingEnabled:全局性設(shè)置懶加載。如果設(shè)為”false”,則所有相關(guān)聯(lián)得都會被初始化加載:(true/false),默認為true

    3、typeAliases元素:設(shè)置映射文件返回結(jié)果別名

    4、environments環(huán)境:development開發(fā)環(huán)境 test測試環(huán)境

    5、environment環(huán)境變量,id指向環(huán)境

    6、transactionManager

    <transactionManager type=”JDBC”/>


    7、dataSource

    type:

    (1)UNPOOLED:這個數(shù)據(jù)源的實現(xiàn)只是每次被請求時打開和關(guān)閉鏈接

    (2)POOLED:這種數(shù)據(jù)源的實現(xiàn)利用”池”的概念將JDBC連接對象組織起來

    (3)JNDI:自行百度

    8、mappers:映射器,配置加載映射文件

    六、Mapper映射器:

    1、頭文件

    2、根元素:

    3、子元素:select、insert、delete、update、resultMap

    本文來自千鋒教育,轉(zhuǎn)載請注明出處。

    總結(jié)

    以上是生活随笔為你收集整理的Java技术分享:小白如何入门Mybatis?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。