《Day10》springMVC超详细注解介绍以及使用【springMVC制作网页文件上传和下载案例】

本文详述了SpringMVC中返回值处理的三种方式:String、ModelAndView和void。深入探讨了常用的注解如@RequestMapping、@RequestParam、@RequestHeader等的用法,并通过实际案例展示了文件上传和下载的实现。文章适合SpringMVC初学者和进阶者阅读。
摘要由CSDN通过智能技术生成

一、springMVC返回值的处理

1、返回值是String类型

在这里插入图片描述
返回的字符串就是逻辑视图,需要和视图解析器前缀和后缀拼接为一个真正的视图
在这里插入图片描述
在springMVC中,如果需要使用springMVC的处理器来处理请求,但是又不需要访问视图解析器固定的文件夹,可以采用两种方式来解决:
在返回的字符串上使用固定的单词:
转发:只能在当前项目中转发
返回forward地址
在这里插入图片描述
测试
在这里插入图片描述
重定向:可以跳转其他的项目资源
redirect:资源地址
在这里插入图片描述
测试
在这里插入图片描述

2、返回值是ModelAndView

返回的的视图和模型:
在这里插入图片描述

3、返回值是viod

可以使用servletAPI重定向或者转发
在这里插入图片描述
测试
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

可以返回一个json串
在这里插入图片描述
测试
在这里插入图片描述

二、srpingMVC的常用注解

(一)@RequestMapping *

1、该注解添加在handler(方法)上:
在这里插入图片描述
测试
在这里插入图片描述
如果在注解中只写一个路径是默认设置的value值:
在这里插入图片描述
在这里插入图片描述

测试; 如果限定了访问方法,就会抛出405异常
在这里插入图片描述
在这里插入图片描述
属性params 限制请求的参数
在这里插入图片描述

测试:
在这里插入图片描述
如果不传递name
在这里插入图片描述
在这里插入图片描述

  1. name 传递的参数中必须是name属性的传参
  2. !name 不能有name属性传参
  3. name=zsan 必须有name属性而且值必须是zsan
  4. name!=zsan 传递的参数如果有name属性 该属性值不能是zsan

2、注解添加在类上

添加到类上,该类下所有的requestMapping的url地址都添加该属性
访问当前类下url成为
在这里插入图片描述
作用:用来区别不同的controller,因为在项目开发中 可能多个控制层中不同的方法名称会出现重复。

(二)@requestParam *

如果传递的参数和handler中入参名称写的不一样 不能获取到

在这里插入图片描述
在这里插入图片描述
添加数据的时候如果提交的和后台的名称不一样:
在这里插入图片描述
在这里插入图片描述
注意:
在这里插入图片描述
可以通过requestParam来修改:
在这里插入图片描述
测试:
在这里插入图片描述
在这里插入图片描述
可以为当前的参数设置默认值:
在这里插入图片描述
测试:
在这里插入图片描述
在这里插入图片描述
属性required 设置当前的参数是必须要提交的:
在这里插入图片描述
测试:
在这里插入图片描述
添加name
在这里插入图片描述

(三)@RequestHeader

获取请求的头信息:
在这里插入图片描述
可以在后台获取到请求头信息:
在这里插入图片描述

测试:
在这里插入图片描述
在这里插入图片描述

(四)@ResponseBody *

将返回任意的数据转化为json对象
如果要使用该注解,必须要导入对应的依赖:

  <!--springMVC转化为json依赖包-->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.9.8</version>
        </dependency>
        <dependency>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿福真的不想掉头发

大爷?赏点?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值