[英]Spring ERR_CONNECTION_REFUSED
我正在閱讀關於Spring的教程,到目前為止,我的代碼允許您添加用戶並查看所有用戶。 我現在試圖包括刪除功能。 我添加了以下代碼以實現此目的。 我相信它與本教程中顯示的完全一樣,但是結果我得到了ERR_CONNECTION_REFUSED。 在本教程中,最初顯示了此錯誤,但刷新后消失了,但在我看來,它沒有。
的index.html
<a href="#" th:href="@{/user/delete/}+${user.id}">Delete</a>
userService.java
public void delete(User user) {userRepository.delete(user); }
userController.java
@RequestMapping(value = "/delete/{user}", method = RequestMethod.GET)
@ResponseBody
public String delete(@PathVariable User user)
{
String name = user.getFirstname()+" "+user.getLastname();
userService.delete(user);
return name;
}
application.properties(添加到此行的位是;FILE_LOCK=FS
)
spring.datasource.url=jdbc:h2:file:./database.h2;FILE_LOCK=FS
我注意到在Spring Boot中,我現在得到以下信息,我知道它引用了我剛剛添加的用於刪除的lock方法,但不確定這是否是為什么我被拒絕連接的原因,因為本教程做了同樣的事情但起作用了:
2018-01-24 16:18:54.446警告6589 --- [restartMain] ohejeiJdbcEnvironmentInitiator:HHH000342:無法獲得與查詢元數據的連接:不支持的文件鎖定方法“ FS” [90060-196] 2018-01-24 16:18 :54.447 WARN 6589 --- [restartedMain] ationConfigEmbeddedWebApplicationContext:上下文初始化期間遇到異常-取消刷新嘗試:org.springframework.beans.factory.BeanCreationException:創建類名稱為'entityManagerFactory'的bean時在類路徑資源[org / springframework / [boot / autoconfigure / orm / jpa / HibernateJpaAutoConfiguration.class]:調用init方法失敗; 嵌套的異常是org.hibernate.service.spi.ServiceException:無法創建請求的服務[org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] 2018-01-24 16:18:54.447信息6589-[重新啟動] o.apache.catalina.core.StandardService:正在停止服務[Tomcat] 2018-01-24 16:18:54.454信息6589 --- [restartedMain] utoConfigurationReportLoggingInitializer:
啟動ApplicationContext時出錯。 要顯示自動配置報告,請在啟用“調試”的情況下重新運行您的應用程序。 2018-01-24 16:18:54.459錯誤6589 --- [restartedMain] osboot.SpringApplication:應用程序啟動失敗
org.springframework.beans.factory.BeanCreationException:創建在類路徑資源[org / springframework / boot / autoconfigure / orm / jpa / HibernateJpaAutoConfiguration.class]中定義的名稱為'entityManagerFactory'的bean時出錯:調用init方法失敗; 嵌套的異常是org.hibernate.service.spi.ServiceException:無法創建請求的服務[org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
UPDATE
h2數據庫的文檔說明了有關文件鎖定的信息,那么為什么這是不受支持的方法?
文件鎖定方法'FS'這是1.4版及更高版本的默認模式。 此數據庫文件鎖定機制在數據庫文件上使用本機文件系統鎖定。 在這種情況下,不會創建* .lock.db文件,並且不會啟動任何后台線程。 此機制可能無法在所有系統上正常工作。 某些系統允許在同一虛擬機中多次鎖定同一文件,並且在某些系統上,不支持本機文件鎖定,或者在電源故障后無法解鎖文件。
要啟用此功能,請將; FILE_LOCK = FS附加到數據庫URL。
此功能是相對較新的。 在將其用於生產時,請確保事實上系統確實按預期鎖定了文件。
Spring Boot應用程序啟動似乎失敗。 您的服務器未啟動。 根據日志,創建bean entityManagerFactory
失敗。 這是因為FS
是Unsupported file lock method
。 請檢查這是否有效,是您所需要的。 嘗試刪除它並檢查它是否有效。
spring.datasource.driver-class-name=org.h2.Driver
spring.datasource.url=jdbc:h2:file:./database.h2;FILE_LOCK=FS
spring.jpa.hibernate.ddl-auto=update
萬一其他人遇到相同的問題,添加第三行即可解決此問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.