SpringMVC如何获取请求带来的各种信息

默认方式获取请求参数: 直接给方法入参上写一个和请求参数名相同的变量。这个变量就来接收请求参数的值;

带:有值,没带:null;





如果我们的请求参数是一个POJO,SpringMVC会自动的为这个POJO进行赋值

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<!--suppress ALL -->
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"><display-name>4.SpringMVC_request</display-name><welcome-file-list><welcome-file>index.html</welcome-file><welcome-file>index.htm</welcome-file><welcome-file>index.jsp</welcome-file><welcome-file>default.html</welcome-file><welcome-file>default.htm</welcome-file><welcome-file>default.jsp</welcome-file></welcome-file-list><!-- The front controller of this Spring Web application, responsible for handling all application requests --><servlet><servlet-name>springmvc</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><load-on-startup>1</load-on-startup></servlet><!-- Map all requests to the DispatcherServlet for handling --><servlet-mapping><servlet-name>springmvc</servlet-name><url-pattern>/</url-pattern></servlet-mapping><!-- 配置一个字符编码的Filter;一定注意:字符编码filter一般都在其他Filter之前; --><filter><filter-name>CharacterEncodingFilter</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><!-- encoding:指定解决POST请求乱码 --><init-param><param-name>encoding</param-name><param-value>UTF-8</param-value></init-param><init-param><!-- forceEncoding:顺手解决响应乱码;response.setCharacterEncoding(this.encoding); --><param-name>forceEncoding</param-name> <param-value>true</param-value></init-param></filter><filter-mapping><filter-name>CharacterEncodingFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping><!-- 支持Rest风格的Filter --><filter><filter-name>HiddenHttpMethodFilter</filter-name><filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class></filter><filter-mapping><filter-name>HiddenHttpMethodFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping></web-app>

springmvc-servlet.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd"><context:component-scan base-package="com.atguigu"></context:component-scan><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/pages/"></property><property name="suffix" value=".jsp"></property></bean>
</beans>

index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body><form action="book" method="post">书名:<input type="text" name="bookName"/><br/>作者:<input type="text" name="author"/><br/>价格:<input type="text" name="price"/><br/>库存:<input type="text" name="stock"/><br/>销量:<input type="text" name="sales"/><br/><hr/>省:<input type="text" name="address.province"/>市:<input type="text" name="address.city"/>街道:<input type="text" name="address.street"/><br/><input type="submit"/>
</form></body>
</html>

Book.java

package com.atguigu.book;public class Book {private String bookName;private String author;private Double price;private Integer stock;private Integer sales;private Address address;public String getBookName() {return bookName;}public void setBookName(String bookName) {this.bookName = bookName;}public String getAuthor() {return author;}public void setAuthor(String author) {this.author = author;}public Double getPrice() {return price;}public void setPrice(Double price) {this.price = price;}public Integer getStock() {return stock;}public void setStock(Integer stock) {this.stock = stock;}public Integer getSales() {return sales;}public void setSales(Integer sales) {this.sales = sales;}public Address getAddress() {return address;}public void setAddress(Address address) {this.address = address;}@Overridepublic String toString() {return "Book [bookName=" + bookName + ", author=" + author + ", price="+ price + ", stock=" + stock + ", sales=" + sales+ ", address=" + address + "]";}}

Address.java

package com.atguigu.book;public class Address {private String province;private String city;private String street;public String getProvince() {return province;}public void setProvince(String province) {this.province = province;}public String getCity() {return city;}public void setCity(String city) {this.city = city;}public String getStreet() {return street;}public void setStreet(String street) {this.street = street;}@Overridepublic String toString() {return "Address [province=" + province + ", city=" + city + ", street="+ street + "]";}
}

HelloController.java

package com.atguigu.controller;import java.io.BufferedReader;
import java.io.IOException;
import java.io.PrintWriter;import javax.servlet.ServletInputStream;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.CookieValue;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;import com.atguigu.book.Book;@Controller
public class HelloController {@RequestMapping("/book")public String addBook(Book book){System.out.println("我要保存的图书:"+book);return "success";}}

