controller 层 获取 页面 传来的值

在controller中获取前台传递的参数

将页面数据传递到controller

页面表单:

用户名:
年龄:
生日:

Controller为:

/**

* 1、直接使用形参获取前台传递的参数数据

* 要注意的是形参的名字必须和页面参数的名字一致

* @param model

* @param name

* @param age

* @param birth

* @return

*/

@RequestMapping(method=RequestMethod.POST)

publicString addUser(Model model,String name,Integer age,Date birth){

  model.addAttribute("message","添加了一个用户");

  System.out.println("name:"+name+ "\tage:"+age+"\tbirht:"+birth);

  System.out.println("UserController.addUser()");

  return"/WEB-INF/jsp/addsuc.jsp";

}

/**

* 2、使用对象接受前台传递的参数,

* 要注意的是前台传递的参数的名称必须和对象的属性名称一直,如果不一致则可以使用@ModelAttribute("u")String uname指定

*/

@RequestMapping(method=RequestMethod.POST)

publicString addUser(Model model,User user){

  model.addAttribute("message","添加了一个用户");

  System.out.println("name:"+user.getName()+ "\tage:"+user.getAge()+"\tbirht:"+user.getBirth());

  System.out.println("UserController.addUser()");

  return"/WEB-INF/jsp/addsuc.jsp";

}

接收值–四种方法:

第一种:参数直接写在controller参数列表中

@RequestMapping(“/test1.action”)
public ModelAndView test1(String name){
System.out.println(name);
return null;
}

第二种:request

@RequestMapping(“/test2.action”)
public ModelAndView test2(HttpServletRequest request){
System.out.println(request.getParameter(“name”));
return null;
}

第三种:指定传参

@RequestMapping(“/test3.action”)
public ModelAndView test3(@RequestParam(“name3”) String name){
System.out.println(name);
return null;
}

第四种:通过对象

@RequestMapping(“/test4.action”)
public ModelAndView test4(User user){
System.out.println(user);
return null;
}

传值–三种方法:

第一种:request

@RequestMapping(“/test5.action”)
public String test5(HttpServletRequest request,User user){
request.setAttribute(“message”, user.getName());
return null;
}

第二种:ModelAndView

@RequestMapping(“/test6.action”)
public ModelAndView test6(User user){
System.out.println(user);
ModelAndView mv = new ModelAndView();
mv.addObject(“message”, user.getName() );
mv.setViewName(“/index1.jsp”);
return mv;
}

第三种:Model

@RequestMapping(“/test7.action”)
public String test7(User user,Model model){
System.out.println(user);
model.addAttribute(“message”, user.getName() + ” hello”);
return “/index1.jsp”;
}

注:springmvc传值不止这三种方法

  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值