微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Spring Boot App可以在H2上运行,但不能在AWS RDS上运行

如何解决Spring Boot App可以在H2上运行,但不能在AWS RDS上运行

我用H2数据库创建了一个简单的Project Management App,它运行正常。但是,当我尝试在AWS上将数据源更改为MysqL时,出现错误

java.sql.sqlException: Access denied for user 'admin'@'ip.com' (using password: YES)
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'iEmpRepo' defined in com.pma.scratch.demo.repos.iEmpRepo defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaMappingContext' while setting bean property 'mappingContext'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jpaMappingContext': Invocation of init method Failed; nested exception is org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]

现在我可以肯定我的连接凭据是正确的,因为我使用Datagrip进行连接就很好了,我什至在intellij中创建了一个新的spring boot应用程序,并且能够连接到相同的数据库并使用jpa创建表。 / p>

这是应用程序属性文件

spring.datasource.url=jdbc:MysqL://MysqL.....:3306/database_name
spring.datasource.username=admin
spring.datasource.password=*****

不知道为什么会出现拒绝访问错误,并且BeanCreation错误使我感到困惑,因为我的应用程序使用H2可以很好地创建bean。

解决方法

我认为司机不见了。添加此内容:

spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver

spring.datasource.driverClassName=com.mysql.jdbc.Driver

别忘了罐子

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.22</version>
</dependency> 

如果错误仍然存​​在,请使用此属性获取更多日志

debug=true

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。