springboot系列(八)springboot整合mybatis


 本篇介紹一下在springboot中整合mybatis ,使用mysql數據庫,集成durid 連接池技術,全部代碼是手動生成,沒有使用代碼生成器來構建代碼。

一、創建數據庫和表

 

二、在pom中添加依賴

 
         
 <!-- 由於maven官方倉庫在國外,本地更新很慢,建議使用中國的阿里倉庫,在pom中添加如下配置 -->
<repositories><!-- 代碼庫 -->
<repository>
<id>maven-ali</id>
<url>http://maven.aliyun.com/nexus/content/groups/public//</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
<checksumPolicy>fail</checksumPolicy>
</snapshots>
</repository>
</repositories>

<!-- Spring Boot Mybatis 依賴 -->
<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.0</version> </dependency> <!-- MySQL 連接驅動依賴 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.44</version> </dependency> <!-- Druid 數據連接池依賴 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.9</version> </dependency>
 

三、添加數據源配置文件 application-dev.yml(dev對應的是開發環境的配置文件)

1、application-dev.yml

spring:
    datasource:
        url: jdbc:mysql://localhost:3306/springbootdb?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8
        username: root
        password: 187664
        type: com.alibaba.druid.pool.DruidDataSource
        #連接池的配置信息
        initialSize: 10
        minIdle: 10
        maxActive: 100
        maxWait: 60000
        timeBetweenEvictionRunsMillis: 60000
        minEvictableIdleTimeMillis: 300000
        validationQuery: SELECT 1 FROM DUAL
        testWhileIdle: true
        testOnBorrow: false
        testOnReturn: false
        poolPreparedStatements: true
        maxPoolPreparedStatementPerConnectionSize: 20

四、添加mybatis的配置文件

mybatis.xml

<?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>
    <settings>  
        <setting name="mapUnderscoreToCamelCase" value="true" /> 
        <setting name="logImpl" value="STDOUT_LOGGING" />
    </settings>
</configuration>

五、在springboot核心配置文件中配置數據源和mybatis

application.yml

#數據源配置
spring:
    profiles:
        active: dev
# Mybatis配置
mybatis:
    configLocation: classpath:mybatis.xml              #mybatis配置文件路徑
    mapperLocations: classpath:mapper/**/*.xml  #所有mapper映射文件地址

六、分別創建entity、dao、service、controller 、mapper等文件,先來看看文檔結構

 

 1、user實體類

package com.chuhouqi.demo.entity;

import java.io.Serializable;

public class User implements Serializable {
    private String id;
    private String name;
    private String sex;
    private String age;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getAge() {
        return age;
    }

    public void setAge(String age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "User{" +
                "id='" + id + '\'' +
                ", name='" + name + '\'' +
                ", sex='" + sex + '\'' +
                ", age='" + age + '\'' +
                '}';
    }
}

2、dao接口

3、UserService接口

package com.chuhouqi.demo.service;

import com.chuhouqi.demo.entity.User;

public interface IUserService {

    public User getUser();
}

4、UserService接口的實現類

package com.chuhouqi.demo.service.impl;

import com.chuhouqi.demo.dao.IUserDao;
import com.chuhouqi.demo.entity.User;
import com.chuhouqi.demo.service.IUserService;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service("userService")
public class UserServiceImpl implements IUserService {

    @Autowired
    private IUserDao userDao;

    @Override
    public User getUser() {
        return userDao.getUser();
    }
}

5、UserController類

6、UserMapper映射文件

 

 七、啟動項目測試

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM