我的编程空间,编程开发者的网络收藏夹
学习永远不晚

在springMVC中controller的返回类型有哪些

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

在springMVC中controller的返回类型有哪些

这篇文章将为大家详细讲解有关在springMVC中controller的返回类型有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

1、返回ModelAndView

返回ModelAndView时最常见的一种返回结果。需要在方法结束的时候定义一个ModelAndView对象,并对Model和View分别进行设置。

2、返回String

1):字符串代表逻辑视图名

真实的访问路径=“前缀”+逻辑视图名+“后缀”

注意:如果返回的String代表逻辑视图名的话,那么Model的返回方式如下:

public String testController(Model model){model.addAttribute(attrName,attrValue);//相当于ModelAndView的addObject方法return "逻辑视图名"; }

2):代表redirect重定向

redirect的特点和servlet一样,使用redirect进行重定向那么地址栏中的URL会发生变化,同时不会携带上一次的request

案例:

public String testController(Model model){ return "redirect:path";//path代表重定向的地址 }

3):代表forward转发

通过forward进行转发,地址栏中的URL不会发生改变,同时会将上一次的request携带到写一次请求中去

案例:

 public String testController(Model model){ return "forward:path";//path代表转发的地址 }

3、返回void

返回这种结果的时候可以在Controller方法的形参中定义HTTPServletRequest和HTTPServletResponse对象进行请求的接收和响应

1)使用request转发页面

request.getRequestDispatcher("转发路径").forward(request,response);

2)使用response进行页面重定向

response.sendRedirect("重定向路径");

3)也可以使用response指定响应结果

response.setCharacterEncoding("UTF-8"); response.setContentType("application/json;charset=utf-8");  response.getWriter.write("json串");

以上三种返回值没有什么重要和不重要的分别,一般来说都会使用到, 只不过有的时候使用的方式会有一些细微的差别

补充:SpringMvc中,Controller方法的多种实现方式(指定返回到哪个页面,指定返回到页面的数据)

1)ModelAndView

@RequestMapping("/list") public ModelAndView itemsList() throws Exception{   List<Items> list = itmesService.list(); //创建ModelAndView视图 ModelAndView modelAndView = new ModelAndView(); //将list数据添加到试图里 modelAndView.addObject("itemList", list); modelAndView.setViewName("itemList");//设置视图的名称,即返回到哪个页面 //由于有视图解析器的作用,省去了前缀和后缀,其实访问的页面为("/WEB-INF/jsp/itemList.jsp") return modelAndView; }

2) String(最常用,最方便,建议)

@RequestMapping("/itemEdit/{id}") public String itemEdit(@PathVariable("id") Integer id, HttpServletRequest reuqest,   Model model) throws Exception{  //String idStr = reuqest.getParameter("id"); Items items = itmesService.findItemsById(id); //将items数据加到视图中 model.addAttribute("item", items);  //这里返回editItem,在@Controller的注解下,回自动添加前缀和后缀,实则是返回到页面("/WEB-INF/jsp/editItem.jsp") return "editItem"; }

3) 返回void

public void update(Items items,HttpServletRequest request,HttpServletResponse response)throws Exception{ //返回数据,将items的内容放入items里,jsp页面调用items就行 request.setAttribute("items", items); //返回指定的页面 //如果是void类型的话,就不会去调用SpringMvc的架构,因此无法自动加载视图解析器,所以跳转的 //网页名称应该为其全路径名称 request.getRequestDispatcher("/WEB-INF/jsp/success.jsp").forward(request, response); }就不会去调用SpringMvc的架构,因此无法自动加载视图解析器,所以跳转的 //网页名称应该为其全路径名称 request.getRequestDispatcher("/WEB-INF/jsp/success.jsp").forward(request, response); }

4)关于方法中所需要的参数定义

举3)中的例子,我在update方法中定义了:

Items items,HttpServletRequest request,以及HttpServletResponse response这三个类型.

但是大家可以发现,其实我在方法中是没有用到response的,因此,可以把其删掉,对于程序来说,并不会

产生影响。

因此,大家在定义方法的时候,可以根据自己的实际需要来定义所需要的类,或者大家怕以后代码需要改麻烦的话,

全部定义上也是可以的。

更新

5)若如果想要接口不是跳转页面,而是返回数据,则需要添加@ResponseBody的注解

例:

@RequestMapping("atimynyc/getUser")@ResponseBodypublic User getUser(String id){  User user = new User();  user.setUserName = "Atimynyc";  user.setUserAge = 18;  user.setUserPhone = "123456789";  return User;}

通过加上ResponseBody,springmvc就知道该接口是返回数据,例,当我们用ajax调用上面的接口url时atimynyc/getUser,就可以获得user这个对象。

关于在springMVC中controller的返回类型有哪些就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

在springMVC中controller的返回类型有哪些

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

在springMVC中controller的返回类型有哪些

这篇文章将为大家详细讲解有关在springMVC中controller的返回类型有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1、返回ModelAndView返回ModelAndVie
2023-06-06

在SpringMVC中使用 Controller 如何实现返回可选类型的值

本篇文章为大家展示了在SpringMVC中使用 Controller 如何实现返回可选类型的值,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。spring mvc 支持如下的返回方式:ModelAnd
2023-05-31

C++ 中函数的返回值类型有哪些?

c++++ 中函数的返回值类型定义了执行后返回的值的类型:基本类型:void(不返回值)、bool、整数、浮点、字符引用类型:类型引用、类型指针结构体或类:类型实例C++ 中函数的返回值类型函数的返回值类型定义了函数执行后返回的值的类型。
C++ 中函数的返回值类型有哪些?
2024-04-12