SpringMVC如何获取请求带来的各种信息 ||如果我们的请求参数是一个POJO(自定义参数类型), SpringMVC会自动的为这个POJO进行赋值相关推荐

  1. 爬虫:利用cookie获取人人网登录后网页信息

    爬虫:利用cookie获取人人网登录后网页信息 思路: 1.首先创建一个自动获取登录cookie的实例,创建请求管理器opener 2.分析网页源码,获取登录的form信息,并写入data,访问登录界 ...

  2. python调用libvirt_通过python获取kvm虚拟机的监控信息(基于libvirt API)

    通常在我们的云环境中,为了保证云平台中虚拟机的正常运行,基本都需要这样一个功能,就是收集虚拟机的监控数据,比如cpu的使用率.内存的使用率.磁盘io.网络io等基本信息.可以利用这些信息及时调整云平台 ...

  3. 堆栈信息获取value_java-如何打印堆栈信息

    前言 在做调试bug的时候, 想测试知道这些流程是怎么调用的, 就需要打印其堆栈信息 这里只是封装了一个工具函数, 看自己使用 代码如下 public static void printCallSta ...

  4. SpringMVC无法获取请求中的参数的问题的调查与解决(1)

    SpringMVC无法获取请求中的参数的问题的调查与解决(1) 参考文章: (1)SpringMVC无法获取请求中的参数的问题的调查与解决(1) (2)https://www.cnblogs.com/ ...

  5. 【PHP】获取浏览器HTTP请求header信息、获取服务器HTTP响应header信息

    一.认识HTTP HTTP协议历史及设计思路(点击浏览) 二.获取浏览器HTTP请求header信息 1. Apach服务器下可以直接使用 PHP自带函数获取客户端HTTP请求头信息 /*作用:获取客 ...

  6. js捕获网络请求错误,获取http状态码等信息

    js捕获网络请求错误,获取http状态码等信息 第一种:使用$.ajax $(".login").click(function(){$.ajax({type: "POST ...

  7. 【Java】一文秒懂http请求获取FlexManager平台FBox盒子信息

    CSDN话题挑战赛第2期 参赛话题:学习笔记 文章目录 前言 一.获取单个盒子 1.接口功能 2.请求地址: 3.地址参数说明 4.请求格式说明 5.请求方式 二.通讯测试 1.ApiPost7调试 ...

  8. 获取小程序用户信息+java_java获取微信小程序用户信息

    第一步:获取openid.session_key等信息. /** * 获取微信小程序的用户openid和session_key/unionid * 返回格式:{"session_key&qu ...

  9. python数据接口获取数据_python UI自动化实战记录二:请求接口数据并提取数据

    该部分记录如何获取预期结果-接口响应数据,分成两步: 1 获取数据源接口数据 2 提取后续页面对比中要用到的数据 并且为了便于后续调用,将接口相关的都封装到ProjectApi类中. 新建python ...

最新文章

  1. OpenCL编程详细解析与实例
  2. [zz]GNU C __attribute__ 机制简介
  3. 作为一个前端,可以如何机智地弄坏一台电脑?
  4. LeetCode Algorithm 1267. 统计参与通信的服务器
  5. 使用ClickOnce部署VS2005中的WinForm应用程序.(ZT)
  6. 分析linux相关日志文件,Linux日志系统与分析.pdf
  7. el-option传两个值_俗话说买房看地段,买窗看K值:如何区分K值、U值和R值
  8. Django-安装/分组命名/路由分发
  9. SVN工作笔记006---SVN提交,提示“remains in conflict”错误
  10. Benchmark简介
  11. 7个等级 容灾等级_猫奴的10个等级 你的奴性有多高?
  12. PB如何配置数据源及自带的PB系统
  13. mysql计算员工年终奖金_年终奖 扣税计算
  14. Guitar Pro 8win10最新版吉他学习 / 打谱 / 创作
  15. 初识RFID的物理与逻辑安全机制
  16. 比较IC卡、ID卡、M1卡、CPU卡它们之间有什么区别?
  17. PHP网络在线学习云课堂源码在线教育学习云课堂源码
  18. 2013深圳驾考新规科目二实战技巧及注意事项 (广仁驾校)
  19. 4.STC15W408AS单片机点亮第一个LED
  20. 车载导航仪的基本机能概要

热门文章

  1. 微信小程序学习笔记(4)--------框架之逻辑层
  2. T1330 最少步数(#Ⅱ- 8)(广度优先搜索)
  3. [daily] 使用diff和patch打补丁
  4. android配置文件说明
  5. jyphon 环境变量配置
  6. 利用javascript和WebGL绘制地球 【翻译】
  7. 2011软考软件设计师:C语言代码规范问题(1
  8. 36氪研究院:机器人行业产业图谱
  9. 小李飞刀:刷题第四弹!
  10. flutter实现(OutlineButton)线框按钮