JDBC 类型无方言映射:1111
我正在开发一个Spring JPA应用程序,使用MySQL作为数据库。我确保加载了所有spring-jpa库,hibernate和mysql-connector-java。
我正在运行一个 mysql 5 实例。以下是我的 application.properties 文件的摘录:
spring.jpa.show-sql=false
spring.jpa.hibernate.ddl-auto=create-drop
spring.jpa.database-platform=org.hibernate.dialect.MySQL5Dialect
spring.datasource.url=jdbc:mysql://localhost/mydatabase
spring.datasource.username=myuser
spring.datasource.password=SUPERSECRET
spring.datasource.driverClassName=com.mysql.jdbc.Driver
执行集成测试时,spring 会正常启动,但在创建休眠 SessionFactory 时失败,但异常如下:
org.hibernate.MappingException: No Dialect mapping for JDBC type: 1111
我认为我的方言应该是Mysql5Dialect,我还尝试了明确说明InnoDB的方言选项,以及两个不表示版本5的方言选项。但是我总是得到相同的“JDBC类型没有方言映射:1111”消息。我的 application.properties 文件驻留在测试/资源源文件夹中。它被JUnit测试运行程序识别(我以前因为其中的拼写错误而得到了一个例外)。
我设置的属性是否错误?我找不到有关这些属性名称的一些官方文档,但在此堆栈溢出答案中发现了一个提示:https://stackoverflow.com/a/25941616/1735497
期待您的回答,谢谢!
顺便说一句,应用程序已经在使用弹簧启动。