springmvc(5)数据的处理

1.提交数据的处理

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

http://localhost:8080/hello?name=zhangsan

   @RequestMapping("/hello")
    public String hello(String name){
        System.out.println(name);
        return "hello";
    }

b)如果域名称和提交的参数名不一致:

http://localhost:8080/hello?uname=zhangsan

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

如果uname没有被转过来,将会报错

c)如果提交的是一个对象:

提交的域名和对象的属性名一致,处理器的参数使用对应的对象即可(这样写的前提条件是User必须有一个默认构造器,就是无参构造器,否则会报错):

http://localhost:8080/user?name=zhangsan&pws=123

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

实体类:
public class User {
private String name;
private String pws;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getPws() {
return pws;
}

public void setPws(String pws) {
this.pws = pws;
}
}
 

2.将数据显示到ui层:

a)通过ModelAndView,有没有视图解析器都一样,但是需要将ModelAndView返回。

  @RequestMapping("/hello")
    public ModelAndView hello(HttpServletRequest request,HttpServletResponse response){
        ModelAndView modelAndView = new ModelAndView();
        //相当于request.setAttribute("msg","modelAndView");
        modelAndView.addObject("msg","modelAndView");
        modelAndView.setViewName("hello");
        return modelAndView;
    }

b)通过ModelMap,有没有视图解析器都一样,但是需要将ModelMap作为处理器的参数。

@RequestMapping("/hello")
public String hello(ModelMap modelMap){
//相当于request.setAttribute("msg","modelMap");
modelMap.addAttribute("msg","modelMap");
return "index.jsp";
}

 

posted @ 2019-06-13 22:01  yuby  阅读(163)  评论(0编辑  收藏  举报