SpringMVC 配置@responsebody返回的只有父类属性,求解 : 配置报错 -问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

SpringMVC 配置@responsebody返回的只有父类属性,求解 : 配置报错 

kun坤 2020-06-03 15:07:39 64

SpringMVC 配置@responsebody返回json中的只有父类属性,求解使用的是springmvc 3.2.11,jackson2.1.5
,springmvc的xml中没有任何直接相关Jackson的配置

public abstract class BaseEntity implements Serializable {


 private static final long serialVersionUID = -67188388306700736L;


 /** "ID"属性名称 */
 public static final String ID_PROPERTY_NAME = "id";


 /** "创建时间"属性名称 */
 public static final String CREATE_TIME_PROPERTY_NAME = "createTime";


 /** "修改时间"属性名称 */
 public static final String MODIFY_TIME_PROPERTY_NAME = "modifyTime";

 
	

 
}
public class TreeEntity extends BaseEntity {
	
	private static final long serialVersionUID = 10428486683690275L;
	
	/** 父节点ID */
	private String parentid;
	
	/** 节点文本 */
	private String text;
	
	/** 节点样式 */
	private String iconCls;
	
	/** 是否叶子节点 */
	private Boolean leaf;
	}
Controller层:
@RequestMapping(value="/eqtTree")
	@ResponseBody
	public Object eqtTree(@RequestParam Long id, @RequestParam String eqtLevel){
		return partInfoService.eqtTree(id, eqtLevel);
	}

对于TreeEtity生成的List<TreeEntity>集合在调试中是所有属性都赋有值的,但是在Controller执行后返回的json只有basseEntity属性

Json如下:

[{id: 2, createTime: null, modifyTime: null}, {id: 5, createTime: null, modifyTime: null},…]
0: {id: 2, createTime: null, modifyTime: null}
createTime: null
id: 2
modifyTime: null
1: {id: 5, createTime: null, modifyTime: null}
2: {id: 3, createTime: null, modifyTime: null}
3: {id: 1, createTime: null, modifyTime: null}

分享到
取消 提交回答
全部回答(1)
  • kun坤
    2020-06-04 10:39:04

    TreeEntity 这个实体有没得set get?######

    引用来自“笑莫问”的评论

    setter和getter 加上应该就可以了。 我都有get和set方法,只是省略没显示。说我没序列化的请看我的baseEntity实现了序列化接口,我的treeEntity继承了baseEntity。 目前有个现象是在TreeEntity中所有属性的get方法上配置了@JosnProperty,那么我的List<TreeEntity>返回的json就是完整的json,否则还是只返回baseEntity的json ######这个加上@JsonProperty是正解!谢谢######请帖代码,这么一句话,不知具体什么问题?######加上序列化接口######partInfoService.eqtTree(id, eqtLevel) 关键代码没看到######TreeEntity 是否具有setter getter 方法。 partInfoService.eqtTree(id, eqtLevel)  返回值具体是什么?######我都有get和set方法,只是省略没显示。说我没序列化的请看我的baseEntity实现了序列化接口,我的treeEntity继承了baseEntity。 partInfoService.eqtTree(id, eqtLevel)的返回值是一个List<TreeEntity>集合######spring mvc 配置的json格式化的规则是什么######

    引用来自“Jeffrey_d”的评论

    TreeEntity 这个实体有没得set get? 是,私有成员没有设置setter和getter JSON工具找不到,当然没有了 ######我都有get和set方法,只是省略没显示。说我没序列化的请看我的baseEntity实现了序列化接口,我的treeEntity继承了baseEntity。 目前有个现象是在TreeEntity中所有属性的get方法上配置了@JosnProperty,那么我的List<TreeEntity>返回的json就是完整的json,否则还是只返回baseEntity的json###### setter和getter 加上应该就可以了。
    0 0
云计算
使用钉钉扫一扫加入圈子
+ 订阅

时时分享云计算技术内容,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

推荐文章