Spring Boot使用H2資料庫時自動配置了網頁控制台(web console)圖形化管理介面,使用方式如下。
專案的application.properties
設定。
application.properties
#context path
server.servlet.context-path=/demo
#port
server.port=8080
#H2 DataSource
spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=12345
spring.h2.console.enabled=true
#spring.h2.console.path=/h2
#spring.h2.console.settings.trace=false
#spring.h2.console.settings.web-allow-others=false
注意Spring Boot 2.3.0開始spring.datasource.generate-unique-name
預設為true
,因此H2資料庫名稱是亂數產生,不再為預設的testdb
,所以設定spring.datasource.url=jdbc:h2:mem:testdb
指定資料庫名稱為testdb
。
不設定資料庫名稱的話可在啟動時的log找到產生的亂術資料庫名稱,例如下面的ec6b9859-df9f-48ca-8dd4-2a4eb3b21bab
。
2020-12-31 14:25:04.360 INFO 10640 --- [ main] c.z.h.HikariDataSource : HikariPool-1 - Starting...
2020-12-31 14:25:04.588 INFO 10640 --- [ main] c.z.h.HikariDataSource : HikariPool-1 - Start completed.
2020-12-31 14:25:04.595 INFO 10640 --- [ main] o.s.b.a.h.H2ConsoleAutoConfiguration : H2 console available at '/h2-console'. Database available at 'jdbc:h2:mem:ec6b9859-df9f-48ca-8dd4-2a4eb3b21bab'
注意範例專案的context path為/demo
,所以本機的H2 web console路徑為http://localhost:8080/demo/h2-console/
。
spring.h2.console.enabled
必須設為true
開啟web console功能。
spring.h2.console.path
可修改預設的位址。
spring.h2.console.settings.trace
設定是否輸出Trace log。
spring.h2.console.settings.web-allow-others
設定是否可遠端登入web console。
啟動專案,然後在瀏覽器url位址輸入http://localhost:8080/demo/h2-console/
進入web console登入頁面。
登入設定如下,
- [Driver Class]=
org.h2.Driver
- [JDBC URL]=
jdbc:h2:mem:testdb
- [UserName]=
sa
- [Password]=
12345
登入後控制台畫面如下,使用方式跟資料庫管理軟體一樣。
參考Github。
沒有留言:
張貼留言