gpt4 book ai didi

java - 测试时密码的 JSON 序列化

转载 作者:行者123 更新时间:2023-12-01 16:49:47 24 4
gpt4 key购买 nike

我目前正在编写一个 REST Controller ,旨在使用 Spring Boot 处理用户配置文件/Activity 。对于生产,我目前使用以下方式将用户密码隐藏在响应中:

@JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
private String password;

但是,当我编写集成测试并向 Controller 发出 http 请求时,我想序列化我的用户对象,但包含密码,以便我可以测试注册新用户等功能。这是使用以下方法完成的:

@Autowired
private ObjectMapper objectMapper;
...
objectMapper.writeValueAsString(user);

是否有我可以使用的测试注释,或者是否有其他可用的序列化方法可以忽略 @JsonProperty 注释并允许序列化密码?

最佳答案

我不知道有什么方法可以做到这一点。我能想到的唯一可能的事情是拥有一个接口(interface),其中有2个Profile类实现它,一个没有该JsonProperty,一个有。使用@Profile注释切换它们

如果序列化不是强制的,那么您仍然可以使用 getter 中的值进行断言。如果序列化是强制性的那么我只能想到上面的替代方案。

关于java - 测试时密码的 JSON 序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61713857/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com