首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >SpringMVC笔记(2)

SpringMVC笔记(2)

作者头像
全栈程序员站长
发布2022-07-08 13:22:46
发布2022-07-08 13:22:46
3120
举报

一、SpringMVC的数据响应

1.1 数据响应方式

1.1.1 页面跳转

  1. 直接返回字符串返回的字符串与内部资源视图解析器的前后缀拼接 进行访问(默认为转发)
  2. 通过ModelAndView对象返回
代码语言:javascript
复制
<%@ page isELIgnored="false" %>
代码语言:javascript
复制
@RequestMapping("/save2")
//注入思想由Spring提供参数的创建
public ModelAndView save2(ModelAndView modelAndView){
    //设置视图名称
    modelAndView.setViewName("success");
    //添加模型数据,相当于存储于域中
    modelAndView.addObject("username","gyb");
    System.out.println("ModelAndView..");
    return  modelAndView;
}

1.1.2 回写数据

  1. 直接返回字符串
  2. 返回对象或集合

二、SpringMVC的请求

2.1 请求参数类型

请求体的数据是json格式的,并且为application/json,才可以进行自动映射封装

代码语言:javascript
复制
/**
 * 集合类型参数
 */
@RequestMapping("save8")
@ResponseBody
//在参数前添加请求体注解
public void save8(@RequestBody List<User> userList){
    System.out.println(userList);
}

2.2 参数绑定注解@requestParam

2.3 Restful风格的参数获取

在Restful风格中,现有规定如下:

  • GET(SELECT):从服务器查询,可以在服务器通过请求的参数区分查询的方式。
  • POST(CREATE):在服务器新建一个资源,调用insert操作。
  • PUT(UPDATE):在服务器更新资源,调用update操作。
  • DELETE(DELETE):从服务器删除资源,调用delete语句

2.4 获取请求信息

获取请求头的参数cookie的参数

代码语言:javascript
复制
/**
 * 获取请求信息
 *  获取请求头信息(userAgent)
 */
@RequestMapping("save10")
@ResponseBody
public void save10(@RequestHeader("User-Agent") String userAgent){
    System.out.println(userAgent);
}
/**
 * 获取请求信息
 *  获取cookie的JSESSIONID
 */
@RequestMapping("save11")
@ResponseBody
public void save11(@CookieValue ("JSESSIONID") String JSESSIONID){
    System.out.println(JSESSIONID);
}

2.5 文件上传

2.5.1 文件上传客户端三要素

  • 表单项 type=”file”
  • 表单的提交方式是 post
  • 表单的enctype属性是多部分表单形式,及enctype=”multipart/form-date”

2.5.2 单文件上传步骤

  1. 导入fileupload和io坐标
代码语言:javascript
复制
<!--    fileupload-->
    <dependency>
      <groupId>commons-fileupload</groupId>
      <artifactId>commons-fileupload</artifactId>
      <version>1.3.1</version>
    </dependency>
<!--    io-->
    <dependency>
      <groupId>commons-io</groupId>
      <artifactId>commons-io</artifactId>
      <version>2.5</version>
    </dependency>
  1. 配置文件上传解析器
代码语言:javascript
复制
<!--    配置文件上传解析器-->
    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <property name="defaultEncoding" value="UTF-8"/>
        <property name="maxUploadSize" value="500000"/>
    </bean>
  1. 编写文件上传代码
代码语言:javascript
复制
/**
 * 文件上传
 */
@RequestMapping("fileUpload")
@ResponseBody
public void fileUpload(String username, MultipartFile uploadFile){
    System.out.println(username);
    System.out.println(uploadFile);
}

2.6 注意:

静态资源无法找到映射,需要配置spring-mvc.xml

代码语言:javascript
复制
<!--    开放资源访问-->
<!--    1.交给默认处理-->
    <mvc:default-servlet-handler/>
<!--    2.开放js资源-->  
    <mvc:resources mapping="/js/**" location="/js/"/>

el表达式在jsp中放行

代码语言:javascript
复制
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/115193.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年11月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、SpringMVC的数据响应
    • 1.1 数据响应方式
      • 1.1.1 页面跳转
      • 1.1.2 回写数据
  • 二、SpringMVC的请求
    • 2.1 请求参数类型
    • 2.2 参数绑定注解@requestParam
    • 2.3 Restful风格的参数获取
    • 2.4 获取请求信息
    • 2.5 文件上传
      • 2.5.1 文件上传客户端三要素
      • 2.5.2 单文件上传步骤
    • 2.6 注意:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档