2017-09-19 126 views
1

我正在使用部署在Heroku上的Springboot應用程序,但我無法使用H2。我獲得了有關Url數據源和錯誤密碼和用戶名的幾個錯誤。我正在嘗試創建自動實體表。Springboot H2休眠錯誤

Main.java

@Controller 
@EnableScheduling 
@SpringBootApplication 
public class Main { 

    public static void main(String[] args) throws Exception { 
    SpringApplication.run(Main.class, args); 
    } 

} 

UserConfiguration.java

@Entity 
@Table(name = "UserConfiguration") 
public class UserConfiguration { 

    @Id 
    private Long id; 
    private float btcValue; 
    private boolean sell; 

    protected UserConfiguration() {} 

    public UserConfiguration(Long id, float btcValue, boolean sell) { 
     this.id = id; 
     this.btcValue = btcValue; 
     this.sell = sell; 
    } 
... 
} 

application.properties

# H2 
spring.h2.console.enabled=true 
spring.h2.console.path=/h2 

# Datasource 
spring.datasource.url=jdbc:h2:~/database 
spring.datasource.driver-class-name=org.h2.Driver 
spring.datasource.username= 
spring.datasource.password= 


### 
# Hibernate Settings 
### 
spring.jpa.hibernate.ddl-auto = create 
spring.jpa.properties.hibernate.show_sql=false 
spring.jpa.properties.hibernate.use_sql_comments=false 
spring.jpa.properties.hibernate.format_sql=false 
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect 

Heroku本地Web執行日誌

