Hibernate Spring数据JPA模型的性能改进
我使用Spring数据JPA和Hibernate对以下场景进行建模:Hibernate Spring数据JPA模型的性能改进,hibernate,jpa,relational-database,entity-relationship,spring-data-jpa,Hibernate,Jpa,Relational Database,Entity Relationship,Spring Data Jpa,我使用Spring数据JPA和Hibernate对以下场景进行建模: 用户有多个主题 主题具有多个属性 用户可以为每个主题拥有多个自定义属性 代码可以是: 一切正常,问题在于性能。我生成JSON的方式是: 获取用户的主题列表(1个DB访问权限) 获取每个主题的属性列表(n访问DB)-n=主题数 获取每个主题的自定义属性列表(n访问数据库) 用自定义属性覆盖主题属性 你认为有更好的方法吗?也许改变数据库的设计 欢迎提出任何建议 谢谢。您的当前工作流适用于关系数据库 如果您希望提高锁定和连接的性能
谢谢。您的当前工作流适用于关系数据库 如果您希望提高锁定和连接的性能,可以尝试一些图形数据库,如neo4j和
此外,还有一篇关于orm的有趣文章-如果您提供的链接在某个时候无法访问,请在您的答案中添加一些重要的细节
@Entity
public class User {
@Id
public Long id;
public String name;
@OneToMany (mappedBy="user")
public List<CustomProperty> customProperties;
}
@Entity
public class Topic {
@Id
public Long id;
public String name;
@OneToMany (mappedBy="topic")
public List<Property> properties;
}
@Entity
public class Property {
@Id
public Long id;
public String key;
public String value;
@ManyToOne
public Topic topic;
}
@Entity
public class CustomProperty {
@Id
public Long id;
public String key;
public String value;
@ManyToOne
public Topic topic;
@ManyToOne
public User user;
}
[
{
"name": "topic1",
"keyA": "valueA",
"keyB": "customValue",
"keyC": "valueC"
}
]