Java 瓦丁
我不明白如何使用Vaadin获取数据库结果集。 首先,我要:Java 瓦丁,java,mysql,vaadin,Java,Mysql,Vaadin,我不明白如何使用Vaadin获取数据库结果集。 首先,我要: JDBCConnectionPool pool=null; try{ pool = new SimpleJDBCConnectionPool(dbClass, dbUrl, "root", "toor"); }catch(SQLException e){ e.printStackTrace(); } FreeformQuery query = new FreeformQuery(query_s, pool, "id"
JDBCConnectionPool pool=null;
try{
pool = new SimpleJDBCConnectionPool(dbClass, dbUrl, "root", "toor");
}catch(SQLException e){
e.printStackTrace();
}
FreeformQuery query = new FreeformQuery(query_s, pool, "id");
try {
SQLContainer container = new SQLContainer(query);
} catch (SQLException e) {
e.printStackTrace();
}
现在我该怎么办?(query\s
是一个简单的查询字符串,如SELECT*FROM users)
我正在尝试使用Freeformstatementdelegate,但我不知道如何使用它。对于上面这样的代码,它是最佳选择吗?如果您只想从数据库获得只读结果,则不需要使用
freeformstatementdegate
您可以通过以下方式将数据设置为表:
Table table = new Table();
table.setContainerDataSource(sqlContainer);
或将结果设置为列表: List<String> list = new ArrayList<String>();
for (Object ob : this.sqlContainer.getItemIds())
{
list.add(sqlContainer.getItem(ob).getItemProperty(columnName).getValue());
}
List List=new ArrayList();
对于(对象ob:this.sqlContainer.getItemId())
{
添加(sqlContainer.getItem(ob.getItemProperty(columnName.getValue());
}
但是,如果您还需要筛选、排序、删除和延迟加载功能,则必须使用FreeformStatementDelegate
1) 创建自定义类
2) 实现
freeformstatementdegate
接口和重写方法3) set
FreeformQuery.setDelegate(新的CustomClass)代码>
…现在我该怎么办?
你想怎么办?是否要以某种方式显示结果?你有错误吗?