6/20 通过注解Annoation实现SpringMVC配置、命名空间、处理方法参数、中文乱码处理、前台对象接受、resful、处理方法的返回值、视图解析器(自动加前后缀)

添加注解扫描器

上面那句就不要了,不用一个一个配置方法名了。 直接使用注解扫描器即可。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述(图中的second.do忘了加斜杠)
在这里插入图片描述
现在,后缀使用my.do first.do 都可以访问这个页面了。

当遇到多个注解的时候,如何区分?解决:

添加命名空间

在这里插入图片描述
然后访问的时候就需要加这上这个命名空间了
在这里插入图片描述

URL通配

 *  代表任意(一般都用不上)

在这里插入图片描述

在这里插入图片描述
可以随便加。
在这里插入图片描述


限定提交方式(post/get)

在这里插入图片描述

限定请求参数

在这里插入图片描述
这样的话 没有参数 请求就会404
在这里插入图片描述
有参数就可以了
在这里插入图片描述
在这里插入图片描述
限制提交的参数 name必须叫zs
在这里插入图片描述

处理方法的参数

HttpServletRequest
HttpServletResponse
HttpSession
请求参数

在这里插入图片描述
在这里插入图片描述

当传输方式为post/get的时候 ,传输中文的时候会乱码
在这里插入图片描述

前台传输乱码中文问题

get请求有乱码:修改tomcat里面的encoding编码
post请求有乱码: 1.req.setcharacterencoding(“utf-8”)
2.来自框架
方法:characterEncodingFilter
参数:
encoding
forceEncoding(默认为假,改成真)
在这里插入图片描述
在这里插入图片描述

校正请求参数

若表单的名字和servlet处理器的接收参数的名字不一致。
前面是sname
在这里插入图片描述
处理器里面是name
在这里插入图片描述
添加矫正器
在这里插入图片描述
若不加的话
在这里插入图片描述

对象接收

new一个学生,有name age属性

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

当这个对象有域属性的时候

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这个不变。(图中的post 可有可无)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


在这里插入图片描述

restful风格

斜杠代替?method=?
在这里插入图片描述
注意,这个路径里面的 1 就是请求的参数(模拟)
在这里插入图片描述

在这里插入图片描述
这样就可以获取到传过来的id
在这里插入图片描述


处理方法的返回值

String

返回值为String的时候 有三种情况,直接返回,通过转发返回、通过重定向返回。
在这里插入图片描述
注意:转发和重定向的 斜杠 ”/“ 都是相对路径,
但是 forward 的斜杠 是服务端的
redirect的斜杠 是客户端的
但是在Spring框架的这里,两个斜杠都是服务器端的,而且这里的rediret不再需要写带有完整路径的名字,就是加上项目名那些,是因为Spring框架的底层已经自动帮你加上了。

在这里插入图片描述
在上面三种情况测试成功的情况下,添加一个视图解析器。
在这里插入图片描述

此时再来测试三个表单的提交,

第一个出现404,因为路径被视图解析器编辑了,加上了前缀和后缀
在这里插入图片描述
第二、第三个正常
在这里插入图片描述
在这里插入图片描述
所以,视图解析器不会影响转发和重定向,但是会影响直接返回的String。


返回值为String的情况下,支持各种视图解析器
如下图:
在这里插入图片描述
在这里插入图片描述
配置了其他的视图解析器。

通过测试发现这两个方法 既不是转发也非重定向,但是并没有被
在这里插入图片描述
影响而增加了前后缀导致404, 这是由于当存在多个视图解析器的时候,将这个默认的视图解析器放最后,它的优先级最低。


返回void

1.使用Servlet的原生api

在这里插入图片描述
在这里插入图片描述

ajax(需导入jar包。)

在这里插入图片描述

在这里插入图片描述处理json
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

返回Object(通过jackson)

使用jackson 实现Ajax响应

首先添加jackson的jar包

在这里插入图片描述

配置注解驱动

在这里插入图片描述

鉴于返回json字符串的方法不是很方便,这里使用新的方法,直接将返回的对象注入响应体ResponsBody中:

1.返回基本类型之 int

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2.返回基本类型之 String

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.返回基本类型之 Object

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.返回基本类型之 List

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值