草庐IT

子实体

全部标签

java - JPA 仅使用其 ID 保存 "new"实体并引用现有实体?

假设您有一辆带有一系列轮胎的汽车。@EntitypublicclassCar{privateLongid;@OneToMany(mappedBy="car")privateSettires=newHashSet();}@EntitypublicclassTire{privateLongid;...}现在,如果您想添加一辆新汽车并添加现有轮胎,您可以获取整个现有轮胎实体以填充汽车集。是否可以简单地拥有一些TireID并保存Car而无需先将整个Tire实体提取到内存中?如果它只是一个单一的轮胎实例而不是一个轮胎组,有没有办法只用一个轮胎ID来保存它?使用JPA和CriteriaAPI,或者

java - 是否有模型/实体类的模式

当您从多个数据源中提取模型对象时,最好采用什么方法?例如,我有一个应用程序使用hibernate将一些数据存储在mySQL数据库中。如果我想在EC2或GoogleAppEngine中存储一些其他对象怎么办?我知道DAO抽象了使用特定数据源的实现,但是实体本身呢?起初我认为用jpa注释来注释我的实体是一个很好的解决方案,但现在看来我真的把我的实体绑定(bind)到一个特定的实现。以AppEngine为例,其中一些注释毫无意义。似乎我需要一个纯POJO类来表示我的实体,完全没有持久性逻辑。例如,如果我想为一只狗建模(是的,蹩脚的选择,但无论如何)。有一个抽象的Dog类,然后定义子类以使用特

java - 如何对 Ebean 中的相关实体进行排序?

我正在使用PlayFramework和EbeanORM。比如说,我有2个相关的实体类(Card.java和FinalMark.java)卡片.java@EntitypublicclassCardextendsModel{privatestaticfinallongserialVersionUID=1L;@Id...@OneToMany(mappedBy="card")publicListfinalMarks;...publicstaticFinderfind=newFinder(Integer.class,Card.class);}FinalMark.java@Entitypublic

java - JPA Criteria 使用单表继承查询实体层次结构

假设我有以下实体:@Entity@Inheritance(strategy=SINGLE_TABLE)@DiscriminatorColumn(name="type")publicabstractclassBaseEntity{privateDatesomeDate;privateDateotherDate;privatebooleanflag;}@Entity@DiscriminatorValue("entity1")publicclassEntity1extendsBaseEntity{privateStringsomeProperty;}@Entity@Discriminator

java - 更改保留其 ID 的实体的类型

我正在使用hibernate作为持久层。有2个实体位于同一个表中,使用单表继承策略扩展一个父类(superclass)。@Entity@Inheritance(strategy=InheritanceType.SINGLE_TABLE)publicabstractclassA{@Id@GeneratedValueprotectedLongid;//somecommonfieldsforBandC}@EntitypublicclassBextendsA{//B-specificfields}@EntitypublicclassCextendsA{//C-specificfields}我有

java - Hibernate 实体 Autowiring

请问我怎样才能很好地为Hibernate实体启用SpringAutowiring?假设我有一个实体并希望在那里有邮件发送者:@EntitypublicclassEmailActivityextendsActivity{@Autowired@TransientprivateJavaMailSenderjavaMailSender;...}有没有比做更好的方法AutowireCapableBeanFactory.autowireBean(getCurrentSession().get(Activity.class,id));在我的DAO中?谢谢! 最佳答案

java - 在 IntelliJ 中基于 JPA 实体绘制数据库架构

有谁知道IntelliJ有没有插件可以根据JPA实体类绘制数据库模式图? 最佳答案 IntelliJ(终极版)可以生成ER图,无需任何额外插件。它可以从“持久性”Pane的上下文菜单中获得。要获得该Pane,您需要先向您的模块添加一个“JPA”方面。 关于java-在IntelliJ中基于JPA实体绘制数据库架构,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/6867535/

java - 如何对可嵌入实体属性实现验证约束?

我有一个带有电子邮件收集属性的Person实体:@ElementCollection@CollectionTable(schema="u",name="emails",joinColumns=@JoinColumn(name="person_fk"))@AttributeOverrides({@AttributeOverride(name="email",column=@Column(name="email",nullable=false)),})publicListgetEmails(){returnemails;}在我的电子邮件类中,我尝试使用@Email注释电子邮件:@Embed

java - 具有实体 ElementCollection 键的 JPA 级联持久性

我有两个这样的JPA实体:@EntityclassFoo{@Idprivatelongid;//...}@EntityclassBar{@ElementCollection(targetClass=String.class,fetch=FetchType.LAZY)@MapKeyJoinColumn(name="foo_id",referencedColumnName="id")@MapKeyClass(Foo.class)@Column(name="content")@CollectionTable(name="bar_foo_content",joinColumns=@JoinCo

java - 使用@IdClass 存储具有复合主键的实体,但无法持久化

我的id类如下,publicclassEmployeeIdimplementsSerializable{publicEmployeeId(){}publicEmployeeId(Integerid,Stringcountry){this.id=id;this.country=country;}privateIntegerid;privateStringcountry;@OverridepublicinthashCode(){returnthis.getCountry().hashCode()+getId();}@Overridepublicbooleanequals(Objecto){