首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在spring框架中如何只从hibernate一对多关系中的父类获取json数据

在spring框架中如何只从hibernate一对多关系中的父类获取json数据
EN

Stack Overflow用户
提问于 2017-03-10 17:52:38
回答 2查看 322关注 0票数 0

我使用spring框架和hibernate作为ORM工具。

我的父类是这样的:

代码语言:javascript
运行
复制
@Entity

public class Category {
@Id
@GeneratedValue

@NotNull
private int cid;
private String cname;
@OneToMany(cascade = CascadeType.ALL)
@LazyCollection(LazyCollectionOption.FALSE)
@JoinColumn(name = "cid")
List<Ad> ads;

//getter和setter,构造函数}

我的孩子类是这样的:

代码语言:javascript
运行
复制
@Entity
public class Ad {
private int adid;
private String adName;
//getter and setter, constructor
}

我的类别控制器是:

代码语言:javascript
运行
复制
@Controller
public class CategoryController {

@Autowired
SessionFactory sessionFactory;
Session session;
@Transactional
@RequestMapping(value = "categories",method = RequestMethod.GET)
@ResponseBody
public List<Category> getAllCategory()throws SQLException{
    session=sessionFactory.getCurrentSession();
    return session.createCriteria(Category.class).list();
}
}

当我点击url localhost:8080/categories .I会得到如下的json数据:

代码语言:javascript
运行
复制
{"cid":"1",cname":"category","ads":[{"adid":"1","adName":"ad"}]}

这里我同时获取了父table.But和相关子table.Here的数据,如何才能只获取父table.Here的数据在本例中,我需要的数据如下:

代码语言:javascript
运行
复制
{"cid":"1",cname":"category"}

我该怎么做呢?

EN

回答 2

Stack Overflow用户

发布于 2017-03-10 18:25:32

我看到一篇很好的文章,它准确地描述了你的问题。

Json Exclude Property

通过使用@JsonIgnore@JsonProperty注释配置实体,您可以实现这一点。

票数 1
EN

Stack Overflow用户

发布于 2017-03-10 17:59:05

您可以尝试如下所示

Infinite Recursion with Jackson JSON and Hibernate JPA issue

基本上必须在需要断开链接的地方应用排除

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42715300

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档