OneToMany 关系不起作用
OneToMany relationship not working
我想使用 kundera 作为框架在我的传感器 class 与片段 class 和 cassandra 作为我的数据库:
我想做的是:每个传感器关联到许多部分:
传感器1____0*件
但在进行此配置后(如下),我得到两个单独的 table,没有任何关系,如下所示:
idsensor | date | event_time | pressure | temperature
----------+-------+--------------------------+----------+-------------
1 | 33544 | 1970-01-01 00:00:00+0000 | 10 | 10
(1 rows)
cqlsh:sensor> select * from pieces;
idpiece | date | depth | event_time | height | idsensor | sensorkey | width
---------+------+-------+------------+--------+----------+-----------+-------
1 | null | 12 | null | 11 | null | null | 10
键class:
@Embeddable
public class SensorKey
{
@Column
private String idsensor;
@Column
private long date;
@Column(name = "event_time")
private long eventTime;
传感器class
public class SensorEntitie implements Serializable {
@EmbeddedId
private SensorKey sensorkey;
@Column
private float temperature;
@Column
private float pressure;
@OneToMany(cascade = { CascadeType.ALL }, fetch = FetchType.EAGER)
@JoinColumns({
@JoinColumn(name = "idsensor", referencedColumnName = "idsensor"),
@JoinColumn(name = "date", referencedColumnName = "date",
insertable = false, updatable = false),
@JoinColumn(name = "event_time", referencedColumnName = "event_time",
insertable = false, updatable = false)
})
private Set<PieceEntitie> pieces;
件class:
public class PieceEntitie implements Serializable{
@Id
private String idpiece;
@Column
private double width;
@Column
private double height;
@Column
private double depth;
跟随教程; https://github.com/impetus-opensource/Kundera/wiki/Polyglot-Persistence
我如何创建这种关系?
使用 Cassandra 3 后问题已解决
因为之前我用的是cassandra 2.1
我想使用 kundera 作为框架在我的传感器 class 与片段 class 和 cassandra 作为我的数据库:
我想做的是:每个传感器关联到许多部分:
传感器1____0*件
但在进行此配置后(如下),我得到两个单独的 table,没有任何关系,如下所示:
idsensor | date | event_time | pressure | temperature
----------+-------+--------------------------+----------+-------------
1 | 33544 | 1970-01-01 00:00:00+0000 | 10 | 10
(1 rows)
cqlsh:sensor> select * from pieces;
idpiece | date | depth | event_time | height | idsensor | sensorkey | width
---------+------+-------+------------+--------+----------+-----------+-------
1 | null | 12 | null | 11 | null | null | 10
键class:
@Embeddable
public class SensorKey
{
@Column
private String idsensor;
@Column
private long date;
@Column(name = "event_time")
private long eventTime;
传感器class
public class SensorEntitie implements Serializable {
@EmbeddedId
private SensorKey sensorkey;
@Column
private float temperature;
@Column
private float pressure;
@OneToMany(cascade = { CascadeType.ALL }, fetch = FetchType.EAGER)
@JoinColumns({
@JoinColumn(name = "idsensor", referencedColumnName = "idsensor"),
@JoinColumn(name = "date", referencedColumnName = "date",
insertable = false, updatable = false),
@JoinColumn(name = "event_time", referencedColumnName = "event_time",
insertable = false, updatable = false)
})
private Set<PieceEntitie> pieces;
件class:
public class PieceEntitie implements Serializable{
@Id
private String idpiece;
@Column
private double width;
@Column
private double height;
@Column
private double depth;
跟随教程; https://github.com/impetus-opensource/Kundera/wiki/Polyglot-Persistence
我如何创建这种关系?
使用 Cassandra 3 后问题已解决
因为之前我用的是cassandra 2.1