我正在一个 Gwt 项目中工作,并在使用 Google 应用引擎的后端工作。我的要求是从谷歌应用引擎的父类中获取子表的记录。我有两个服务器端持久类 1)水果 2)苹果
水果课是这样的
@PersistenceCapable(identityType = IdentityType.APPLICATION, table = "fruit") 公共类 Fruit 实现 Serializable {
private static final long serialVersionUID = 2523048232286090409L;
public Fruit() {}
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Long id;
@Column(name="apple_id")
@Persistent(column="id")
private Apple apple;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Apple getApple() {
return apple;
}
public void setApple(Apple apple) {
this.apple = apple;
}
}
苹果班是这样的
@PersistenceCapable(identityType = IdentityType.APPLICATION, table = "apple") 公共类 Apple {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Long id;
@Persistent
private String colour;
public Apple() {}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getColour(){
return this.colour;
}
public String setColour(String colour){
this.colour = colour;
}
}
现在我想通过查询水果来命名颜色。
在 daoImpl 类中,我有获取数据的构建方法
fetchFruit(){
Query query = pm.newQuery(Fruit.class);
List<Fruit> list=null;
try{
list = (List<Fruit>) query.execute();
}finally{
pm.close();
}
}
在我的 serviceImpl 类中,我已经这样做了
私有静态 FruitDAO fruitDAO = new FruitDAO();
List<Fruit> fruitObj = fruitDAO.fetchFruit();
for(Fruit fruit : fruitObj){
FruitDTO dto = new fruitDTO();
dto.setId(fruit.getId());
dto.setAppple(fruit.getApple());
}
我在fruit.getApple() 上得到空值
我的问题是,如果不是,我会走正确的路,那怎么可能?如何通过查询水果获得颜色名称。还有其他查询水果的方法吗?
请帮我。预先感谢。