2017-09-07 34 views
0

我知道这个问题被询问了1000次之前,找到的解决方案似乎对我来说没有什么作用。 我想构建一个简单的web应用程序,但是当我尝试实现jpa来保存用户并让用户登录时,再也无法工作。 应用程序首先开始正常,但是当访问localhost:8080时,我的jsp没有显示。 过了一会儿,应用程序崩溃。 堆栈可以追溯到:访问被拒绝使用弹簧连接远程数据库的错误

Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: 
Access denied for user 'ufotje'@'%' to database 'hbo5_java' 

我知道提供的凭据是正确的(我可以通过datagrip连接到数据库......)。

我认为我的application.propperties有些问题,但无法弄清楚什么。

我application.propperties:

spring.mvc.view.prefix=/WEB-INF/jsp/ 
spring.mvc.view.suffix=.jsp 
spring.mvc.date-format=dd/mm/yyyy 
spring.data.jpa.repositories.enabled=true 
spring.datasource.url=jdbc:mysql://85.10.205.173 
         /hbo5_java?verifyServerCertificate=false&useSSL=true 
spring.datasource.username=ufotje 
spring.datasource.password=bd5296 
spring.datasource.driverClassName=com.mysql.jdbc.Driver 
spring.datasource.testWhileIdle=true 
spring.jpa.generate-ddl=true 
spring.jpa.show-sql=true 
spring.jpa.hibernate.ddl-auto=update 
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect 
spring.jpa.hibernate.naming.strategy=org.hibernate.cfg.EJB3NamingStrategy 

我的pom.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0  
         http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
<modelVersion>4.0.0</modelVersion> 

<groupId>be.intec</groupId> 
<artifactId>pictureThisPictureThat</artifactId> 
<version>1.0-SNAPSHOT</version> 

<packaging>war</packaging> 

<name>Picture This, Picture That</name> 
<description></description> 

<parent> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-parent</artifactId> 
    <version>1.5.6.RELEASE</version> 
    <relativePath/> 
</parent> 
<build> 
    <plugins> 
     <plugin> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-maven-plugin</artifactId> 
      <configuration> 
       <executable>true</executable> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 
<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    <project.reporting.outputEncoding> 
     UTF8 
    </project.reporting.outputEncoding> 
    <java.version>1.8</java.version> 
</properties> 

<dependencies> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-web</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.tomcat.embed</groupId> 
     <artifactId>tomcat-embed-jasper</artifactId> 
     <scope>required</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.tomcat.maven</groupId> 
     <artifactId>tomcat8-maven-plugin</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-data-jpa</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>Mysql</groupId> 
     <artifactId>mysql-connector-java</artifactId> 
     <scope>provided</scope> 
    </dependency> 
</dependencies> 
</project> 
+0

错误的用户名为“ufotje'@'%”。检查额外的''@'%“来自哪里。 – tsolakp

回答

0

检查是否允许用户远程连接,下面的SQL查询您的数据库上运行,让您的用户连接从任何地方。

允许用户从任何地方

GRANT ALL ON *.* to <user-name>@'<ip>' IDENTIFIED BY '<password>'

样品连接: -

GRANT ALL ON *.* to [email protected]'%' IDENTIFIED BY 'bd5296'; 

//授予root用户来连接来自世界各地(%),其中有root密码。

相关问题