zoukankan      html  css  js  c++  java
  • 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类外无需其他配置就可以添加控制器,也就大大便利了开发。

  • 相关阅读:
    实战DeviceIoControl 之五:列举已安装的存储设备
    在NT中直接访问物理内存
    实战DeviceIoControl 之三:制作磁盘镜像文件
    实战DeviceIoControl 之六:访问物理端口
    程序员的十层楼(转)
    Vista + VS2005 源代码绑定的问题
    敬告天下IT业主
    手动卸载windows服务
    古墓丽影9的截屏
    白领饮食十大“夺命”恶习(转)
  • 原文地址:https://www.cnblogs.com/lvniao/p/9038766.html
Copyright © 2011-2022 走看看