首页 > 编程语言 > Springmvc发送json数据转Java对象接收
2020
10-28

Springmvc发送json数据转Java对象接收

1、导包

基于maven

<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-databind</artifactId>
  <version>2.9.0</version> </dependency>
<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-core</artifactId>
  <version>2.9.0</version>
</dependency>
<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-annotations</artifactId>
  <version>2.9.0</version>
 </dependency>

2、jsp代码

<script>
  $(function () {
    $.ajax({
      url:"${pageContext.servletContext.contextPath}/user/json",
      data:JSON.stringify({"username":"tom"}),//JSON.stringify()必须有,否则只会当做表单的格式提交
      dataType:"json",
      type:"post",
      contentType:"application/json;charset=utf-8", //如果想以json格式把数据提交到后台的话,这个必须有,否则只会当做表单提交
      success:function (data) {

      }
    });
  });
</script>

3、控制器代码

 /**
   * json转对象
   */
  @RequestMapping("/json")
  public void jsonToObject(@RequestBody(required = false) User user){
    System.out.println("--------");
    System.out.println(user);
  }

4、配置json转换器

如果不使用注解驱动<mvc:annotation-driven />,就需要给处理器适配器配置json转换器

在springmvc.xml配置文件中,给处理器适配器加入json转换器:

<!--处理器适配器 -->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
  <property name="messageConverters">
  	<list>
  		<bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"></bean>
  	</list>
  </property>
</bean>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自学编程网。

编程技巧