問題描述
今天重新在搭建spring boot項目的時候遇到訪問controller報404錯誤,之前在搭建的時候沒怎么注意這塊。新創建項目成功后,作為項目啟動類的application在com.blog.start包下面,然后我寫了一個controller,然后包的路徑是com.blog.ty.controller用的@restcontroller 注解去配置的controller,然后路徑也搭好了,但是瀏覽器一直報404。最后找到原因是spring boot只會掃描啟動類當前包和以下的包 ,就是說現在我啟動類的包是在com.blog.start下面,然后他就只會掃描com.blog.start或者com.blog.start.*下面所以的包,所以我的controller在com.blog.ty.controller包下面spring boot就沒有掃描到。
解決辦法
方法一:
以啟動類的包路徑作為頂層包路徑,列如啟動類包為com.blog.start,那么controller包路徑就為com.blog.start.controller。
方法二:
在啟動上方添加@componentscan注解,此注解為指定掃描路徑,例如:@componentscan(basepackages = {"com.blog.*,com.blog.ty.*"})
多個不同的以逗號分割。
1
2
3
4
5
6
7
|
@springbootapplication @componentscan (basepackages = { "com.blog.*,com.blog.ty.*" }) //指定掃描包路徑 public class myblogapplication { public static void main(string[] args) { springapplication.run(myblogapplication. class , args); } } |
下面看下springboot的作用
1.創建獨立的spring應用程序
2.嵌入的tomcat,無需部署war文件
3.簡化maven配置
4.自動配置spring
5.提供生產就緒型功能,如指標,健康檢查和外部配置
6.開箱即用,沒有代碼生成,也無需xml配置
分布式事務和操作多數據源事務解決方案:automatic+jta,兩段提交協議,mq推送
總結
以上所述是小編給大家介紹的解決spring boot 正常啟動后訪問controller提示404問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!
原文鏈接:https://www.cnblogs.com/tangyin/archive/2018/08/22/9517588.html