3. 添加多个控制器

Posted 旅鸟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3. 添加多个控制器相关的知识,希望对你有一定的参考价值。

在上篇的App中index方法表示网站的首页,而遵守单一职责原则,最好不要在App中添加其他接口,最好引入专门的控制器来提供服务,操作如下:
1. 添加HomeController控制器

2. 在HomeController类上添加@Controller注解和RequestMapping("/home")注解,并添加index方法;

package com.lvniao.blog.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@RequestMapping("/home")
public class HomeController {

    @RequestMapping("/")
    public String index(Model model) {
        model.addAttribute("hello", "Hello, main index!");
        return "home/index";
    }
}
HomeController

因为HomeController类所在的包是App类所在包下的controller包下的,而@SpringBootApplication注解使用@ComponentScan注解的,所以项目启动后会自动扫描所在报下的包,这样也就能后发现被Controller注解的HomeController;而通过@RequestMapping("/home")注解的类,其下的方法的路径也就自动添加了/home前缀,这样实际上访问index的url路径也就是:http://localhost:8080/home/;而index方法返回的是"home/index",这样视图解析器就会在template/home目录下找视图文件。相关视图文件如下:

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4 <title>vue demo</title>
 5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
 6 </head>
 7 <body>
 8     <h1 th:text="${hello}"></h1>
 9 </body>
10 </html>
index.html

这样添加控制器是遵守springboot约定的,所以除了@Controller类外无需其他配置就可以添加控制器,也就大大便利了开发。

以上是关于3. 添加多个控制器的主要内容,如果未能解决你的问题,请参考以下文章

依次播放多个音频片段

unity 5.6 animation与anmimator

恢复片段后android地图停止响应

sublime text 3 添加代码片段

sublime text 3 添加 javascript 代码片段 ( snippet )

在导航控制器上添加片段而不是替换片段?