您的位置:首页 > 编程语言 > Java开发

db4o数据库存放的class含有相同的字段名且字段的类型也相同。现在想把这个库中数据读出来,但总是报 java.lang.ClassCastException错误

2012-03-14 17:02 513 查看
db4o数据库存放的class含有相同的字段名且字段的类型也相同。现在想把这个库中数据读出来,但总是报 java.lang.ClassCastException错误,请大侠指教

具体情况如下:



ObjectContainer db =null;
try {
db = Db4o.openFile("bean.yap");
List<AlarmFilter> list_a = db.get(AlarmFilter.class);

for(int x = 0; x < list_a.size(); x++)

System.out.println(list_a.get(x).toString());

}finally {

// 关闭连接

if(db!=null)

db.close();

}

AlarmFilter存储类的定义:

public class AlarmFilter {

public AlarmFilter() {
// TODO Auto-generated constructor stub
}
public String toString(){
return "["+this.positive+this.name+this.description+"]";
}
private boolean positive; //是否生效
private List<FilterItemImpl> itemList;//一个条件的内容
private String name;//一条规则中一个条件的名称
private String description;//描述,扩展项
private String filterId;//条件ID,扩展项
private String creator;//创建用户,扩展项
private String isActive;//是否启用,扩展项
public boolean isPositive() { return positive; }
public void setPositive(boolean positive) {
this.positive = positive;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public String getFilterId() {
return filterId;
}
public void setFilterId(String filterId) {
this.filterId = filterId;
}
public String getCreator() {
return creator;
}
public void setCreator(String creator) {
this.creator = creator;
}
public String getIsActive() {
return isActive;
}
public void setIsActive(String isActive) {
this.isActive = isActive;
}
public List<FilterItemImpl> getItemList() {
return this.itemList;
}
public void addItemList(FilterItemImpl filterItemImpl) {
if(null==this.itemList)
itemList=new ArrayList<FilterItemImpl>();
this.itemList.add(filterItemImpl);
}
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