首先创建一个简单的webapp项目
@Controller
@RequestMapping("/book")
public class BookController {
@RequestMapping("/save")
@ResponseBody
public String save(String name){
System.out.println("book save name ==>"+name);
return "{'module:'book save''}";
}
}
@Controller
@RequestMapping("/user")
public class UserController {
//设置当前操作的访问路径
@RequestMapping("/save")
//设置当前操作的返回值类型
@ResponseBody
public String save(String name){
System.out.println("user save name ==>"+name);
return "{'module:'user save''}";
}
//设置当前操作的访问路径
@RequestMapping("/delete")
//设置当前操作的返回值类型
@ResponseBody
public String delete(String name){
System.out.println("user delete name ==>"+name);
return "{'module:'user delete''}";
}
}
请求映射路径
请求方式
- Get请求
http://localhost/user/save?name=hhhh&age=18
- Post请求
处理Post请求中文乱码
在servlet容器启动的配置类中重载方法
//乱码处理
@Override
protected Filter[] getServletFilters() {
CharacterEncodingFilter filter = new CharacterEncodingFilter();
filter.setEncoding("UTF-8");
return new Filter[]{filter};
}
请求参数
普通参数:url地址传参,地址参数名与形参变量名相同,定义形参即可接收参数
使用注解@RequsetParam("name"),可以绑定请求参数和形参直接的关系。
POJO参数:请求参数名与形参对象属性名相同,定义P0J0类型形参即可接收参数
user ==>User{userid=null, usercode='001', userpwd='null', isadmin=null, username='hyk',
telephone='null', gender='null', age=51, address=Address{province='beijin',
city='beijin'}, createdon=null, updatetime=null}
数组参数: 根据参数名自动识别,请求参数名与形参对象属性名相同且请求参数为多个,定义数组类型形参即可接收参数
集合保存普通参数:请求参数名与形参集合对象名相同且请求参数为多个,@RequestParam绑定参数关系