1)ModelAndView

@RequestMapping(value="/itemEdit")
public ModelAndView itemEdit(){
//创建模型视图对象
ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("username", "张三");//指定页面返回的数据
modelAndView.setViewName("test");//设置返回的视图名称 return modelAndView;
}

2)String(推荐使用)

1) 返回普通字符串,就是页面去掉扩展名的名称, 返回给页面数据通过Model来完成

@RequestMapping(value="/test1")
public String test1(Model model){

//添加数据
model.addAttribute("username", "李四");
model.addAttribute("address", "福州晋安区");
return "test";
}

2) forward: 请求转发,存入到model中的数据, 转发的方法响应的页面可以直接取出${username}--${address}

@RequestMapping(value="/test2")
public String test2(Model model){
//添加数据,请求转发携带的数据
model.addAttribute("username", "李四");
model.addAttribute("address", "福州晋安区"); //请求转发到另一个方法
return "forward:index";//相对路径
//return "forward:/test/index"; //绝对路径,"/"代表从项目名开始
} @RequestMapping(value="/index")
public String index(){
return "test";
}

页面

<body>
<!--页面显示: 李四--福州晋安区-->
${username}--${address}
</body>

3) redirect: 重定向

@RequestMapping("/testRedirect")
public String testRedirect(Model model){ //添加数据
model.addAttribute("username", "jack");
model.addAttribute("address", "美国纽约"); //重定向
return "redirect:index";
}

//http://localhost:8080/crm0618/test/index?username=jack&address=美国纽约 @RequestMapping(value="/index")
public String index(HttpServletRequest request) throws UnsupportedEncodingException{
String username = request.getParameter("username");
String address = new String(request.getParameter("address").getBytes("iso8859-1"), "utf-8"); return "test";
}

3)返回void(使用它破坏了springMvc的结构,所以不建议使用)

可以使用request.setAttribut 来给页面返回数据
可以使用request.getRquestDispatcher().forward()来指定返回的页面
如果controller返回值为void则不走springMvc的组件,所以要写页面的完整路径名称

@RequestMapping("/testRequest")
public void testRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
//将数据存入到request域中
request.setAttribute("username", "make");
request.setAttribute("address", "芝加哥"); request.getRequestDispatcher("/WEB-INF/jsp/test.jsp").forward(request, response);;
}

SpringMVC中 controller方法返回值的更多相关文章

  1. SpringMVC中Controller的返回值类型

    Controller方法的返回值可以有以下几种: 1.返回ModelAndView 返回ModelAndView时最常见的一种返回结果.需要在方法结束的时候定义一个ModelAndView对象,并对M ...

  2. Spring MVC中 controller方法返回值

    1.返回ModelAndView 定义ModelAndView对象并返回,对象中可添加model数据.指定view 2.返回String 1.表示返回逻辑视图名 model对象通过 model.add ...

  3. SpringMVC的@RequestMapping和Controller方法返回值

    本节内容: @RequestMapping Controller方法返回值 一.@RequestMapping 通过@RequestMapping注解可以定义不同的处理器映射规则. 1. URL路径映 ...

  4. SpringMVC入门(二)—— 参数的传递、Controller方法返回值、json数据交互、异常处理、图片上传、拦截器

    一.参数的传递 1.简单的参数传递 /* @RequestParam用法:入参名字与方法名参数名不一致时使用{ * value:传入的参数名,required:是否必填,defaultValue:默认 ...

  5. springmvc中Controller方法的返回值

    1.1 返回ModelAndView controller方法中定义ModelAndView对象并返回,对象中可添加model数据.指定view. 1.2 返回void 在controller方法形参 ...

  6. SpringMVC的Controller的返回值与接收的参数

    内容参考自博客: http://blog.csdn.net/u011001084/article/details/52846791 http://blog.csdn.net/xuxiaoyinliu/ ...

  7. SprimgMVC学习笔记(五)—— Controller方法返回值

    一.返回ModelAndView controller方法中定义ModelAndView对象并返回,对象中可添加model数据.指定view. /** * 查询商品列表 * @return */ @R ...

  8. Controller方法返回值

    1. 返回ModelAndView controller方法中定义ModelAndView对象并返回,对象中可添加model数据.指定view. //入门程序 第一 包类 + 类包 + 方法名 @Re ...

  9. Asp.net mvc中Controller的返回值

    (1)EmptyResult:当用户有误操作或者是图片防盗链的时候,这个EmptyResult就可以派上用场,返回它可以让用户啥也看不到内容,通过访问浏览器端的源代码,发现是一个空内容: public ...

随机推荐

  1. mysql5.6源码安装(转)

    mysql5.6源码安装 转自 jabbok博客园 https://www.cnblogs.com/jabbok/p/9418344.html 1 编译安装 1 2 3 4 5 6 groupadd ...

  2. 解决css中display:inline-block产生的空隙问题

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. Day3-O-Median POJ3579

    Given N numbers, X1, X2, ... , XN, let us calculate the difference of every pair of numbers: ∣Xi - X ...

  4. 前端学习笔记系列一:15vscode汉化、快速复制行、网页背景图有效设置、 dl~dt~dd标签使用

    ctrl+shift+p,调出configure display language,选择en或zh,若没有则选择安装使用其它语言,则直接呼出扩展程序搜索界面,选择,然后安装,重启即可. shift+a ...

  5. redis长篇介绍

    一. 简介 Redis 完全开源免费,遵守BSD协议,高性能的(NOSQL) key-value数据库 BSD 伯克利软件发行版 缓存数据集 所以都在内存上面 Redis 数据类型分为:字符串类型.散 ...

  6. HTML设置表格

    1. 设置表格内容对齐方式 在HTML中通常通过align设置对齐方式,文字是: text-align ,表格是:align 如果将align属性设置给<table>标签,只能改变< ...

  7. 设备树DTS 学习:4-编写实战

    背景 讲完设备树的有关概念以及语法以后,我们接下来就让 我们的驱动 使用 设备树. ref : <内核学习笔记14:内核设备树学习>.<u-boot对设备树的支持> 测试代码 ...

  8. Mac 终端启动AVD模拟器

    cd ~/Library/Android/sdk/tools ./emulator -list-avds // 列出av列表 Nexus_5X_API_26 ./emulator @Nexus_5X_ ...

  9. linux(centos6.9)下使用yum安装mysql,及启动MySQL等

    查看系统自带的mysql版本:rpm -qa | grep mysql 卸载mysql:rpm -e mysql-libs-5.1.73-8.el6_8.x86_64 --nodeps 1. 安装my ...

  10. android中的简单animation(四)3D transition

    animation_main_screen.xml: <?xml version="1.0" encoding="utf-8"?> <Fram ...