MySQL source,spring無法連接mysql_初學Spring——連接MySQL數據庫的問題和解決

 2023-11-30 阅读 27 评论 0

摘要:零:前言初學Spring + Angular才不到一周時間,剛打開第一個Spring的示例項目,在運行時就出現了錯誤。代碼如下:***************************APPLICATION FAILED TO STARTMySQL source?***************************Description:Failed to conf

零:前言

初學Spring + Angular才不到一周時間,剛打開第一個Spring的示例項目,在運行時就出現了錯誤。

87baaaf4e27530065a1ebda03ba96195.png

代碼如下:

***************************

APPLICATION FAILED TO START

MySQL source?***************************

Description:

Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.

Reason: Failed to determine a suitable driver class

Action:

Consider the following:

連接MySQL。If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.

If you have database settings to be loaded from a particular profile you may need to activate it (no profiles are currently active).

Disconnected from the target VM, address: '127.0.0.1:50367', transport: 'socket'

Process finished with exit code 1

又重新看了一次我所學習的教程,教程中只給了一個Spring開發手冊的鏈接,卻沒有給出連接數據庫的具體步驟,或許,老師的意思,是想讓我們看開發文檔自己學習。

74b2d5c920b6068a05579b25e0a9b706.png

于是,我打開了這個鏈接

b41f69302580dec37f6013849c10975f.png

mysql workbench。Spring的開發文檔很具體,從環境要求到如何建立數據庫、如何連接,都說的很清楚,只不過由于是英文,讀起來有一些難度。

一:連接數據庫

我們需要找到的,是設置數據庫的那個配置文件,所以開發文檔中許多內容我們并不需要。

終于,我找到了下面這一段:

8d6e9fba1ce8696fd7b97e0ebfdf0a8a.png

大概的翻譯內容是:Spring給你提供了許多的默認設置,然而,對于數據庫的配置你需要自己來進行。然后把這一段代碼寫在配置文件中:

spring.jpa.hibernate.ddl-auto=update

can't connect to MySQL server on。spring.datasource.url=jdbc:mysql://${MYSQL_HOST:localhost}:3306/db_example

spring.datasource.username=springuser

spring.datasource.password=ThePassword

我們需要把第二行的localhost改成自己的地址,3306是數據庫端口,db_example改成要訪問的數據庫名稱。

把第三行的username改成數據庫的用戶名,第四行password是數據庫的密碼,如下:

a9c10a631ece83f1b95019fa9878c2d9.png

保存,啟動,通過編譯

71bf7fa4077e5365da756e09ba13889b.png

jdbc connection will not be,(上圖表示成功運行,請勿在意網頁內容)

二、遇到錯誤以及解決

當軟件能跑起來之后,繼續寫代碼,卻發現真正需要用到數據庫的時候,報錯了...

ccd91ed5ff2863cdb7e5f2c18e702cce.png

“空白頁”問題之前出現了很多次,初學的時候不知道報錯的關鍵信息是什么,后來才知道與之前所學的ThinkPHP不同的是,最關鍵的信息沒有放在第一行,而是最后一行的Failed to obtain JDBC Connection; nested exception is java.sql.SQLSyntaxErrorException: Unknown database 'db_example'

我恍然大悟,它找不到db_example,原來是我由于比較粗心,只改了數據庫的地址用戶名密碼,而忘了改庫名...

f5e5fc7e9e100fdb5aaa44c4e672996d.png

按照庫名修改了配置文件之后:

e1dc203c7236a51284193d29fd3ba0b1.png

MySQL連接數據庫的四種方式,再次運行,成功顯示JSON對象。

74190c204ff2393cab59adb9f8521007.png

細心很重要

后記

曾經學習的ThinkPHP5.1,它的報錯界面是這樣的:

d1815eaeb9a13f9b8f76d04540a0da56.png

最醒目的位置,是最重要的信息,然后馬上給出報錯代碼,無疑,這種顯示方式,對于小白來說更友好。

當然Spring的這種錯誤顯示方式,或許也有它的道理,至于具體為什么,還要等自己更深入的學習之后才能找到答案。

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/4/186689.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息