1. Idea 新建springboot項目 spring-boot-starter-parent 包maven依賴報錯
解決方式
解決方式一:
1. 重新敲一遍配置,不要復制,復制會有各種問題, 重新敲一遍重新導入就沒有問題了
方式二:換鏡像
因為你未配置maven鏡像使用的是默認的,建議在maven的setting中配置國內鏡像;
方式三:
在pom.xml配置文件中加入下面這些配置
<repositories> <repository> <id>spring-snapshots</id> <url>http://repo.spring.io/libs-snapshot</url> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>spring-snapshots</id> <url>http://repo.spring.io/libs-snapshot</url> </pluginRepository> </pluginRepositories>
2. expected START_TAG or END_TAG not TEXT (position: TEXT seen ...
解決方法:
pom.xml中部分內容格式不正確,整理格式,刪除多余空格。
3. @ResponseBody詳解
注意:在使用 @RequestMapping后,返回值通常解析為跳轉路徑,但是加上 @ResponseBody 后返回結果不會被解析為跳轉路徑,而是直接寫入 HTTP response body 中。 比如異步獲取 json 數據,加上 @ResponseBody 后,會直接返回 json 數據。
4. The requested URL /spring-boot/docs/2.2.2.RELEASE/reference/html/configuration-metadata.html was not
解決方法,將請求地址欄版本改為2.1.9
5. spring-boot配置文件中server.context-path不起作用
spring-boot配置文件中server.context-path=/XXXXXXX不起作用:
原因是更新后寫法變成了server.servlet.context-path=/XXXXXX,這樣寫即可
https://blog.csdn.net/han_ying_ying/article/details/80454176
6. 解決 idea 運行 Spring Boot 項目啟動慢的問題
解決方案:
1. hostname命令查看自己的 hostname
2. 在C:\windows\system32\drivers\hosts配置文件中添加下面的配置
127.0.0.1<兩個tab>LAPTOP-H4HP3NC9 255.255.255.255<兩個tab>broadcasthost ::1<兩個tab>LAPTOP-H4HP3NC9
7. 在springboot中表單中設置put請求不成功
<input type="hidden" name="_method" value="put" th:if="${emp!=null}"/>
注意在新版本的SpringBoot中,這個put請求不發生作用。原因是因為springboot自動配置,幫我們省略了第一步的配置,上面代碼方法就是為了實現自動配置,但是因為注解@ConditionalOnProperty限制了自動配置,默認false不開啟配置,所以頁面的put提交無法使用。 解決辦法: properties配置文件中配置,使之開啟自動配置: spring.mvc.hiddenmethod.filter.enabled=true。
8. 使用請求轉發導致前端頁面css樣式消失的原因和解決辦法
因為是轉發過來的請求,所以當前請求的相對路徑是和后台的相對路徑是一樣的,而前端頁面中很多css樣式文件的引入默認是前端的相對路徑,前端的相對路徑和后端的相對路徑不一致,這時候我們需要的樣式文件可能就獲取不到,從而樣式消失
解決辦法是把前端路徑設置成絕對路徑,這樣就轉發請求時就不受后台相對路徑的影響了
9. driver-class-name: com.mysql.jdbc.Driver報錯
cannot resolve class or package
把pom.xml文件中mysql的依賴的runtime運行范圍去掉
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <!--<scope>runtime</scope>--> </dependency>
10. java.sql.SQLException: The server time zone value '�й���ʱ��' is unrecognized or represents more than
這個是MySQL時區問題
解決方案
1.更換成低版本的MYSQL的依賴;
2.這時候只要在MySQL連接數據庫的url中加入?serverTimezone=UTC即可。
spring.datasource.url = jdbc:mysql://127.0.0.1:3306/markov_demo?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
報錯原因
SpringBoot整合MySQL的依賴包版本過高,在高版本的MySQL依賴中數據庫和系統時區差異所造成的。系統為SQL默認美國時間,而我們中國要比他們遲8小時,因此將時區設置為當前系統時區即可,采用+8:00格式
11. SpringBoot 2.x新版本整合jdbc執行SQL文件建表失敗無報錯
在用SpringBoot整合JDBC的時候 莫名其妙的發現建表失敗了並且沒有報錯提示
在Spring2.x新版本中 要執行sql文件 還須配置spring.datasource.initialization-mode=always 表示始終執行初始化
spring:
datasource:
initialization-mode: always
否則的話 默認僅初始化嵌入的數據源 而不會初始化所有數據源 因而需要手動指定