springboot跳转到指定页面和(重定向,请求转发的写法) 您所在的位置:网站首页 springmvc如何跳转页面 springboot跳转到指定页面和(重定向,请求转发的写法)

springboot跳转到指定页面和(重定向,请求转发的写法)

2024-03-27 12:51| 来源: 网络整理| 查看: 265

一 springboot跳转到指定页面

1.controller的写法:   必须是templates下面的页面,不经过配置,无法直接跳转到public,static,等目录下的页面

package com.ljf.spring.boot.demo.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * @ClassName: UserController * @Description: TODO * @Author: liujianfu * @Date: 2021/04/01 10:26:05  * @Version: V1.0 **/ @Controller public class UserController { @RequestMapping("/api/show") public String showName(String userName,Model model){ System.out.println("进入controller层了!!!"+userName); model.addAttribute("name",userName); return "index";//跳转到指定页面 } } 二 springboot重定向和请求转发 2.1 springboot重定向

方式一:使用 "redirect" 关键字(不是指java关键字),注意:类的注解不能使用@RestController,要用@Controller;因为@RestController内含@ResponseBody,解析返回的是json串。不是跳转页面

方式一:使用 "redirect" 关键字(不是指java关键字),注意:类的注解不能使用@RestController,要用@Controller @RequestMapping(value="/test/test01/{name}" , method = RequestMethod.GET) public String test(@PathVariable String name) { return "redirect:/ceng/hello.html"; }

方式二:使用servlet 提供的API,注意:类的注解可以使用@RestController,也可以使用@Controller 

方式二:使用servlet 提供的API,注意:类的注解可以使用@RestController,也可以使用@Controller @RequestMapping(value="/test/test01/{name}" , method = RequestMethod.GET) public void test(@PathVariable String name, HttpServletResponse response) throws IOException { response.sendRedirect("/ceng/hello.html"); } 2.2 springboot的请求转发

方式一:使用 "forward" 关键字(不是指java关键字),注意:类的注解不能使用@RestController 要用@Controller

方式一:使用 "forward" 关键字(不是指java关键字),注意:类的注解不能使用@RestController 要用@Controller @RequestMapping(value="/test/test01/{name}" , method = RequestMethod.GET) public String test(@PathVariable String name) { return "forword:/ceng/hello.html"; }

 方式二:使用servlet 提供的API,注意:类的注解可以使用@RestController,也可以使用@Controller

方式二:使用servlet 提供的API,注意:类的注解可以使用@RestController,也可以使用@Controller @RequestMapping(value="/test/test01/{name}" , method = RequestMethod.GET) public void test(@PathVariable String name, HttpServletRequest request, HttpServletResponse response) throws Exception { request.getRequestDispatcher("/ceng/hello.html").forward(request,response); }



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有