spring整合mybatis

jdbc.propertiesjava

jdbc.user=root
jdbc.password=root
jdbc.url=jdbc:mysql://localhost:3306/project_crowd?useUnicode=true&characterEncoding=UTF-8
jdbc.driver=com.mysql.jdbc.Driver

mybatis-config.xml,mybatis全局配置文件mysql

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>

</configuration>

spring-persist-mybatis.xml文件spring

<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd">


	<!-- 加載 jdbc.properties -->
	<context:property-placeholder location="classpath:jdbc.properties" />

	<!-- 配置數據源 -->
	<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
		<!-- 鏈接數據庫的用戶名 -->
		<property name="username" value="${jdbc.user}" />
		<!-- 鏈接數據庫的密碼 -->
		<property name="password" value="${jdbc.password}" />
		<!-- 目標數據庫的 URL 地址 -->
		<property name="url" value="${jdbc.url}" />
		<!-- 數據庫驅動全類名 -->
		<property name="driverClassName" value="${jdbc.driver}" />
	</bean>

	<!-- 配置 SqlSessionFactoryBean -->
	<bean id="sqlSessionFactoryBean" class="org.mybatis.spring.SqlSessionFactoryBean">
		<!-- 裝配數據源 -->
		<property name="dataSource" ref="dataSource" />
		<!-- 指定 MyBatis 全局配置文件位置 -->
		<property name="configLocation" value="classpath:mybatis-config.xml" />
		<!-- 指定 Mapper 配置文件位置 -->
		<property name="mapperLocations" value="classpath:mybatis/mapper/*Mapper.xml" />
	</bean>

	<!-- 配置 MapperScannerConfigurer -->
	<!-- 把 MyBatis 建立的 Mapper 接口類型的代理對象掃描到 IOC 容器中 -->
	<bean id="mapperScannerConfigurer" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
		<!-- 使用 basePackage 屬性指定 Mapper 接口所在包 -->
		<property name="basePackage" value="com.atguigu.crowd.mapper" />
	</bean>
</beans>

編寫測試類sql

package com.atguigu.crowd.test;

import java.sql.Connection;
import java.sql.SQLException;

import javax.sql.DataSource;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4Cla***unner;

import com.atguigu.crowd.entity.Admin;
import com.atguigu.crowd.mapper.AdminMapper;

@RunWith(SpringJUnit4Cla***unner.class)
@ContextConfiguration(locations= {"classpath:spring-persist-mybatis.xml"})
public class CrowdSpringTest {
	
	@Autowired
	private DataSource dataSource;
	
	@Autowired
	private AdminMapper adminMapper;
	
	@Test
	public void testConnection() throws SQLException {
		Connection connection = dataSource.getConnection();
		System.out.println(connection);
	}
	
	@Test
	public void testInsertAdmin() {
		Admin admin = new Admin(null,"tom","123","湯姆","tom@qq.com",null);
		int count = adminMapper.insert(admin);
		System.out.println("受影響行數="+count);
	}

}

測試須要引入以下依賴數據庫

<!-- junit 測試 -->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-test</artifactId>
			<scope>test</scope>
		</dependency>

在這裏插入圖片描述

相關文章
相關標籤/搜索