前端发送复杂JSON数据,后端使用@RequestBody接收

这篇博客讨论了如何将前端发送的JSON数据正确映射到后台Java实体类中,包括处理JSON中的对象属性,如roles和user。通过创建对应的RoleEntity和UserEntity类,并在MyEntity中作为属性,实现了数据的接收。示例展示了如何在Controller中使用@RequestBody注解处理这些数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 * JSON属性如下
 * loginName: "jay"
 * password : "3333"
 * roles    : { id : 4 }
 * user     : { name:"username" , officeName : "java"}
 * ---------------------------------------------------------
 * Java实体如下
 * MyEntity 
 * String loginName
 * String password
 * RoleEntity roles   RoleEntity中有一个id属性接收
 * UserEntity user    UserEntity中有name 、 officeName 属性接收
 *
 */

   什么意思呢?

   前端发送的JSON数据,除了普通的键值对,还有 键--对象 , 比如 roles : { id : 4}。

   那么,对应的后台Java实体,其属性应该持有一个,叫roles的对象引用,比如 private RoleEntity roles ;

   这个RoleEntity对象,应该有id属性,从而接收 id:4这组键值对。

   同理,后台Java实体,也应该有一个 UserEntity 来 接收 JSON数据中 { name:"username" , officeName : "java"}。

   伪代码如下

   

   //后台Java实体类名
   class MyEntity {

          private String loginName;  //映射Json的loginName属性

          private String password;   //映射Json的password属性

          private RoleEntity roles;  //映射Json的roles对象 , 引用要与JSON属性一致!
 
          private UserEntity user;   //映射Json的user对象  ,引用要与JSON属性一致!

         class  RoleEntity{

              private Long id;  

         }


        class UserEntity{

             private String name;

             private String officeName;

        }   

  }


  Controller中
  
  @RequestMapping(value="url")
  public JsonResponse  handerSomething(@RequestBody MyEntity ref)

你看我都这么努力的分享知识给你了,鼓励一下又何妨O(∩_∩)O

大宇期待与你们共同进步!同时也非常感谢最近兄弟们的支持!

                

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小大宇

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值