我试着与RapidClipseX和MicroStreamDB合作。我生成了一个存储,在不同的表对象中导入了不同的数据。现在,我想阅读数据并将其可视化到RapidClipseX网格组件中。
通过使用MicroStreamDB,我没有像hibernate那样的DAO对象。我还是不知道该怎么做。在RapidClipseX文档中也没有可用的示例,在微流文档中也没有。
我试着使用下面的任务,它仍然填充网格。但是它在网格中填充了大约6000行,这仍然是表中的行数。但是每一行都有相同的内容,这仍然是数据库表中保存的最后一行。(我仍然由一个文本用户检查,如果MicrostreamDB存储了正确的数据。-是的)
private void grid_onAttach(final AttachEvent event)
{
final dataRoot root = dbHandler.getRoot();
this.grid.setDataProvider(DataProvider.ofCollection(root.getAllUmsClassifications()));
}这是我使用的表的类:
package com.opaheinz.rcx_test.dbmodel;
import static javax.persistence.GenerationType.IDENTITY;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import com.rapidclipse.framework.server.resources.Caption;
/**
* msTUmsatzClassification
*/
public class msTUmsatzClassification
{
private Integer id;
private Integer UId;
private Integer pos;
private Integer l2Id;
private Integer l3Id;
private Integer l1Id;
private String rule;
private Date datum;
private double sbetrag;
private double dbetrag;
private Integer fixedCosts;
@Caption("Id")
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "id", unique = true, nullable = false, columnDefinition = "INTEGER")
public Integer getId()
{
return this.id;
}
public void setId(final Integer id)
{
this.id = id;
}
@Caption("UId")
@Column(name = "u_id", nullable = false, columnDefinition = "INTEGER")
public Integer getUId()
{
return this.UId;
}
public void setUId(final Integer UId)
{
this.UId = UId;
}
@Caption("Pos")
@Column(name = "pos", nullable = false, columnDefinition = "INTEGER")
public Integer getPos()
{
return this.pos;
}
public void setPos(final Integer pos)
{
this.pos = pos;
}
@Caption("L2Id")
@Column(name = "L2_id", columnDefinition = "INTEGER")
public Integer getL2Id()
{
return this.l2Id;
}
public void setL2Id(final Integer l2Id)
{
this.l2Id = l2Id;
}
@Caption("L3Id")
@Column(name = "L3_id", columnDefinition = "INTEGER")
public Integer getL3Id()
{
return this.l3Id;
}
public void setL3Id(final Integer l3Id)
{
this.l3Id = l3Id;
}
@Caption("L1Id")
@Column(name = "L1_id", nullable = false, columnDefinition = "INTEGER")
public Integer getL1Id()
{
return this.l1Id;
}
public void setL1Id(final Integer l1Id)
{
this.l1Id = l1Id;
}
@Caption("Rule")
@Column(name = "rule", nullable = false, columnDefinition = "VARCHAR", length = 100)
public String getRule()
{
return this.rule;
}
public void setRule(final String rule)
{
this.rule = rule;
}
@Caption("Datum")
@Temporal(TemporalType.DATE)
@Column(name = "datum", nullable = false, columnDefinition = "DATE", length = 10)
public Date getDatum()
{
return this.datum;
}
public void setDatum(final Date datum)
{
this.datum = datum;
}
@Caption("Sbetrag")
@Column(name = "sBetrag", nullable = false, columnDefinition = "DOUBLE", precision = 22, scale = 0)
public double getSbetrag()
{
return this.sbetrag;
}
public void setSbetrag(final double sbetrag)
{
this.sbetrag = sbetrag;
}
@Caption("Dbetrag")
@Column(name = "dBetrag", nullable = false, columnDefinition = "DOUBLE", precision = 22, scale = 0)
public double getDbetrag()
{
return this.dbetrag;
}
public void setDbetrag(final double dbetrag)
{
this.dbetrag = dbetrag;
}
@Caption("FixedCosts")
@Column(name = "fixedCosts", columnDefinition = "INTEGER")
public Integer getFixedCosts()
{
return this.fixedCosts;
}
public void setFixedCosts(final Integer fixedCosts)
{
this.fixedCosts = fixedCosts;
}
}以下代码是我的dataRoot:
package com.opaheinz.rcx_test.dbstorage;
import java.util.ArrayList;
import java.util.List;
import com.opaheinz.rcx_test.dbmodel.msTCabinet;
import com.opaheinz.rcx_test.dbmodel.msTCabinetList;
import com.opaheinz.rcx_test.dbmodel.msTUmsatzClassification;
import com.opaheinz.rcx_test.dbmodel.msTgroup;
public class dataRoot
{
private msTCabinet msTCabinet;
private msTCabinetList msTCabinetList;
private msTgroup msTgroup;
private msTUmsatzClassification msTUmsatzClassification;
private final List<msTCabinet> cabinets = new ArrayList<>();
private final List<msTCabinetList> allCabinets = new ArrayList<>();
private final List<msTgroup> allGroups = new ArrayList<>();
private final List<msTUmsatzClassification> allUmsClassifications = new ArrayList<>();
public msTCabinet getMsTCabinet()
{
return this.msTCabinet;
}
public void setMsTCabinet(final msTCabinet msTCabinet)
{
this.msTCabinet = msTCabinet;
}
public List<msTCabinet> getCabinets()
{
return this.cabinets;
}
public msTCabinetList getMsTCabinetList()
{
return this.msTCabinetList;
}
public void setMsTCabinetList(final msTCabinetList msTCabinetList)
{
this.msTCabinetList = msTCabinetList;
}
public List<msTCabinetList> getAllCabinets()
{
return this.allCabinets;
}
public msTgroup getMsTgroup()
{
return this.msTgroup;
}
public void setMsTgroup(final msTgroup msTgroup)
{
this.msTgroup = msTgroup;
}
public List<msTgroup> getAllGroups()
{
return this.allGroups;
}
public msTUmsatzClassification getMsTUmsatzClassification()
{
return this.msTUmsatzClassification;
}
public void setMsTUmsatzClassification(final msTUmsatzClassification msTUmsatzClassification)
{
this.msTUmsatzClassification = msTUmsatzClassification;
}
public List<msTUmsatzClassification> getAllUmsClassifications()
{
return this.allUmsClassifications;
}
}出了什么问题,问题在哪里?如有任何帮助/想法,/samples将不胜感激。rgds OpaHeinz
发布于 2020-02-01 17:22:48
现在,我找到了最后的解决方案:我必须使用以下代码进行评估:
private void grid_onAttach(final AttachEvent event)
{
final EmbeddedStorageManager storage = dbHandler.getStoragemanager();
if(storage.root() == null)
{
System.out.println("No existing Database found ");
}
else
{
System.out.println("Existing Database found: ");
final dataRoot root = (dataRoot)storage.root();
this.grid.setDataProvider(DataProvider.ofCollection(root.getAllCabinets()));
}
}发布于 2020-01-01 18:11:08
我现在还没用呢。不幸的是,没有更新的文件。我不能将我们的应用程序迁移到X,因为X没有图表。
发布于 2020-01-08 17:12:11
我还有两个问题:
1)我在微流表中导入数据时犯了一个错误。
我用:
private void btnImportTCabinet_onClick(final ClickEvent<Button> event)
{
final dataRoot root = dbHandler.getRoot();
final List<TCabinet> allRegister = new TCabinetDAO().findAll();
final msTCabinet myMsTCcabinet = new msTCabinet();
for(final TCabinet TCabinet : allRegister)
{
myMsTCcabinet.setId(TCabinet.getId());
myMsTCcabinet.setDescription(TCabinet.getDescription());
root.setMsTCabinet(myMsTCcabinet);
root.getCabinets().add(myMsTCcabinet);
dbHandler.getStoragemanager().store(myMsTCcabinet);
}
}出了个差错,我得走了
final msTCabinet myMsTCcabinet = new msTCabinet();在for循环中,例如:
private void btnImportTCabinet_onClick(final ClickEvent<Button> event)
{
final dataRoot root = dbHandler.getRoot();
final List<TCabinet> allRegister = new TCabinetDAO().findAll();
for(final TCabinet TCabinet : allRegister)
{
final msTCabinet myMsTCcabinet = new msTCabinet();
myMsTCcabinet.setId(TCabinet.getId());
myMsTCcabinet.setDescription(TCabinet.getDescription());
root.setMsTCabinet(myMsTCcabinet);
root.getCabinets().add(myMsTCcabinet);
dbHandler.getStoragemanager().store(myMsTCcabinet);
}
}然后
第二,通过使用以下代码,进入网格的输出仍然工作:
this.grid.setDataProvider(DataProvider.ofCollection(root.getAllCabinets()));https://stackoverflow.com/questions/59489046
复制相似问题