1. 创建web项目
2. 在springmvc的配置文件中指定注解驱动,配置扫描器
<!-- sprimgmvc 注解驱动 -->
<!-- <mvc:annotation-driven /> -->
<!-- springmvc的扫描器,一旦有扫描器的定义上面的mvc:annotation.. 就不需要了,扫描器已经有哪里注解驱动的功能 -->
<context:component-scan base-package="cn.edu.hqu.springmvc"></context:component-scan>
<!--视图解析器 前缀+ viewName +后缀 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!-- webroot到某一指定的文件夹的路径 -->
<property name="prefix" value="/WEB-INF/"></property>
<!-- 视图名称的后缀 -->
<property name="suffix" value=".jsp"></property>
</bean>
</beans>
在cn.hqu.springmvc下 新 建 TestController package cn.edu.hqu.springmvc;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller//用来标注当前类是springmvc的控制层的类
@RequestMapping("/test") //controller的唯一标识或者命名空间
public class TestController {
/**
* 方法的返回值是ModelAndVIew中的viewName
* @return
*/
@RequestMapping("/hello.do")//用来访问控制层的方法的注解
public String hello(){
return "jsp/index";
}
}
3. @controller:标识当前类是控制层的一个具体的实现 在TestController
/**
* HttpServletRequest可以直接定义在参数的列表
* @param request
* @return
*/
@RequestMapping("/toPerson.do")
public String toPerson(HttpServletRequest request) {
String result = request.getParameter("name");
System.out.println(result);
return "jsp/index";
}
重启tomcat访问:http://localhost:8080/springmvc-2/test/toPerson.do?name=jerome /**
* 在参数列表上直接定义要接收的参数名称,只要参数名称能匹配的上就能接收所传过来的数据
* 可以自动转换成参数列表里面的类型,注意的是值与类型之间是可以转换的
* @param name
* @return
*/
@RequestMapping("/toPerson1.do")
public String toPerson1(String name,Integer age,String address){
System.out.println(name+" "+age+" "+address);
return "jsp/index";
}
地址栏和代码两边的参数要一致; 如果有时间类型要 注册属性编辑
/**
* 注册时间类型的属性编辑器
* @param binder
*/
@InitBinder
public void initBinder(ServletRequestDataBinder binder){
binder.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat("yyyy-MM-dd"), true));
}
@RequestMapping("/toPerson1.do")
public String toPerson1(String name,Integer age,String address,Date birthday){
System.out.println(name+" "+age+" "+address+" "+birthday);
return "jsp/index";
}
重启tomcat,访问 Springmvc接收实体类:
在cn.edu.hqu.entity 新建一个类Person,将上面的四个参数写进去,get set方法和toString方法;
/**
* 传递的参数名字必须要和实体类的属性set方法后面的字符串匹配的上才能接收到参数
* @param person
* @return
*/
@RequestMapping("/toPerson2.do")
public String toPerson2(Person person){
System.out.println(person);
return "jsp/index";
}
重启tomcat 执行 /**
* 传递的参数名字必须要和实体类的属性set方法后面的字符串匹配的上才能接收到参数
* 请求中的参数只要是能和参数列表里面的变量名或者实体里面的set后面的字符串匹配的上就能接受到
* @param person
* @return
*/
@RequestMapping("/toPerson2.do")
public String toPerson2(Person person, User user){
System.out.println(person);
System.out.println(user);
return "jsp/index";
}
重启tomcat 执行 /**
* 对数组的接收
* @param names
* @return
*/
@RequestMapping("/toPerson3.do")
public String toPerson3(String[] names){
for(String result:names){
System.out.println(result);
}
return "jsp/index";
}
重启tomcat 执行 原文:http://www.cnblogs.com/jianyungsun/p/6666000.html