SpringMVC之学习(2)值得接收和传递
springmvc中
@Controller 来标识一个控制器
@RequestMapping来标识请求路径,可以写在类名上,也可以写在方法名上。写在类,表示所有的方法都在此路径下。
package com.sun.action; import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping; @Controller
@RequestMapping("/view")
public class ViewPageController { @RequestMapping("/index")
public String Index(){ return "index";
} @RequestMapping("/index2")
public String Index2(){ return "index2";
}
}
传递值给页面显示的方式
一种是Model 一种是ModelAndView
@RequestMapping("/hello")
public String hello(Model model){ //讲参数传递给页面显示
model.addAttribute("name", "page name ====== hello");
return "hello";
}
这里return 的内容就是jsp的名字。
//返回页面,同时返回值
@RequestMapping(value = "/queryListMV.do")
public ModelAndView queryListMV(HttpServletRequest request,
HttpServletResponse response) {
ModelAndView mv = new ModelAndView();
mv.setViewName("/newuser"); //返回页面名
mv.addObject("data", new User());//返回map对象
return mv;
}
这里ViewName 里面的内容就是jsp页面的名。
参数的接收
第一种,当时是直接从request里面接收表单或者URL传过来的值。
@RequestMapping(value = "/queryListMV2.do",method=RequestMethod.GET)
public ModelAndView queryListMV2(HttpServletRequest request,
HttpServletResponse response) { String name = request.getParameter("name");
Integer age = Integer.valueOf(request.getParameter("age")); User user = new User();
user.setName(name);
user.setAge(age);
ModelAndView mv = new ModelAndView();
mv.setViewName("/newuser"); //返回页面名
mv.addObject("data",user);//返回map对象
return mv;
}
第二种 从path 上获取指定的参数
/*
* @PathVariable 指定path上面的参数
*/
@RequestMapping("/pathview/{age}/{years}/{month}")
public String pathview(Model model,
@PathVariable(value="age") String age,
@PathVariable(value="years") String years,
@PathVariable(value="month") String month
){ model.addAttribute("age", age);
model.addAttribute("years", years);
model.addAttribute("month", month);
model.addAttribute("name", "page name ====== pathview"); return "pathview";
}
第三种:用requestParam 接收
/*
* @RequestParam 用来接收超链接的参数,可以设置默认值
*/ @RequestMapping("/userInfo")
public String userInfo(Model model,@RequestParam(value="name",defaultValue=adminuser) String name){ if("admin".equals(name)){
//讲参数传递给页面显示
model.addAttribute("name", "page name ====== "+ name);
}else{
model.addAttribute("name", "page name ====== "+ name);
} return "userInfo";
}
第四种, 用 @ModelAttribute接收表单对象
/*
* * 传递对象,通过对象,接受form表单的对象值
*/ @RequestMapping(value="/adduser",method=RequestMethod.POST)
public String adduser(Model model,@ModelAttribute("SpringWeb")User user){ model.addAttribute("name", user.getName());
model.addAttribute("age", user.getAge());
model.addAttribute("id", user.getId()); System.out.println("");
return "adduser";
}
SpringMVC之学习(2)值得接收和传递的更多相关文章
- Springmvc中 同步/异步请求参数的传递以及数据的返回
转载:http://blog.csdn.net/qh_java/article/details/44802287 注意: 这里的返回就是返回到jsp页面 **** controller接收前台数据的方 ...
- SpringMVC项目学习1_web.xml
最近接触的所有项目都是SpringMVC+ajax的项目,因此以一个项目为例学习下. --------------------------------------------------------- ...
- springmvc中同步/异步请求参数的传递以及数据的返回
注意: 这里的返回就是返回到jsp页面 **** controller接收前台数据的方式,以及将处理后的model 传向前台***** 1.前台传递数据的接受:传的属性名和javabean的属性相同 ...
- SpringMVC入门学习(二)
SpringMVC入门学习(二) ssm框架 springMVC 在上一篇博客中,我简单介绍了一下SpringMVC的环境配置,和简单的使用,今天我们将进一步的学习下Springmvc的操作. mo ...
- SpringMVC入门学习(一)
SpringMVC入门学习(一) ssm框架 spring SpringMVC是一个Java WEB框架,现在我们知道Spring了,那么,何为MVC呢? MVC是一种设计模式,其分为3个方面 mo ...
- springMVC @ModelAttribute学习
springMVC @ModelAttribute学习 博客分类: Spring @ModelAttribute 绑定请求参数到命令对象 @ModelAttribute一个具有如下三个作用: ①绑 ...
- spring controller接口中,用pojo对象接收页面传递的参数,发现spring在对pojo对象赋值时,有一定顺序的问题
1.我的项目中的实体类都继承了基类entityBase,里面封装了分页的一些属性,pageindex.pagesize.pagerownum等. 2.思路是页面可以灵活的传递分页参数,比如当前页pag ...
- springmvc接收ajax传递的数组
之前的方法我用字符串拼接.req.getParameter("参数名[]");或json方式.虽然都能用,但是都不太令我满意. 今天参考这个贴子,ajax添加 traditiona ...
- SpringMVC 学习 十一 springMVC控制器向jsp或者别的控制器传递参数的四种方法
以后的开发,大部分是发送ajax,因此这四种传递参数的方法,并不太常用.作为了解吧 第一种:使用原生 Servlet 在控制器的响应的方法中添加Servlet中的一些作用域:HttpRequestSe ...
随机推荐
- .net连接MySQL的方法
摘自:http://www.cnblogs.com/huayangmeng/archive/2011/04/06/2006866.html 最近要用C#做一个东西,连接之前项目的数据库(用MySQL建 ...
- js 动态增加行删除行
<body> <table id="tableID" border="1" align="center" width=&q ...
- jsp处理表单上传图片(commons-fileupload-1.2.2.jar,commons-io-2.4.jar)
upload.jsp <%@ page language="java" import="java.util.*" pageEncoding="U ...
- Android 弹出有确认按键的对话
//弹出对话框-------------------------------------------------- private void openDialog(String strMsg, Str ...
- DBA_Oracle Erp R12系统文件结构(概念)
20150609 Created By BaoXinjian
- Java 异常模型综述
一. 异常的引入及基础 发现错误的理想时机是在编译阶段.也就是在你试图运行程序之前. 然而,编译期间编译器并不能找出全部的错误,余下的错误仅仅有在运行期才干发现和解决,这类错误就是 Throwable ...
- oracle字符串处理函数--待整理
http://www.cnblogs.com/xd502djj/archive/2010/08/11/1797577.html http://blog.csdn.net/qq373591361/art ...
- sklearn 中的交叉验证
sklearn中的交叉验证(Cross-Validation) sklearn是利用python进行机器学习中一个非常全面和好用的第三方库,用过的都说好.今天主要记录一下sklearn中关于交叉验证的 ...
- MySQL查看SQL语句执行效率(转)
Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看 SQL 语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好 ...
- cocos2dx 3.x designResolutionSize须主动设置
cocos2dx 3.x最初设置screenSize和designResolutionSize的地方如下: bool AppDelegate::applicationDidFinishLaunchin ...