spring集成mybatis简单教程

首先说下实现了什么效果,就是不用每次查询前手动创建

复制代码
sessionFactory和添加datasource文件了。

整个工程结构是这样的

这次我也把代码放在了gitee上,方便大家更全貌的看到所有的实现细节。代码链接如下:

Java: 一些Java代码 (gitee.com)

最后就是可以成功查询到数据库的数据啦

我把遇到的一些问题简单记录下, 避免后人踩坑。

1.Failed to obtain JDBC Connection; nested exception is java.sql.SQLException:

这个和驱动版本有关系,我用的是com.mysql.cj.jdbc.Driver,所以当时用5.x版本就报错了

所以我选了

  • com.mysql.jdbc.Driver和mysql-connector-java 5.x一起用。
  • com.mysql.cj.jdbc.Driver和mysql-connector-java 6.x 及以上一起用。
  1. Failed to obtain JDBC Connection; nested exception is java.sql.SQLException: The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the 'serverTimezone' configuration property) to use a more specifc time zone value if you want to utilize time zone support.

这个要在数据源配置文件里,加上时区serverTimezone=Asia/Shanghai

复制代码
druid.url=jdbc:mysql://localhost:3306/blog?serverTimezone=Asia/Shanghai

参考这个文档的解释The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone-CSDN博客

相关推荐
带刺的坐椅1 小时前
用 ChatModel 构建 LLM 驱动的 Java 应用
java·ai·llm·solon·rag·chatmodel
掘金小豆2 小时前
Spring 事务失效的 6 大场景,你踩过几个?
后端·spring·面试
用户3721574261353 小时前
Java 将 Word 文档转换为 Markdown:基础转换与导出选项详解
java
行者全栈架构师3 小时前
PolarDB + Spring Boot 实战:从自建MySQL到云原生数据库的零停机迁移
java·后端·架构
karry_k19 小时前
MyBatis批量insert-select踩坑:useGeneratedKeys=true 可能让PostgreSQL返回大量插入结果
java·后端
karry_k19 小时前
PostgreSQL 在 MyBatis 中执行正常 SQL 失效:一次 DELETE USING 踩坑记录
java·后端
SamDeepThinking1 天前
从源码到代码:MyBatis-Flex 与 MyBatis-Plus 的逐项对比
java·后端·程序员
她的男孩1 天前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
荣码1 天前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python