豆のSpringBoot統合MyBatisの設定

豆のSpringBoot統合MyBatisの設定

SpringBootは軽量な開発フレームワークは、NA XMLは、MyBatisの設定方法を教え、その後、元のXMLファイルの設定の多くを簡素化しています

YMLファイルのspringboot

spring:
  profiles:
    active: dev
  application:
    name: service-fishkk


##MySql
  datasource:
    url: jdbc:mysql://47.94.200.0:3306/mybatis?useSSL=false&serverTimezone=Asia/Shanghai&characterEncoding=utf8&userUnicode=true
    username: fishkk
    password: Root.123
    driver-class-name: com.mysql.jdbc.Driver
##redis路径配置
  redis:
    host: 47.94.200.0
    port: 6379
    database: 0
    password: 123456
    pool:
      max-active:8

##cloud 的配置 配置
  cloud:
    config:
      uri: http://localhost:8888/
      profile: dev
      label: master

##注册微服务
eureka:
  client:
    serviceUrl:
      defaultZone: http://localhost:8761/eureka/
##Mybatis配置
mybatis:
  type-aliases-package: com.boss.hr.train.fishkkmybatis.entity

そして、データベース接続プールの構成のSessionFactory

package com.boss.hr.train.fishkkmybatis.config.dao;

import com.mchange.v2.c3p0.ComboPooledDataSource;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import javax.validation.Valid;
import java.beans.PropertyVetoException;

/**
 *数据库资源连接的配置
 *
 *@author  fishkk
 *@version  1.0.0
 *@since
 *
 * 修改人信息
 *@author
 *@version
 *@since
 *
 */
@Configuration
@MapperScan("com.boss.hr.train.fishkkmybatis.dao")
public class DataSourceConfiguration {
    /**
     *  数据库驱动
     */
    @Value("${spring.datasource.driver-class-name}")
    private String jdbcDriver;

    /**
     *  数据库地址
     */
    @Value("${spring.datasource.url}")
    private String jdbcUrl;

    /**
     * 数据库连接名
     */
    @Value("${spring.datasource.username}")
    private String jdbcUsername;

    /**
     * 数据库连接密码
     */
    @Value("${spring.datasource.password}")
    private String jdbcPassword;

    /**
     * 返回数据库连接池
     */
    @Bean(name = "dataSource")
    public ComboPooledDataSource createDateSource() throws PropertyVetoException {
        ComboPooledDataSource dataSource = new ComboPooledDataSource();
        dataSource.setDriverClass(jdbcDriver);
        dataSource.setJdbcUrl(jdbcUrl);
        dataSource.setUser(jdbcUsername);
        dataSource.setPassword(jdbcPassword);
        //关闭连接后不自动commit
        dataSource.setAutoCommitOnClose(false);
        return dataSource;
    }
}

@valueは、パラメータファイルYMLから情報を取得することによって構成されています

package com.boss.hr.train.fishkkmybatis.config.dao;

import org.mybatis.spring.SqlSessionFactoryBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;

import javax.annotation.Resource;
import javax.sql.DataSource;
import java.io.IOException;

/**
 * Session工厂的配置文件
 *
 *@author  fishkk
 *@version  1.0.0
 *@since
 *
 * 修改人信息
 *@author
 *@version
 *@since
 *
 */
@Configuration
public class SessionFactoryConfiguration {
    /**
     *  自动装在数据库资源bean
     */
    @Resource
    private DataSource dataSource;

    @Bean(name = "sqlSessionFactory")
    public SqlSessionFactoryBean createSqlSessionFactory() throws IOException {
        SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
        //Mybatis的参数配置
        sqlSessionFactoryBean.setConfigLocation(new ClassPathResource("mybatis-config.xml"));
        PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
        //启用Mybatis的全部xml文件,就不需要一个个去打开
        String packageSerchPath = PathMatchingResourcePatternResolver.CLASSPATH_ALL_URL_PREFIX + "/mapper/**.xml";
        sqlSessionFactoryBean.setMapperLocations(resolver.getResources(packageSerchPath));
        sqlSessionFactoryBean.setDataSource(dataSource);
        //实体类所在的包
        sqlSessionFactoryBean.setTypeAliasesPackage("com.boss.hr.train.fishkkmybatis.entity");
        return sqlSessionFactoryBean;
    }
}

上記の2つの貫通ビーンはMyBatisのデータベースを操作するために首尾よく使用することができ

マッパーの下で、データベースとDAO層のための演算命令である
config.xmlの設定パラメータをMyBatisのは、MyBatisのあなたがこぶを回すことができ、コーディング、などが設けられています。

おすすめ

転載: www.cnblogs.com/fishkk/p/11367996.html