SpringMvc接收参数方法总结(必看篇)
程序员文章站
2023-12-14 14:41:52
接收参数的方式:
1.httpservletrequest方式接收
public modelandview test1(httpservletrequest...
接收参数的方式:
1.httpservletrequest方式接收
public modelandview test1(httpservletrequest req){ string username = req.getparameter("username"); string password = req.getparameter("password"); system.out.println(username); system.out.println(password); return new modelandview("jsp/hello"); }
2.@requestparam方式
public modelandview test2(string username, @requestparam("password") string pwd){ system.out.println(username+","+pwd); return new modelandview("jsp/hello"); }
3.对象的方式接收
public modelandview test3(user user){ system.out.println(user); return new modelandview("jsp/hello"); }
4.
/** * 使用modelandview传出参数 内部 httpservletrequest的attribute传递 到jsp页面 * modelandview(string viewname,map data)data是处理结果 */ @requestmapping("action") public modelandview test4(user user){ map<string, object> data = new hashmap<string, object>(); data.put("user", user); return new modelandview("jsp/hello",data); }
5. session的方式
/** * session存储 可以使用httpservletrequest的getsession方法访问 */ @requestmapping("action") public modelandview test7(httpservletrequest req){ httpsession session = req.getsession(); session.setattribute("salary", 6000.0); return new modelandview("jsp/hello"); }
6.重定向:
@requestmapping("/updateitem") //spirngmvc可以直接接收pojo类型:要求页面上input框的name属性名称必须等于pojo的属性名称 public modelandview updateitem(items items){ itemsservice.updateitems(items); //不可以加斜杠 解析不了 itemlist.action return new modelandview(new redirectview("itemlist.action")); }
7.重定向
@requestmapping("/updateitem") //spirngmvc可以直接接收pojo类型:要求页面上input框的name属性名称必须等于pojo的属性名称 public string updateitem(items items){ itemsservice.updateitems(items); //重定向到action 可以加斜杠 redirect:/itemlist.action 解析的了 return "redirect:itemlist.action"; }
使用model和modelmap的效果一样,如果直接使用model,springmvc会实例化modelmap。
如果使用model则可以不使用modelandview对象,model对象可以向页面传递数据,view对象则可以使用string返回值替代。不管是model还是modelandview,其本质都是使用request对象向jsp传递数据。
以上这篇springmvc接收参数方法总结(必看篇)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。