1. 程式人生 > >Springboot+mybatis+ibatis mysql鏈接

Springboot+mybatis+ibatis mysql鏈接

clas 創建 數據 ibatis row vat amp 密碼 .sql

1.application.properties 配置信息

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/datebasename
spring.datasource.username=root
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

2.添加pom.xml

<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>

        <dependency>
            <groupId>org.apache.ibatis</groupId>
            <artifactId>ibator</artifactId>
            <version>1.2.1.681</version>
        </dependency>

        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
            <version>1.3.2</version>
        </dependency>

        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.6</version>
        </dependency>
        <dependency>
            <groupId>com.zaxxer</groupId>
            <artifactId>HikariCP</artifactId>
            <version>3.2.0</version>
        </dependency>

3.數據庫連接

import com.zaxxer.hikari.HikariDataSource;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Primary; import org.springframework.stereotype.Component; import javax.sql.DataSource; //加載com.example.demo.mapper.test目錄下的sql,並關聯到當前到數據庫 @Component @MapperScan(value = "com.example.demo.mapper.test", sqlSessionFactoryRef = "sqlSessionFactoryTest")
public class TestDateSource { //讀取配置文件信息 @Value("${spring.datasource.url}") private String url; @Value("${spring.datasource.username}") private String userName; @Value("${spring.datasource.password}") private String password; @Value("${spring.datasource.driver-class-name}") private String driverClassName; @Primary @Bean(name = "dateSourceTest") public DataSource dataSource() { return getDataSource(url, userName, password, driverClassName); } //實例化 @Bean(name = "sqlSessionFactoryTest") public SqlSessionFactory sqlSessionFactory(@Qualifier("dateSourceTest") DataSource ds) throws Exception { SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean(); sqlSessionFactoryBean.setDataSource(ds); return sqlSessionFactoryBean.getObject(); } //這裏用到了HikariDataSource連接池,定義一個連接池 private HikariDataSource getDataSource(String url, String userName, String password, String driverClassName) { final HikariDataSource ds = new HikariDataSource(); ds.setJdbcUrl(url); ds.setUsername(userName); ds.setPassword(password); ds.setDriverClassName(driverClassName); return ds; } }

4.在com.example.demo.mapper.test目錄下創建mapper接口,直接進行數據庫的數據操作

import org.apache.ibatis.annotations.*;
import org.mapstruct.Mapper;

import java.util.HashMap;
import java.util.List;

@Mapper
public interface UserMapper {

    @Select("select *from user")
    List<HashMap> getUser();

    @Select("select *from user where username=#{userName}")
    List<HashMap> getuserName(@Param("userName") String userName);

  
}

5.在service調用對應的mapper接口

@Service
public class TestService {

    @Resource
    UserMapper userMapper;

    public JSONObject getUSer() {

        JSONObject mapOfColValues = new JSONObject();

        List<HashMap> order = userMapper.getUser();
        if (CollectionUtils.isNotEmpty(order)) {
            for (int i = 0; i < order.size(); i++) {
                mapOfColValues.put("id", order.get(i).get("id"));
                mapOfColValues.put("用戶名", order.get(i).get("user_name"));
                mapOfColValues.put("昵稱", order.get(i).get("real_name"));
                mapOfColValues.put("手機號", order.get(i).get("mobile"));
                mapOfColValues.put("密碼", order.get(i).get("password"));
            }
        } else {
            mapOfColValues.put("result", "沒有數據");
        }

        return mapOfColValues;

    }
}

Springboot+mybatis+ibatis mysql鏈接