利用@jsonView注解来实现自定义返回字段
业务场景:比如说一个User对象,有两个字段,一个username,一个password,有一个获取用户信息的接口要返回这个User列表,但是不想要这个User列表的password字段。
还有一个接口要获取这个User列表,要全部字段。
解决场景:我们可以有多种方法,比如说获取list之后把user列表的密码全部设为空,然后再用其他注解来设置 为空的字段不显示
还可以在sql中就不查password字段。
但是 我们要介绍这个注解来实现这个功能。@jsonView
需要三步即可:
- 第一:用接口来声明多个视图
- 第二:在值对象的get方法上指定视图
- 第三:在controller方法上指定视图
话不多说~~~看代码------》
User.java
package com.imooc;import com.fasterxml.jackson.annotation.JsonView; import lombok.AllArgsConstructor; import lombok.Setter;/*** Created by 敲代码的卡卡罗特* on 2018/4/14 22:58.*/ @Setter @AllArgsConstructor public class User {public interface UserInfo{};public interface UserDetail extends UserInfo{};private String name;private String password;@JsonView(UserInfo.class)public String getName() {return name;}@JsonView(UserDetail.class)public String getPassword() {return password;} }
View Code
在user对象中声明两个接口(视图),一个继承另一个,你懂得!!!然后在字段的get方法上声明视图
Controller.java
@GetMapping("/hello")@JsonView(User.UserInfo.class)public HashMap hello() {HashMap hashMap = new HashMap();User user1 = new User("liu","123");User user2 = new User("zhang","456");hashMap.put("u1",user1);hashMap.put("u2",user2);return hashMap;}
View Code
在controller中声明视图 自己看下结果吧。
转载于:https://www.cnblogs.com/coder-lzh/p/8836617.html
利用@jsonView注解来实现自定义返回字段相关推荐
- JPA 自定义返回字段
实体类:User.java @Data @Accessors(chain = true) @EqualsAndHashCode(callSuper = true) @Entity @Table(nam ...
- FastJson序列化Json自定义返回字段,普通类从spring容器中获取bean
前言: 数据库的字段比如:price:1 ,返回需要price:1元. 这时两种途径修改: ① 比如sql中修改或者是在实体类转json前遍历修改. ②返回json,序列化时候修改.用到的是fastj ...
- Spring Boot 自动配置的原理、核心注解以及利用自动配置实现了自定义 Starter 组件
本章内容 自定义属性快速入门 外化配置 自动配置 自定义创建 Starter 组件 摘录:读书是读完这些文字还要好好用心去想想,写书也一样,做任何事也一样 图 2 第二章目录结构图 第 2 章 Spr ...
- java 注解报错_java注解验证接收参数 返回注解字段的错误
1.在controller接口方法接收参数加上 @Valid注解 并且在实体类参数后紧跟 BindingResult bindingresul BindingResultMsgUtil工具类: pub ...
- springboot控制接口返回的字段_SpringBoot实战:SpringBoot之Rest Full接口自定义返回数据类型(ResponseBodyAdvice)...
我们在日常开发的过程中,经常会要求统一返回数据格式.如要求统一访问格式为 { "success": 请求是否成功, "message": 请求消息, " ...
- return error怎么定义_SpringBoot 系列 web 篇之自定义返回 Http Code 的 n 种姿势
200105-SpringBoot 系列 web 篇之自定义返回 Http Code 的 n 种姿势 虽然 http 的提供了一整套完整.定义明确的状态码,但实际的业务支持中,后端并不总会遵守这套规则 ...
- boot返回码规范 spring_SpringBoot 系列 web 篇之自定义返回 Http Code 的 n 种姿势
200105-SpringBoot 系列 web 篇之自定义返回 Http Code 的 n 种姿势 虽然 http 的提供了一整套完整.定义明确的状态码,但实际的业务支持中,后端并不总会遵守这套规则 ...
- java注释和注解_深入理解JAVA注解(Annotation)以及自定义注解
Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制.Java 语言中的类.方法.变量.参数和包等都可以被标注.注解可以看作是一种特殊的标记,在程序在编译或 ...
- EasyExcel合并单元格,通过注解方式实现自定义合并策略
EasyExcel合并单元格,通过注解方式实现自定义合并策略 简介 今天博主探讨如何实现EasyExcel自定义实现单元格合并策略,考虑需要抽象代码.适用于更多的业务场景,提供了两个工具类,参考过很多 ...
最新文章
- 1.3 字符串拼接(连接)
- 中国科学家突破二氧化碳人工合成淀粉技术
- Oracle 数据怎么实时同步到 MongoDB | 亲测干货分享建议收藏
- 锦标赛排序、洪水填充算法、平衡规划
- 2.react的diff算法(2020.12.07)
- 多个高危 BIOS 缺陷影响英特尔处理器,特斯拉 Model 3 未幸免,可用于供应链攻击...
- .net知识系列之五:(基本控件和数据绑定控件)
- 网站被跳转到联通域名无法访问页面
- Node.js的安装下载和运行JS代码和常用命令和按键
- 从 GitHub 上手动安装python包教程
- python处理access数据库教程_Python操作Access数据库基本步骤分析
- Xubantu安装google 输入法以及You‘re currently running Fcitx with GUI, but fcitx-configtool couldn‘t be found
- STM32基础12--数模转换(DAC)
- mds部署服务器系统,CephFS提供/添加/删除MDS
- 共享系统APP开发:带你体验真实的共享生活
- 第十一章 文件操作_C语言插入、删除、更改文件内容
- 将maximo工具栏图标放置在正上方
- 【C语言总结】C语言预处理器
- 中国PETG市场预测及战略研究报告(2022版)
- 3232. 计算球体积
热门文章
- 双面黄琳:世界顶级女黑客,两个孩子的迟钝妈妈
- java同步锁如何使用_java 同步锁(synchronized)的正确使用姿势
- ATSAMD21-XPRO开发板 评估基于 ATSAM D21 CortexM0+ 的微控制器
- 火线妹在线求偶,想找高质量男朋,粉丝:有没有绯闻心里没数?
- JavaWeb课程复习资料(四)——创建Servlet
- 学习MongoDB 十一: MongoDB聚合(Aggregation Pipeline基础篇上)(三)
- Mysql一些维护命令
- 详解 Too many open files
- gg参数:dblogreader
- OCM备考 三. Managing Database Availability 之flashback