PHP 函数的返回值有哪些类型?

php 函数支持返回各种数据类型,包括基本类型(布尔值、整数、浮点数、字符串)、复合类型(数组、对象)、资源类型(文件句柄、数据库句柄)、空值(null)以及 void(php 8 中引入)。PHP 函数的返回值类型PHP 函数可以返回各
PHP 函数的返回值有哪些类型?
2024-04-11

PHP 函数返回值的类型有哪些?

php 函数可返回多种类型的值:无返回值、原始类型、数组、对象、资源。使用 type hints(如 : int)指定返回值类型可确保函数返回预期类型,提高代码可靠性和可维护性。PHP 函数返回值的类型PHP 函数可以返回不同类型的值,包
PHP 函数返回值的类型有哪些?
2024-04-11

PHP 中常见的函数返回值类型有哪些?

php 函数返回值类型决定了函数返回的数据类型,包括标量类型(int、float、string、bool、resource)、复合类型(array、object)和特殊类型(null、void)。实战中,函数可返回特定类型的返回值,例如整型
PHP 中常见的函数返回值类型有哪些?
2024-04-10

PHP 函数有哪些常见的返回值类型?

php函数可返回多种类型的数据,包括布尔值、整数、浮点数、字符串、数组、对象和空值。PHP 函数返回类型的常见类型PHP 函数可以返回各种类型的数据,包括:布尔值(bool):true 或 false整数(int):正数、负数或 0浮点数
PHP 函数有哪些常见的返回值类型?
2024-04-19

C++ 函数的返回值类型有哪些选择?

c++++ 函数的返回值类型指定了函数调用的结果类型。可用的返回值类型包括:基本类型:int、float、double、char、bool自定义类型:结构、类、联合void(不返回任何值)C++ 函数的返回值类型在 C++ 中,函数的返回
C++ 函数的返回值类型有哪些选择?
2024-04-19

PHP 函数返回值的具体类型有哪些?

php 函数返回值类型分为:1. 基本数据类型(int、float、bool、string、null);2. 特殊类型(void、mixed);3. 内置和自定义类;4. 复合数据类型(数组、对象)。PHP 函数返回值的具体类型在 PHP
PHP 函数返回值的具体类型有哪些?
2024-04-16

函数返回类型的选择和设计规范有哪些?

函数返回类型设计原则:语义化、可预测性、一致性、兼容性和可扩展性。建议规范:基本类型、自定义类型、空值、多个值、错误处理。函数返回类型的选择和设计规范函数返回类型是函数设计的重要组成部分,它决定着函数调用的结果。选择正确的返回类型可以提高
函数返回类型的选择和设计规范有哪些?
2024-04-12

PHP 函数返回对象类型的数据有哪些含义?

含义: php 函数返回对象类型数据时,表示创建了一个新对象的引用,并将其返回。对象动态创建并返回引用。对象可以在函数外部使用。优点:代码可重用性:对象封装状态和方法。信息封装:对象将数据和行为封装在一起。可扩展性:添加或修改方法可轻松扩展
PHP 函数返回对象类型的数据有哪些含义?
2024-04-20

PHP 函数返回特殊类型的数据具体有哪些?

PHP 函数返回特殊类型的数据在 PHP 中,函数可以返回特殊类型的数据,包括:空值 (null):表示未定义或不存在的值。布尔值 (boolean):表示真 (true) 或假 (false) 的值。整型 (integer):表示一个整
PHP 函数返回特殊类型的数据具体有哪些?
2024-04-20

PHP 函数返回数组类型的数据有哪些情况?

php 函数在返回数组类型的数据时可能会遇到以下情况:明确声明返回数组类型,则直接返回数组;返回 null 值会引发错误;调用接收数组的函数可返回另一个数组。PHP 函数返回数组类型的数据情况PHP 中,函数在返回数组类型的数据时,通常会
PHP 函数返回数组类型的数据有哪些情况?
2024-04-20

PHP 函数返回引用类型的数据有哪些含义?

在 php 中,函数返回引用类型的数据意味着它返回变量在内存中的地址,对该引用的更改会直接影响原始变量,从而提高效率和方便共享数据。PHP 中返回引用类型的数据意味着什么在 PHP 中,函数可以返回各种数据类型,包括引用类型。与值类型不同
PHP 函数返回引用类型的数据有哪些含义?
2024-04-21

如何在 PHP 中检查函数返回值的类型?

php 提供三种方法检查函数返回值类型:1. 使用 gettype() 函数;2. 使用 is_*() 函数;3. 使用 instanceof 运算符。这些方法可确保代码健壮性,避免意外错误。如何在 PHP 中检查函数返回值的类型?PHP
如何在 PHP 中检查函数返回值的类型?
2024-04-10

函数返回类型在 C++ 中是如何指定的?

c++++ 中,函数返回类型指定了函数调用后返回给调用方的值类型。步骤包括:选择与预期返回值相匹配的数据类型(如 int、float、char、bool)。在函数名称前放置选定类型的声明(如 int get_number())。C++ 中指
函数返回类型在 C++ 中是如何指定的?
2024-04-13

C++ 函数返回值类型在多态性中的作用

多态中,函数返回值类型规定了当派生类重写基类方法时,返回的具体对象类型。派生类方法的返回值类型可以与基类相同或更具体,允许返回更派生的类型,从而提高灵活性。C++ 函数返回值类型在多态性中的作用引言多态性是面向对象编程中的一项重要特征,
C++ 函数返回值类型在多态性中的作用
2024-04-13

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录