Jpa Springboot controller 给前台传参,实体关联实体 ,关联实体无法前台获取问题 @JsonBackReference

今天做vue2  ,springboot jpa 前后台分离项目,遇到无法获取当前关联实体的问题,如下:

@Entity
@Table(name="rd_project_researcher")
public class RdProjectResearcher implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	private Integer id;

	@Column(name="create_id")
	private Integer createId;

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name="create_time")
	private Date createTime;


	@Column(name="is_delete")
	private Integer isDelete;

	
	@ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name = "projectId")
    @JsonBackReference
    private RdProject rdProject;

    。。。

}

实体代码如上,setget方法删掉了,篇幅过长

controller

@RequestMapping("/selectProject")
	public JsonResult selectProject(ModelMap modelMap, HttpSession session, HttpServletRequest request) {
		List<RdProjectResearcher> rdprs = rdProjectResearcherService
				.selectProjectResearchersByUserId(super.getAuthUser().getId());

		return super.successResult(rdprs);  //直接返回前台vue工程

	}

只能获取到RdProjectResearcher  信息,project信息无法获取,

因为实体里面这个注解

@JsonBackReference和@JsonManagedReference:这两个标注通常配对使用,通常用在父子关系中。@JsonBackReference标注的属性在序列化(serialization,即将对象转换为json数据)时,会被忽略(即结果中的json数据不包含该属性的内容)。

去掉这个注解,就可以获取红框部分数据了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值