zoukankan      html  css  js  c++  java
  • SpringMVC框架学习笔记(5)——数据处理

    1.提交数据的处理

    a)提交的域名称和参数名称一致

    http://localhost:8080/foward/hello.do?name=zhangsan

    处理方法

    @RequestMapping(value = "/hello.do")
    public String hello(String name) {
        System.out.println(name);
        return "index.jsp";
    }

    b)如果域名称和参数名称不一致

    http://localhost:8080/foward/hello.do?uname=zhangsan

    处理方法

    @RequestMapping(value = "/hello.do")
    public String hello(@RequestParam("uname")String name) {
        System.out.println(name);
        return "index.jsp";
    }

    c)提交的是一个对象

    要求提交的表单域名和对象的属性名一致,参数使用对象即可

    http://localhost:8080/foward/user.do?name=zhangsan&pwd=123

    处理方法

    @RequestMapping(value = "/user")
    public String hello(User user) {
        System.out.println(user);
        return "index.jsp";
    }

    2.将数据显示到UI层

    第一种通过ModelAndView-需要视图解析器

    @Override
    public ModelAndView handleRequest(HttpServletRequest req,
            HttpServletResponse resp) throws Exception {
        ModelAndView mv = new ModelAndView();
        mv.setViewName("hello");
        mv.addObject("msg", "first spring mvc app");
        return mv;
    }

    第二种通过ModelMap来实现-不需要视图解析器

    @RequestMapping(value = "/hello.do")
    public String hello(String name, ModelMap mp) {
        System.out.println(name);
        //相当于request.setAttribute("name", name);
        mp.addAttribute("name", name);
        return "index.jsp";
    }

    ModelAndView和ModelMap的区别

    相同点:均可以将数据封装显示到表现层

    不同点:ModelAndView可以指定跳转的视图,而ModelMap不能,ModelMap不需要配置视图解析器

  • 相关阅读:
    1025 反转链表
    Vue--修饰符
    Vue--watch
    Vue--防止页面闪烁
    Vue--过滤器
    Vue--自定义指令
    Vue--生命周期
    vue--父子组件传递数据
    vue--父子组件调用彼此的方法
    Celery--beat
  • 原文地址:https://www.cnblogs.com/huangjian2/p/6651145.html
Copyright © 2011-2022 走看看