前言
通过翻看我前面的文章,发现并没有整理总结出数据库的配置和连接使用方法,现在在这里对其进行详细的整理。
注意
本数据库连接的方法,适用于maven项目,和springboot配置有一些出入
配置步骤
按照我的这种方式主要分为以下几步:
- 配置pom.xml依赖
- 先创建数据库的驱动配置xml文件
- 创建utils工具文件夹,在该文件编写mapper工具,主要是调用驱动配置文件
- 创建数据库查询语句xml
- 创建mapper文件夹,进行实现数据库的增删改查语句
- 在启动类调用并执行
项目结构图
根据以上的步骤。贴出来项目的结构图(只包含数据库配置)
以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