Spring mvc前台后台传值

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/T_P_F/article/details/80077976
  1. 前台向后台传值:
    ①同名参数传递:form表单中提交input,Controller方法入参中,直接以同名参数获取
    ②不同名参数传递:from表单提交input,Controller方法入参中需要使用注解:@RequestParam(“loginName”) String name,这样就把前台loginName的值放到name里面了
    注意:若前台传的参数为null或者””,则使用基本数据类型就会报错,包装类则没有问题
    ③对象传递:表单中是name值为对象的属性值,即使该属性为类类型,是需要在表单中使用.级联即可,例如用户类中address属性的类型是地址类,则表单中可以写成address.name
    ④List集合传递:表单中input的name属性需要指定下标例如users[0].firstName,name=”users[1].firstName,Controller方法中跟对象传递参数一致,因为使用到了下标,所以在动态添加行或者删除行时特别需要注意:假如下标第一个0,第二个是9,Spring会创建一个大小为10的List其中2到8的值会是null
    ⑤set集合传递:与List类似,表单与List一致,区别在于绑定Set数据时,必须先在Set对象中add相应的数量的模型对象。也就是说Set属性所在的类的构造函数中添加与表单对应数量的元素
    ⑥Map集合传递:表单中与Set相似,name属性值为users[‘x’].firstName, Controller中与List一致
    参照:https://blog.csdn.net/pangliang_csdn/article/details/52486787
  2. 后台向前台传值:
    ①使用Model的addAttribute(“mode”, “modeValue”)方法
    ②使用Request的setAttribute(“request”, “requestValue”)方法
    ③使用Map的put(“map”, “mapvalue”); 方法
    ④使用ModelAndVIew
1.      ModelAndView mav = new ModelAndView("user");  
2.      mav.addObject("ModelAndView", "ModelAndViewValue");  
3.      mav.setViewName("user");  

参照:https://blog.csdn.net/zuishengmengsi_/article/details/52619003

猜你喜欢

转载自blog.csdn.net/T_P_F/article/details/80077976