mvc页面传值的几种方式,mvc页面跳转传值获取
MVC中传值有哪些方式
MVC中Controller向View传值的方式共有6种,分别是:
ViewBag
ViewData
TempData
向普通View页面传一个Model对象
向强类型页面传传一个Model对象
用一个ViewModel对象解决所有问题
.net-mvc前后端4种传值方式
1.)ViewData:后端以字典形式赋值(base.ViewData["key"]=value),前端显示界面直接(@ViewData["key"])调用。
2.)ViewBag:ViewBag为dynamic类型,后端可以直接进行赋值( base.ViewBag.name= ""),前端显示界面直接(@ViewBag.name)调用。 注:ViewBag可能会覆盖ViewData的数据
3.)TempData:后端以字典形式赋值(base.ViewData["key"]=value),前端显示界面直接(@TempData["key"])调用,但TempData的数据会保存到浏览器的session中,所以可以跨试图调用。
4.)Model:后端为正常实体类,在前端显示界面使用时,开头先引用命名空间,并以(@model ClassName)标记,后面直接(@Model.Name)使用。
后端控制器赋值
前端视图使用
springmvc前台向后台传值几种方式从简单到
通过HttpServletRequest
public String toIndex(HttpServletRequest request){
//获得前台name为username的元素的值
System.out.println(request.getParameter("username"));return "index";
}
通过参数名获得
@RequestMapping(value="/index")public String toIndex(String username){ //这里名字要与前端元素名字一致才能获得System.out.println(username);return "index";}
通过@RequestParam注解获得
@RequestMapping(value="/index")public String toIndex(@RequestParam(value="username",required=false)String username111){ //username要与前端一致,在此处可以理解为参数username111的别名System.out.println(username111);return "index";}
SpringMvc还能通过将vo作为参数获得vo的各个属性@RequestMapping(value="/index")public String toIndex(User user){System.out.println(user.getUserName());System.out.println(user.getPassword());return "index";