11:50:48 web.1 | 2017-09-19 11:50:48.872 INFO 12876 --- [
main] com.example.Main:以下 配置文件處於活動狀態:production 11:50:49 web.1 | 2017年9月19日11 :50:49.078 INFO 12876 --- [主要] ationConfigEmbeddedWebApplicationContext:刷新 org.springframework.boot[email protected]7e32c033: 啓動日期[星期二09月19日11時50分四十九秒CEST 2017];背景的根源 層次結構11:50:50 web.1 | 2017-09-19 11:50:50.612 INFO 12876 --- [main] o.s.b.f.s.DefaultListableBeanFactory: 使用不同的定義替換bean'dataSource'的bean定義 定義:替換[Root bean:class [null];範圍=; abstract = false; lazyInit = FALSE; autowireMode = 3; dependencyCheck = 0; autowireCandidate = true;初級= FALSE; factoryBeanName = org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration $ Hikari; factoryMethodName = dataSource; initMethodName = NULL; destroyMethodName =(推斷)11:50:50 web.1 | >;定義在類 路徑資源 [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration $ Hikari.class]] with [Root bean:class [null];範圍=;抽象= FALSE; lazyInit = FALSE; autowireMode = 3; dependencyCheck = 0; autowireCandidate = TRUE; primary = false; factoryBeanName = org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration $ Tomcat; factoryMethodName = dataSource; initMethodName = NULL; destroyMethodName =(推斷);在類路徑資源中定義 [org/springframework/boot/autoconf 11:50:50 web.1 | > igure/jdbc/DataSourceConfiguration $ Tomcat.class]] 11:50:51 web.1 | 2017-09-19 11:50:51信息12876 --- [main] f.a.AutowiredAnnotationBeanPostProcessor:JSR-330 'javax.inject.Inject'註釋找到並支持自動裝配 11:50:51 web.1 | 2017年9月19日11:50:51.858 INFO 12876 --- [
主] trationDelegate $ BeanPostProcessorChecker:豆 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' 型 [org.springframework.transaction.annotation的 。 ProxyTransactionManagementConfiguration $$ EnhancerBySpringCGLIB $$ 338a41d7] 沒有資格被所有BeanPostProcessors處理(對於 示例:不適合自動代理)11:50:52 web.1 | 2017-09-19 11:50:52。373 INFO 12876 --- [main] s.b.c.e.t.TomcatEmbeddedServletContainer:Tomcat初始化爲 port(s):5000(http)11:50:52 web.1 | 2017-09-19 11:50:52.425信息 12876 --- [main] o.apache.catalina.core.StandardService: 啓動服務Tomcat 11:50:52 web.1 | 2017-09-19 11:50:52.427 INFO 12876 --- [main] org.apache.catalina.core.StandardEngine:啓動Servlet引擎: Apache Tomcat/8.5.11 11:50:52 web.1 | 2017-09-19 11:50:52.650 INFO 12876 --- [ost-startStop-1] o.a.c.c.C. [Tomcat]。[localhost]。[/]: 初始化Spring嵌入式WebApplicationContext 11:50:52 web.1 | 2017-09-19 11:50:52.650 INFO 12876 --- [ost-startStop-1] o.s.web.context.ContextLoader:Root WebApplicationContext: 初始化完成於3575 ms 11:50:53 web.1 | 2017-09-19 11:50:53.228信息12876 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean:將servlet: 'dispatcherServlet'映射到[/] 11:50:53 web.1 | 2017-09-19 11:50:53.234 INFO 12876 --- [ost-startStop-1] osbwservlet.ServletRegistrationBean:將web servlet: 'webServlet'映射到[/ h2/] 11:50:53 web。 1 | 2017-09-19 11:50:53.256 信息12876 --- [ost-startStop-1] osbwservlet.FilterRegistrationBean:映射過濾器: 'metricsFilter'至:[/] 11:50:53 web.1 | 2017年9月19日11:50:53.257 INFO 12876 --- [OST-startStop-1] osbwservlet.FilterRegistrationBean:映射濾波器: 'characterEncodingFilter' 到:[/ ] 11時50分五十三秒web.1 | 2017年9月19日11 :50:53.257 INFO 12876 --- [OST-startStop-1] osbwservlet.FilterRegistrationBean:映射濾波器: 'hiddenHttpMethodFilter' 到:[/] 11點50分53秒web.1 | 2017-09-19 11:50:53.257信息12876 --- [ost-startStop-1] osbwservlet.FilterRegistrationBean:映射過濾器: 'httpPutFormContentFilter'至:[/ ] 11:50:53 web.1 | 2017-09-19 11:50:53.257信息12876 --- [ost-startStop-1] osbwservlet.FilterRegistrationBean:映射過濾器: 'requestContextFilter'到:[/] 11:50:53 web.1 | 2017-09-19 11:50:53.258信息12876 --- [ost-startStop-1] osbwservlet.FilterRegistrationBean:映射過濾器: 'webRequestLoggingFilter'到:[/ ] 11:50:53 web.1 | 2017-09-19 11:50:53.271信息12876 --- [ost-startStop-1] osbwservlet.FilterRegistrationBean:映射過濾器: 'applicationContextIdFilter'到:[/] 11:50:53 web.1 | 2017-09-19 11:50:53.273信息12876 --- [ost-startStop-1] osbwservlet.FilterRegistrationBean:映射過濾器: 'resourceUrlEncodingFilter'到:[/ *] 11:50:54 web.1 | 2017-09-19 11:50:54.251錯誤12876 --- [main] o.a.tomcat.jdbc.pool.ConnectionPool:無法創建池的初始 連接。 11:50:54 web.1 | org.h2.jdbc.JdbcSQLException: 錯誤的用戶名或密碼[28000-193] 11:50:54 web.1 |在 org.h2.message.DbException.getJdbcSQLException(DbException.java:345) 〜[h2-1.4.193.jar!/:na] 11:50:54 web.1 |在 org.h2.message.DbException.get(DbException.java:179) 〜[h2-1.4.193.jar!/:na] 11:50:54 web.1 |在 org.h2.message.DbException.get(DbException.java:155) 〜[h2-1.4.193.jar!/:na] 11:50:54 web.1 |在 org.h2.message.DbException.get(DbException.java:144) 〜[h2-1.4.193.jar!/:na] 11:50:54 web。1 |在 org.h2.engine.Engine.validateUserAndPassword(Engine.java:336) 〜[h2-1.4.193.jar!/:na] 11:50:54 web.1 |在 org.h2.engine.Engine.createSessionAndValidate(Engine.java:162) 〜[h2-1.4.193.jar!/:na] 11:50:54 web.1 |在 org.h2.engine.Engine.createSession(Engine.java:137) 〜[h2-1.4.193.jar!/:na] 11:50:54 web.1 |在 org.h2.engine.Engine.createSession(Engine.java:27) 〜[h2-1.4.193.jar!/:na] 11:50:54 web.1 |在 org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)〜[h2-1.4.193.jar!/:na] 11:50:54 web.1 |在 org.h2.jdbc.JdbcConnection。(JdbcConnection.java:115) 〜[h2-1.4.193.jar!/:na] 11:50:54 web.1 |在 org.h2.jdbc.JdbcConnection。(JdbcConnection.java:99) 〜[h2-1.4.193.jar!/:na] 11:50:54 web.1 |在 org.h2.Driver.connect(Driver.java:69)〜[h2-1.4.193.jar!/:na] 11:50:54 web.1 |在 org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:310) 〜[Tomcat的JDBC-8.5.11.jar /:NA] 11時50分五十四秒web.1 |在 org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:203) 〜[tomcat-jdbc-8.5.11.jar!/:na] 11:50:54 web.1 |在 org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:732) [tomcat-jdbc-8.5.11.jar!/:na] 11:50:54 web.1 |在 org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:664) [tomcat-jdbc-8.5.11.jar!/:na] 11:50:54 web.1 |在 org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:479) [tomcat-jdbc-8.5.11.jar!/:na] 11:50:54 web.1 |在 org.apache.tomcat.jdbc.pool.ConnectionPool。(ConnectionPool.java:154) [tomcat-jdbc-8.5.11.jar!/:na] 11:50:54 web.1 |在 org.apache.tomcat.jdbc.pool.DataSourceProxy.pCreatePool(DataSourceProxy.java:118) [!Tomcat的JDBC-8.5.11.jar /:NA] 11時50分五十四秒web.1 |在 org.apache.tomcat.jdbc.pool.DataSourceProxy.createPool(DataSourceProxy.java:107) [!Tomcat的JDBC-8.5.11.jar /:NA] 11時50分54秒web.1 |在 org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:131) [Tomcat的JDBC-8.5.11.jar /:NA] 11點50分54秒web.1 |在 org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111) [彈簧JDBC-4.3.7.RELEASE.jar /:4.3.7.RELEASE] 11點50分54秒web.1 | at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77) [spring-jdbc-4.3.7.RELEASE.jar!/:4.3.7.RELEASE] 11:50:54 web。 1 | 在 org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:326) [彈簧JDBC-4.3.7.RELEASE.jar /:4.3.7.RELEASE] 11點50分54秒的網頁。 1 | 在 org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:366) [彈簧JDBC-4.3.7.RELEASE.jar /:4.3.7.RELEASE] 11點50分54秒的網頁。 1 | org.springframework.boot.autoconfigure.orm.jpa.DatabaseLookup.getDatabase(DatabaseLookup.java:72) [spring-boot-autoconfigure-1.5.2.RELEASE.jar!/:1.5.2.RELEASE] 11 :50:54 web.1 |在 org.springframework.boot.autoconfigure.orm.jpa.JpaProperties.determineDatabase(JpaProperties.java:139) [彈簧引導自動配置-1.5.2.RELEASE.jar /:1.5.2.RELEASE] 11: 50:54 web.1 | org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration.jpaVendorAdapter(JpaBaseConfiguration.java:105) [spring-boot-autoconfigure-1.5.2.RELEASE.jar!/:1.5.2.RELEASE] 11: 50:54 web.1 |在 org.springframework.boot.autoconfigure。orm.jpa.HibernateJpaAutoConfiguration $$ EnhancerBySpringCGLIB $$ 9d10a5f7.CGLIB $ $ jpaVendorAdapter 4() [彈簧引導自動配置-1.5.2.RELEASE.jar /:1.5.2.RELEASE]

作爲例子我的測試使用H2儀表板,使用空密碼和用戶。我在概念上錯過了什麼?

編輯

enter image description here

回答

0

你忘了數據庫憑據,看堆棧跟蹤

org.h2.jdbc.JdbcSQLException: Wrong user name or password 

添加到您的application.properties

spring.datasource.username=(h2 user) 
spring.datasource.password=(h2 password) 

默認應該是user:「sa」並傳遞:「」空字符串如果我沒有誤認爲h2

+0

剛剛添加它們,但沒有解決。 – Hoper

+0

@Hoper你需要添加你的用戶名和密碼... – Zeromus

+0

你能看到我的編輯?我也嘗試使用「sa」和空密碼。 – Hoper