• springboot实现转发和重定向


    1、转发

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

    1
    2
    3
    4
    @RequestMapping(value="/test/test01/{name}" , method = RequestMethod.GET)
    public String test(@PathVariable String name) {
        return "forword:/ceng/hello.html";
    }

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

    1
    2
    3
    4
    @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);
    }

     2、重定向

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

    1
    2
    3
    4
    @RequestMapping(value="/test/test01/{name}" , method = RequestMethod.GET)
    public String test(@PathVariable String name) {
        return "redirect:/ceng/hello.html";
    }

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

    1
    2
    3
    4
    @RequestMapping(value="/test/test01/{name}" , method = RequestMethod.GET)
    public void test(@PathVariable String name, HttpServletResponse response) throws IOException {
        response.sendRedirect("/ceng/hello.html");
    }

     使用API进行重定向时,一般会在url之前加上:request.getContextPath()

    纸上得来终觉浅,绝知此事要躬行。
  • 相关阅读:
    Spring_7_AOP之Advice应用
    JAVA豆知识
    SPRING事务_2
    JSP_5_JavaBean
    Spring事务_1
    java基本类型和包装类型
    SVN使用教程总结
    通过反射来创建对象?getConstructor()和getDeclaredConstructor()区别?
    Java泛型中extends和super的区别?
    数字签名、数字证书、对称加密算法、非对称加密算法、单向加密(散列算法)
  • 原文地址:https://www.cnblogs.com/bevis-byf/p/12397245.html
Copyright © 2020-2023  润新知