Java
例如我在 mapper 层 取得了 User bean 对象,但是当前 User 这个模型 里面是自带了 password 字段, 而我目前这个需求是 只要暴露 User 对象的 id name 等少量模型属性, 除了重新建立一个 dto 对象 set get 一遍 ,还有其它办法么? 譬如在 User 模型上 加上一些注解关键字,可以随时开关这个模型的字段 序列化成 JSON 的结果
表达有点不清晰,,求解。。
Java
例如我在 mapper 层 取得了 User bean 对象,但是当前 User 这个模型 里面是自带了 password 字段, 而我目前这个需求是 只要暴露 User 对象的 id name 等少量模型属性, 除了重新建立一个 dto 对象 set get 一遍 ,还有其它办法么? 譬如在 User 模型上 加上一些注解关键字,可以随时开关这个模型的字段 序列化成 JSON 的结果
表达有点不清晰,,求解。。
1
q397064399 OP 已找到方法,采用定制序列化即可,,
|
2
q397064399 OP 结贴
|
3
Coande Apr 9, 2017 via Android
@q397064399 分享一下咯
|
4
q397064399 OP @Coande #3 https://github.com/alibaba/fastjson/wiki/%E4%BD%BF%E7%94%A8SimplePropertyPreFilter%E8%BF%87%E6%BB%A4%E5%B1%9E%E6%80%A7
fastjson 可以采用 属性定制过滤器 来过滤字段属性,这样就可以减少重复代码了 |
5
springmarker Apr 9, 2017
|
6
gexyuzz Apr 9, 2017
不如采用 dto 传输
|
7
q397064399 OP @gexyuzz #6 dto 得重新建立个对象吧,,那样不是要 put get 一遍了
|
8
wohenyingyu02 Apr 9, 2017 via iPhone
有时候有重复代码质量反而更好吧……
|
9
pippo Apr 9, 2017
@wohenyingyu02
嗯,跨服务可以适当违反 DRY 。 |
10
wc951 Apr 9, 2017 via Android
jackson 的 jsonview 注解
|