Spring整合MyBatis框架

2021-10-23 09:45:24 字數 3567 閱讀 4297

public

class

student

<

/select>

"addstudent" parametertype=

"org.yao.entity.student"

>

insert into student

(stunum,stuname,stuage)

values

(#,#,#)

<

/insert>

<

4、之前使用mybatis,通過conf.xml檔案產生sqlsessionfactory物件。現在整合的時候,需要通過spring管理sqlsessionfactory,因此產生sqlsessionfactory物件所需要的資料庫資訊不再放入conf.xml配置檔案中,而是放入spring配置檔案中。

db.properties

driver=com.mysql.jdbc.driver

url=jdbc:mysql:

//localhost:

3306

/yqusername=root

password=

123456

在spring中引入db.properties

<

!-- 載入db配置檔案 ,載入屬性檔案需要通過preferencesplaceholderconfigurer來載入 --

>

"config"

class

="org.springframework.beans.factory.config.preferencesplaceholderconfigurer"

>

"locations"

>

classpath:db.properties<

/value>

<

/array>

<

/property>

<

/bean>

<

!-- 配置資料庫資訊,替代mybatis配置檔案conf.xm --

>

"datasource"

class

="org.apache.commons.dbcp.basicdatasource"

>

<

!-- 通過el來獲取 --

>

"driverclassname" value=

"$">

<

/property>

"url" value=

"$">

<

/property>

"username" value=

"$">

<

/property>

"password" value=

"$">

<

/property>

<

/bean>

package org.yao.dao.impl;

import org.apache.ibatis.session.sqlsession;

import org.mybatis.spring.support.sqlsessiondaosupport;

import org.yao.entity.student;

public

class

studentdao

extends

sqlsessiondaosupport

implements

}

<

!-- 在springioc容器中建立mybatis的核心類sqlsessioinfactory --

>

"sqlsessionfactory"

class

="org.mybatis.spring.sqlsessionfactorybean"

>

"datasource" ref=

"datasource"

>

<

/property>

<

!-- 載入mybatis配置檔案

"configlocation" value=

"classpath:conf.xml"

>

<

/property>

-->

<

!>

>

<

/property>

<

/bean>

"studentservice"

class

="org.yao.service.impl.studentserviceimpl"

>

"studentdao" ref=

"daos"

>

<

/property>

<

/bean>

<

!>

"studentdao"

class

="org.yao.dao.impl.studentdao"

>

將spring配置的sqlsession物件交給dao層

"sqlsessionfactory" ref=

"sqlsessionfactory"

>

<

/property>

<

/bean>

<

!>

"studentdao"

class

=>

>

<

/property>

不管哪種方式都要配置資料庫資訊

"sqlsessionfactory" ref=

"sqlsessionfactory"

>

<

/property>

<

/bean>

<

! --

>

"daos"

class

=>

<

!-- name值不能改變 --

>

"sqlsessionfactorybeanname" value=

"sqlsessionfactory"

>

<

/property>

<

!>

"basepackage" value=

>

<

/property>

<

/bean>

測試方法

package org.yao.test;

import org.yao.entity.student;

import org.yao.service.impl.studentserviceimpl;

public

class

test

}

通過Spring整合MyBatis

step1.導包 step2.新增spring配置檔案 bean來代替 sqlsessionfactorybean step3.配置sqlsessionfactorybean step4.實體類step5.對映檔案spring容器裡面 預設的id是首字母小寫之後的介面名 step8.啟動spring...

spring整合MyBatis總結

service層的物件建立的底層實現,是依賴spring ioc 的bean id來建立,不管是顯示bean,還是自動裝配。再底層細緻,就是反射 無參構造方法 層與層之間都必須有需要有spring bean 的定義 不管是顯示定義,還是隱藏定義 類與類之間的依賴 原始是通過在配置檔案裡寫明ref實現...

Spring整合MyBatis 基礎

基礎準備工作 整合準備工作 spring配置檔案,加上context命名空間,用於載入properties檔案 開啟載入properties檔案 配置資料來源druid 備用 定義service層bean,注入dao層bean dao的bean無需定義,使用 自動生成 整合工作 匯入spring整合...