我使用的是春天啓動1.5.2和我的彈簧安置控制器彈簧安置控制器看起來像這樣沒有返回HTML
@RestController
@RequestMapping("/")
public class HomeController {
@RequestMapping(method=RequestMethod.GET)
public String index() {
return "index";
}
}
當我去http://localhost:8090/assessment/到達我的控制器,但不回我的索引。 html,它位於src/main/resources或src/main/resources/static下的Maven項目中。如果我轉到此網址http://localhost:8090/assessment/index.html,它會返回我的index.html。我看了這篇教程https://spring.io/guides/gs/serving-web-content/,他們使用百里香。我是否必須使用百里香或類似的東西來讓我的彈簧控制器恢復我的視野?
我的應用程序類看起來像這樣
@SpringBootApplication
@ComponentScan(basePackages={"com.pkg.*"})
public class Application {
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
}
當我添加到我的類路徑中thymeleaf依賴我得到這個錯誤(500響應代碼)
org.thymeleaf.exceptions.TemplateInputException: Error resolving template "index", template might not exist or might not be accessible by any of the configured Template Resolvers
我想我需要thymeleaf?我現在要嘗試正確配置它。
它可以改變我的控制器方法後返回的index.html像這樣
@RequestMapping(method=RequestMethod.GET)
public String index() {
return "index.html";
}
我覺得thymeleaf或軟件,如它可以讓你不用輸入這些文件的擴展名,不知道雖然。
對於初學者來說,讓它成爲['Controller'](https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/stereotype/Controller.html)而不是' RestController' –
現在它仍然到達控制器,但是我得到了一個404,無論index.html是在src/main/resources還是在src/main/resources/static中。 http:// localhost:8090/assessment/index.html仍然有效 – gary69