Spring Boot项目中使用MyBatis连接达梦数据库6

在开发中,使用Spring Boot框架结合MyBatis来操作数据库是一种常见的做法。本篇博客将介绍如何在Spring Boot项目中配置MyBatis来连接达梦数据库6,并提供一个简单的示例供参考。(达梦六不仅分表还分模式.) 我拿SYSTEM表的LPS模式下面Student表做案例。

1. 添加依赖

首先,我们需要在pom.xml文件中添加相关依赖:

java 复制代码
        <!-- https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter -->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.0</version>
        </dependency>

        <!--  添加dm6 jdbc jar 包依赖-->
        <dependency>
            <groupId>com.github.tianjing</groupId>
            <artifactId>Dm6JdbcDriver</artifactId>
            <version>1.0.0</version>
        </dependency>

2. 配置数据源、配置MyBatis

接下来,我们需要在application.yml文件中配置数据源信息:

bash 复制代码
spring:
  datasource:
    url: jdbc:dm6://localhost:12345/SYSTEM
    username: SYSDBA
    password: 密码自己写啦
    driver-class-name: dm6.jdbc.driver.DmDriver
    hikari:
      connection-test-query: select 1

mybatis:
  mapper-locations: classpath:/mappers/*.xml  # 修改为你的 MyBatis XML 映射文件路径
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl


server:
  # 服务器的HTTP端口
  port: 8081
  servlet:
    # 应用的访问路径
    context-path: /

3. 编写Mapper接口和SQL映射文件

src/main/resources目录下创建mappers文件夹,用于存放MyBatis的SQL映射文件。然后,编写Mapper接口和SQL映射文件,示例如下:

复制代码
@Mapper
public interface StudentMapper {
    List<Student> selectList();
}
bash 复制代码
    <select id="selectList" resultType="com.lps.domain.Student">
        select
        <include refid="Base_Column_List" />
        from LPS.STUDENT
    </select>

4. 编写Controller(偷懒没写service)

最后,编写相应的Controller层代码,调用Mapper接口执行数据库操作,并提供API接口供外部调用。

java 复制代码
@RestController
public class StudentController {
    @Autowired(required = false)
    StudentMapper studentMapper;
//增删改同理....
    @RequestMapping("/list")
    public String list() {
        List<Student> students = studentMapper.selectList();
        return students.toString();
    }
}

5、网页访问

总结

通过本文的介绍,我们学习了如何在Spring Boot项目中使用MyBatis连接达梦数据库6。首先,我们添加了必要的依赖项,然后配置了数据源和MyBatis,并编写了Mapper接口和SQL映射文件。最后,我们编写了Controller层代码来调用Mapper接口执行数据库操作,并提供API接口供外部调用。

报错注意事项

Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.AbstractMethodError: Method dm6/jdbc/driver/DmdbPreparedStatement.isClosed()Z is abstract] with root cause

java.lang.AbstractMethodError: Method dm6/jdbc/driver/DmdbPreparedStatement.isClosed()Z is abstract

相关推荐
洛克大航海13 分钟前
解锁 PySpark SQL 的强大功能:有关 App Store 数据的端到端教程
linux·数据库·sql·pyspark sql
陈果然DeepVersion1 小时前
Java大厂面试真题:Spring Boot+Kafka+AI智能客服场景全流程解析(五)
java·spring boot·kafka·向量数据库·大厂面试·rag·ai智能客服
FAFU_kyp1 小时前
Spring Boot 邮件发送系统 - 从零到精通教程
java·网络·spring boot
XueminXu2 小时前
ClickHouse数据库的表引擎
数据库·clickhouse·log·表引擎·mergetree·special·integrations
晨晖22 小时前
SpringBoot的yaml配置文件,热部署
java·spring boot·spring
冒泡的肥皂2 小时前
MVCC初学demo(二
数据库·后端·mysql
代码程序猿RIP2 小时前
【Redis 】Redis 详解以及安装教程
数据库·etcd
小生凡一2 小时前
redis 大key、热key优化技巧|空间存储优化|调优技巧(一)
数据库·redis·缓存
oe10192 小时前
好文与笔记分享 A Survey of Context Engineering for Large Language Models(上)
数据库·笔记·语言模型·agent·上下文工程
小马哥编程2 小时前
【软考架构】案例分析-对比MySQL查询缓存与Memcached
java·数据库·mysql·缓存·架构·memcached