SpringMVC(三)-- springmvc的系统学习之数据的处理,乱码及restful

资源:尚学堂 邹波 springmvc框架视频

一、提交数据的处理

1、提交的域名称和处理方法的参数一致

(1)提交的数据:http://localhost:8080/data/hello.do?name=zhangsan

      此处的name即为域名称。

(2)后台方法

@RequestMapping("/hello")
public String hello(String name) {}

此时后台则可接收到前台传递的值:zhangsan

 

2、提交的域名称和处理方法的参数不一致

 

(1)提交的数据:http://localhost:8080/data/hello.do?uname=zhangsan

      此处的name即为域名称。

(2)后台方法

@RequestMapping("/hello")
public String hello(@RequestPara("uname") String name) {}
 

3、提交是一个对象

若提交的表单域名和对象的属性一致,则方法参数使用对象即可。

 

(1)提交的数据:http://localhost:8080/data/hello.do?name=zhangsan&&pwd=123456

(2)后台方法

@RequestMapping("/hello")
public String hello(User user) {}

二、将数据显示到UI层

 

(1)通过ModelAndView  —— 需要视图解析器

(2)通过ModelMap —— 不需要视图解析器

@RequestMapping("/hello")
public String hello(ModelMap map) {
       map.addAttribute("name","zhangsan");
       return "index.jsp";
}
这两种方法都相当于request.setAttribute("name","zhangsan");

 

 

三、乱码
1、post乱码
用springmvc 中提供的CharacterEncodingFilter过滤器解决
在web.xml中配置如下

2、get方式乱码

方法一:修改tomcat的配置

方法二:自己写过滤器

四、restful风格的url

1、前台:http://localhost:8080/data/delete/1.do

后台:

//相当于delete?id=1
@RequestMapping("/delete/${id}")
public String hello(@PathVariable int id){}

此时接收到前台页面传递过来的参数:1

2、前台:http://localhost:8080/data/1/123/delete.do

后台:

@RequestMapping("${id}/${uid}/delete/")
public String hello(@PathVariable int uid, @PathVariable int id){}

此时,uid=1, id= 123

 

若是写成以下方式,则uid=123, id=1

@RequestMapping("${id}/${uid}/delete/")
public String hello(@PathVariable("id")  int uid, @PathVariable("uid") int id){}

 

 

转载于:https://www.cnblogs.com/OuZeBo/p/5949674.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值