我使用spring boot开发应用程序,我使用mysql作为数据库。我在application.properties中有以下配置。
server.port=8090
spring.datasource.url=jdbc:mysql://mysql:3306/sampleDB
spring.datasource.username=root
spring.datasource.password=
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.hibernate.dialect=org.hibernate.dialect.MySQLDialect
spring.hibernate.dialect=org.hibernate.dialect.MySQLDialect
spring.jpa.hibernate.show_sql=true
spring.jpa.hibernate.ddl-auto=update
spring.jpa.temp.use_jdbc_metadata_defaults=false
logging.file=employee.log
spring.datasource.testOnBorrow=true
spring.datasource.validationQuery=SELECT 1
我在本地拥有相应的数据库,它在我的本地工作。但是一旦我创建了一个docker镜像并链接到我的mysql docker容器,它就会抛出以下异常。
org.hibernate.HibernateException: Access to DialectResolutionInfo cannot be null when 'hibernate.dialect' not set
即使是我的容器也没有建造它。
sudo docker run --name bootApp -d --link mysql:mysql springio/employeesecurity
其中 springio / employeesecurity 是我的springBoot泊坞窗名称, mysql 是我的msql容器。
答案 0 :(得分:0)
可能您的错误是由于无法连接到数据库(堆栈中更深)
引起的您是否尝试过不在连接字符串中指定端口:
spring.datasource.url=jdbc:mysql://mysql:3306/sampleDB