单数据库配置(Java)

导读:本篇文章讲解 单数据库配置(Java),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

前言

通过翻看我前面的文章,发现并没有整理总结出数据库的配置和连接使用方法,现在在这里对其进行详细的整理。

注意

本数据库连接的方法,适用于maven项目,和springboot配置有一些出入

配置步骤

按照我的这种方式主要分为以下几步:

  1. 配置pom.xml依赖
  2. 先创建数据库的驱动配置xml文件
  3. 创建utils工具文件夹,在该文件编写mapper工具,主要是调用驱动配置文件
  4. 创建数据库查询语句xml
  5. 创建mapper文件夹,进行实现数据库的增删改查语句
  6. 在启动类调用并执行

项目结构图

根据以上的步骤。贴出来项目的结构图(只包含数据库配置)
以mysql数据库为例
在这里插入图片描述

配置pom.xml

配置pom.xml有一个是一定要的,就是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>8.0.26</version>
        </dependency>

综合以上,最终pom.xml代码为:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.mysql</groupId>
    <artifactId>com.mysql</artifactId>
    <version>1.0-SNAPSHOT</version>
    <dependencies>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.26</version>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.0</version>
        </dependency>
    </dependencies>
</project>

配置数据库驱动

在resource文件夹下,随意取名,但是一般是能够标识文件内容的,
如我取名为mysql-config,表示配置数据库驱动
代码如下:

<?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>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/数据库名"/>
                <property name="username" value="数据库账户"/>
                <property name="password" value="数据库密码"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="mapper/mysql.xml"/>
    </mappers>
</configuration>

在mapper那里,有个resource,表示的是这个数据库驱动是给哪个文件进行配置增删改查的

数据库查询文件

在resource下我创建了一个mapper文件夹,在mapper下创建了一个mapper.xml文件,即刚刚说的用作数据库查询的文件
代码如下:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mapper.db1.AssistantMapper_hana">

    <select id="" resultType="">

    </select>
    <update id="" parameterType="">
    
    </update>

</mapper>

在这里需要注意几个重要的点,namspace为实现下面的查询语句的映射,即mapper接口。
下面的id为用作标识这个增删改查方法的,resultType为查询时候用的,parameterType为增、改时候用的
这两个都是映射的实体类

mapper实现

假如刚刚的增删改查语句,用id标识了一个叫findName的,

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mapper.db1.AssistantMapper_hana">
    <select id="findName" resultType="java.lang.String">
        select 字段 from 表名
    </select>
</mapper>

则在mapper接口代码为:

package mapper;

public interface mysql {
    String findName();
}

用的时候在具体的实现方法使用即可

mapper工具

mapper工具为具体调用数据库配置文件的。
代码如下:

package utils;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.IOException;

public class MapperUtil {
//配置文件
    public static final SqlSessionFactory sqlSessionFactoryAssistantHr =getSqlSessionFactory("mysql-config.xml");
//调用配置文件功能
    private static SqlSessionFactory getSqlSessionFactory(String configFile) {
        SqlSessionFactory sqlSessionFactory = null;
        try {
            sqlSessionFactory =new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream(configFile));
        }catch (IOException e) {
            e.printStackTrace();
        }
        return sqlSessionFactory;
    }
}

启动类启用数据库

在启动类,进行启用数据库,具体代码如下:

import mapper.mysql;
import org.apache.ibatis.session.SqlSession;
import utils.MapperUtil;

public class App {

//调用数据库工具类并实例化
    private static SqlSession session;
    private static mysqlMapper mapper;

    private static void close(){
        if(session !=null){
            session.close();
        }
    }

    public static void main(String[] args) {
        session= MapperUtil.sqlSessionFactory_mysql.openSession();
        mapper=session.getMapper(mysqlMapper.class);
        
        try{
            具体实现的功能代码
        }catch (Exception e){
            e.printStackTrace();
        }
    }
}

总结

以上,单数据库的配置方法完成。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/101170.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!