有两个带有@OneToMany和@ManyToOne双向关系的表,如下所示:
@Entity
public class Asset {
private int id;
private int count;
@OneToMany
private Set<Dealing> dealings;
...
}
@Entity
public class Dealing {
private int id;
...
@ManyToOne
@JoinColumn(name = "customer_id", n
我有几张桌子
Order(orderID,orderDate, orderItem (OneToMany) )
OrderItem( id, order(manyToOne) , book (manyToOne) )
Book (id, title, cost)
User(id,username,password,email)
我有orderID=42,我需要得到Books信息和userId
下面是我的查询,以使这个表连接起来:
from Order or inner join or.orderItems ori inner join ori.book where or.orderID=37
我有4个实体列出以下员额。客户端和产品已经在数据库中。问题在于订单和OrdersProducts。我创建Orders对象,然后添加客户机(已经在数据库中)和ArrayList of OrdersProducts,但是我得到了错误:
object references an unsaved transient instance - save the transient instance before flushing: pl.take.server.model.Orders.clients -> pl.take.server.model.Clients
当我不添加客户端时,只有ArrayL
我使用Play Framework2.1.0和Ebean,在查询下面列出的下列场景时遇到了问题:
我有3个类,它们表示数据库中的表。
class project {
...
@OneToMany
public SubProject sub;
}
class SubProject {
...
@ManyToOne
public Project project;
@OneToMany
public MiniProject mini;
}
class MiniProject {
...
@ManyToOne
pu
我是个冬眠新手。我需要使用hibernate从我们的一个遗留数据库中获取记录(似乎数据库没有定义正确的FK关系)。
public class Class1 {
@Id
int index;
@ManyToOne
private Class2 class2;
....
....
}
public class Class2 {
...
private Collection<Class1> class1;
@OneToMany
@JoinColumn(name="index
我试图在User和FileObject类之间建立多对多的关系,假设用户可以访问多个文件对象,文件对象可以被许多用户访问,而一对多的关系,因为一个用户可以拥有多个文件,但是一个文件只能由一个用户拥有。这是我的代码:
@Entity
public class User {
@Id
@GeneratedValue(strategy = GenerationType.TABLE)
public int id;
public String firstname;
public String lastname;
public String publicAtt
我不熟悉实体和表之间的Hibernate连接。
我想要有以下模型模式(数据库中的实体):
User Seminar SeminarParticipation
----- ------- --------------------
id id seminar_id
name name user_id
... ... role
我知道第三个带有实体的表可以由@ManyToMany自动创建,但它有一个额外的字段,所以我希望有一个完整的实体,以使Java中的访问更容易。
我还想检索Seminar和User实体中的参与
我有个问题。我使用JPA和eclipselink,我有关系:
Table A ---< Table AB >---- Table B
class A {
@OneToMany(mappedBy = "a")
private List<AB> abList
}
class AB {
@ManyToOne(fetch = FetchType.LAZY)
private A a;
@ManyToOne(fetch = FetchType.LAZY)
private B b;
}
class B {
@One
我对jpa有一些怀疑。例如,表Post和表文件。一个帖子可以有多个文件相关联,一个文件可以与一个帖子相关联,所以我们有一对多的关系。
我很怀疑我们是否应该建立OneToMany关系或ManyToOne关系,或者两者兼而有之。例如,在post和files示例中,我们需要知道的是它是单向的还是双向的,如果我们想知道一个帖子有哪些文件,以及哪些文件在帖子中,对吗?如果两者都是,是双向的关系,对吧?但这两个问题似乎很相似,所以正常情况下答案是肯定的。所以这不是一个好的实践地图总是双向的?
例如,映射总是双向的:
@Entity
public class Post{
@GeneratedValue(st
假设我有两个实体:
@Entity
public class Customer implements Serializable {
...
@OneToMany(cascade=ALL, mappedBy="customer")
public Set<Order> getOrders() {
return orders;
}
...
}
@Entity
public class Order implements Serializable {
...
@ManyToOne
@Join
我有一个类似于hibernate示例中的双向实体:
@Entity
public class Troop {
@OneToMany
@JoinColumn(name="troop_fk") //we need to duplicate the physical information
public Set<Soldier> getSoldiers() {
...
}
@Entity
public class Soldier {
@ManyToOne
@JoinColumn(name="troop_fk"
我是刚冬眠的。我有一个OneToMany关系,帐户和事务之间的双向映射。我在这两个类中都不使用@JoinColumn,在非拥有帐户类中使用@mappedBy。一切都很好。在内存数据库中使用H2,在事务表中创建新的连接列。那么@JoinColumn在OneToMany关系中的用途是什么?它仅用于单向映射吗?下面是密码。我还读了参考
public class Account {
@OneToMany( mappedBy="account", cascade=CascadeType.ALL)
List<Transaction> list
我有一个双向的多对一的关系。当我从表中检索父对象时,应该检索所有子对象,但只检索第一个父对象
@Entity
public class xyz{
@OneToMany(mappedBy="xyz",cascade=CascadeType.PERSIST,fetch=FetchType.EAGER)
private Set<zyx> zyxDO;}
子类看起来像这样
public class zyx{
@ManyToOne
@JoinColumn(name="id")
private xyz xyzDO;
}
是否有任何注释可以检索底层数据库的所有行
我有三个模型(即用户、UsersImages、UserLocation),相应的数据库中有三个表。我把用户作为所有者实体,因为如果用户在那里,那么只有它的图像和位置是可能的,因此定义了这种关系。
我有两个疑问:
,如果这是正确的想法,并使所有者实体?如果是这样的话,在类UserImages中没有任何userId,但是有用户类的引用,那么如何根据userId添加、更新或删除userImages,如果这是错误的,那么建立这三种模型之间的关系的正确方法是什么。。
class Users{
long id;
@OneToMany
List<UserImages> use