Spring 通过Controller 向 View 传值的方法有以下四种

  1. HttpServletRequest
  2. ModelAndView
  3. Map<String, Object> map
  4. Model model

第一种

需要参数HttpServletRequest 返回值是jsp页面

@RequestMapping("/query1.do")

public String queryUser1(HttpServletRequest request){

String name = "张三";

request.setAttribute("name", name);

UserInfo user = new UserInfo();

user.setUserId(9257);

user.setUserName("华安");

request.setAttribute("user", user);

return "query";

}

第二种 ModelAndView 返回值是ModelAndView 参数不需要

@RequestMapping("/query2.do")

public ModelAndView queryUser2(){

UserInfo user = new UserInfo();

user.setUserId(1001);

user.setUserName("秋香");

//model

Map<String,Object> map = new HashMap<String,Object>();

map.put("user2", user);

return new ModelAndView("query",map);

}

第三种 参数是Map 返回值是jsp页面

@RequestMapping("/query3.do")

public String queryUser3(Map<String,Object> map){

UserInfo user = new UserInfo();

user.setUserId(1002);

user.setUserName("石榴");

map.put("user3", user);

return "query";

}

第四种 参数是Model 返回值是jsp 使用model的addAttribute方法

@RequestMapping("/query4.do")

public String queryUser4(Model  model){

UserInfo user  = new UserInfo();

user.setUserId(1);

user.setUserName("华夫人");

model.addAttribute("user4", user);

return "query";

}

但是无论哪一种方式 简单参数或对象都可以通过变量名来显示

userId:${user4.userId }

userName:${user4.userName }

但是数组的返回值会显示则会有问题,如:直接返回数组

@RequestMapping("/query5.do")

public String queryUser5(Model  model){

UserInfo user  = new UserInfo();

user.setUserId(1);

user.setUserName("华夫人");

List<UserInfo> list = new ArrayList<UserInfo>();

list.add(user);

list.add(user);

list.add(user);

model.addAttribute("list", list);

return "query";

}

userId:${list}

list:[UserInfo [userId=1, userPw=null, userName=华夫人, userAge=null, userBrithday=null, xqs=null], UserInfo [userId=1, userPw=null, userName=华夫人, userAge=null, userBrithday=null, xqs=null], UserInfo [userId=1, userPw=null, userName=华夫人, userAge=null, userBrithday=null, xqs=null]]

sring mvc 返回值至jsp界面的几种方式的更多相关文章

  1. mvc 返回值

    mvc返回值为Model类型 public ActionResult Index(T result) { return View(result); } view中的对象即为页面中的Model数据,之后 ...

  2. jira插件带ui界面和几种方式

    http://localhost:2990/jira/plugins/servlet/issuecrud jira插件带ui界面和几种方式 https://developer.atlassian.co ...

  3. 访问WEB-INF下JSP资源的几种方式(转)

    访问WEB-INF下JSP资源的几种方式 方法一: 本来WEB-INF中的jsp就是无法通过地址栏访问的,所以安全. 如果说你要访问这个文件夹中的jsp文件需要在项目的web.xml文件中去配置ser ...

  4. spring MVC 返回值信息和ResponseBody的响应json数据

    spring mvc的界面返回: 如果我们定义的返回类型是String 那么我们返回的时候直接写入 我们的界面的名字就可以了  springmvc会自动去找到我们的界面,如果是void类型的返回那么 ...

  5. WebView 加载网页返回后,jsp界面数据消失(一个斜杆引起来的风波)

    http://ip:port//interface/app/index.jsp 如果不小心就会把,port后面的//两个斜杆给忽略... 当有两个斜杆时,webview仍可以将网页,正常加载.但是数据 ...

  6. 在一个JSP页面中包含另一个JSP页面的三种方式

    转载自://http://blog.163.com/neu_lxb/blog/static/179417010201121343132918/ (1)include指令          includ ...

  7. JSP连接数据库的两种方式:Jdbc-Odbc桥和Jdbc直连(转)

    学JSP的同学都要知道怎么连数据库,网上的示例各有各的做法,弄得都不知道用谁的好.其实方法千变万化,本质上就两种:Jdbc-Odbc桥和Jdbc直连. 下面先以MySQL为例说说这两种方式各是怎么连的 ...

  8. ios 实现跳转到评价界面的两种方式

    要想在App内跳转到特定App的详情页或者评论页,首先需要获取到App的id.在 iTunes Connect网站上登陆之后,选择“我的App”,然后点击某个特定的App进入,在App信息的综合信息中 ...

  9. 一个jsp页面引入另一个jsp页面的三种方式 及静态引入和动态引入的区别

    转载下, 转载自:http://blog.csdn.net/fn_2015/article/details/70311495 1.第一种:jstl  import <c:import url=& ...

随机推荐

  1. The Triangle

    针对如下形式的ACM试题,大多出自南阳理工学院的在线ACM试题(网址: 南阳理工在线评测系统),在此非常感谢,同时也非常感谢作者的分享! 时间限制:1000 ms  |  内存限制:65535 KB ...

  2. Mac系统下使用VirtualBox虚拟机安装win7--第二步 创建win7系统

    第二步 创建win7系统   启动 Virtual Box 以后,点击窗口左上角的“新建”按钮,如图所示

  3. APP测试流程(个人整理)

  4. Generic Access Profile

    转自:https://www.bluetooth.com/specifications/assigned-numbers/generic-access-profile ​​Assigned numbe ...

  5. linux中创建gpio节点

    转自:http://blog.chinaunix.net/uid-29165999-id-4296162.html #define GPIO_MAJOR 230 // major device NO. ...

  6. .net学习之泛型、程序集和反射

    一.泛型1.CLR编译时,编译器只为MyList<T>类型产生“泛型版”的IL代码——并不进行泛型的实例化,T在中间只充当占位符.例如:MyList 类型元数据中显示的<T> ...

  7. HDU5781 ATM Mechine(DP 期望)

    应该是machine 和POJ3783 Balls类型相似. 现在上界为i元,猜错次数最多为j时,开始猜测为k元,有两种情况: 1 猜中:(i - k + 1) * dp[i - k][j] 2 猜不 ...

  8. 2016"百度之星" - 初赛(Astar Round2A)Gym Class(拓扑排序)

    Gym Class  Accepts: 849  Submissions: 4247  Time Limit: 6000/1000 MS (Java/Others)  Memory Limit: 65 ...

  9. Linux环境下使用shell编写CGI(httpd)

    /var/www/cgi-bin/hello.sh #!/bin/bash echo "Content-type: text/html" echo "" ech ...

  10. Oracle Segments可以跨多个data files吗?

    首先,你需要明白的一点是:数据库的物理结构是由数据库的操作系统文件所决定,每一个Oracle数据库是由三种类型的文件组成:数据文件.日志文件和控制文件.数据库的文件为数据库信息提供真正的物理存储.每一 ...