本篇建立記帳簿的第一支測試用的RestController。
在使用SpringBoot打造記帳簿專案(十)建立SpringBoot專案我們在Eclipse中建立了記帳簿SpringBoot專案,接下來會寫一隻測試專案是否正常的RestController。
首先開啟src/main/resources/application.properties
,在這邊設定記帳簿專案的環境目錄(context-path)為/moneynote
,及設定埠號(port)為8080
。
application.properties
#context
server.servlet.context-path=/moneynote
server.port=8080
application.properties
可設定的屬性請參考Appendix A. Common application properties
然後在src/main/java
下建立idv.matt.HelloController
。
HelloController
package idv.matt.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello() {
return "hello moneynote";
}
}
因為idv.matt.HelloController
的package不在SpringBootApplication類別MoneynoteApplication
下,所以如果要讓SpringBoot掃描並註冊這個Controller bean,必須在MoneynoteApplication
類別使用@ComponentScan
加入要掃描component的package位置。
若沒有設定@ComponentScan
,當你在送出request時,SpringBoot會認不得導向的Controller而導致Whitelabel Error Page錯誤。
MoneynoteApplication
package idv.matt.application;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
@SpringBootApplication
@ComponentScan(basePackages = { "idv.matt.controller" })
public class MoneynoteApplication {
public static void main(String[] args) {
SpringApplication.run(MoneynoteApplication.class, args);
}
}
完成以上後存檔,啟動moneynote專案,啟動後在瀏覽器網址列輸入http://localhost:8080/moneynote/hello
。
若執行成功返回如下畫面。
專案目錄結構如下
接著使用log4j2日誌,請參考使用SpringBoot打造記帳簿專案(十二)使用Log4j2 + SLF4J記錄日誌
參考:
沒有留言:
張貼留言