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博客

相关推荐
杨杨杨大侠9 分钟前
DeepSeek Harness:连 Agent Loop 都能替换的插件架构
java·人工智能·agent
SL_staff9 分钟前
私有化低代码运维三重雷区:JVS开源栈中的Kafka/ES/RabbitMQ治理实践
java·低代码·全栈
yuniko-n10 分钟前
【算法】约瑟夫环问题
java·算法
郝亚军19 分钟前
manifest 中 `sha256` 与 `signValue` 的作用
java·开发语言·数据结构
譕痕34 分钟前
stripe 实例
java·开发语言·stripe·checksession
墨子夕42 分钟前
设计模式——Java × Python 双语言精讲 · 23 个经典模式 + 现代演进(前言篇)
java·开发语言·设计模式
骇客野人1 小时前
Linux 全套实操方案(含目录详解、文件传输、日志、文件规范、环境变量、Java 应用部署运维)
java·linux·运维
唠点键盘之外的1 小时前
29 切片的权限隔离(实战篇):Milvus + Spring AI,从 0 搭一条带权限过滤的检索链路
人工智能·spring·milvus
.Bryce.1 小时前
MCP+A2A+ANP,Agent通信协议的完整知识地图
java·人工智能·后端·agent·通信协议
SL_staff1 小时前
规则引擎选型陷阱:为什么QPS不是JVS-Rules对比Drools的核心指标
java·开源·全栈