gpt4 book ai didi

java - gxt 中的分页网格

转载 作者:行者123 更新时间:2023-12-01 16:01:58 26 4
gpt4 key购买 nike

我正在使用 GXT 2.1.1 开发分页网格,我正在使用 hibernate 从数据库表中检索值。我的代码是

 public class ExampleSampleTrip extends Composite
{

final GreetingServiceAsync service = GWT.create(GreetingService.class);


static class BeanModel implements ModelData
{

@Override
public <X> X get(String property)
{
// TODO Auto-generated method stub
return null;
}

@Override
public Map<String, Object> getProperties()
{
// TODO Auto-generated method stub
return null;
}

@Override
public Collection<String> getPropertyNames()
{
// TODO Auto-generated method stub
return null;
}

@Override
public <X> X remove(String property)
{
// TODO Auto-generated method stub
return null;
}

@Override
public <X> X set(String property, X value)
{
// TODO Auto-generated method stub
return null;
}

}

List<ColumnConfig> configs = null;
Grid<BeanModel> grid = null;
ContentPanel gridPanel = null;

// loader
PagingLoader<PagingLoadResult<ModelData>> loader = null;
PagingToolBar pagingToolBar = null;
ListStore<BeanModel> store = null;

public ExampleSampleTrip()
{
initComponents();
}

public List<ColumnConfig> getColumns()
{
if ( configs == null)
{
configs = new ArrayList<ColumnConfig>();

ColumnConfig column = new ColumnConfig();

column.setId("vehicle");
column.setHeader("Vehicle");
column.setWidth(100);
configs.add(column);

column = new ColumnConfig();
column.setId("orgin");
column.setHeader("Orgin");
column.setWidth(100);
configs.add(column);

column = new ColumnConfig();
column.setId("destination");
column.setHeader("Destination");
column.setWidth(100);
configs.add(column);

column = new ColumnConfig();
column.setId("route");
column.setHeader("Route");
column.setWidth(100);
configs.add(column);

column = new ColumnConfig();
column.setId("status");
column.setHeader("Status");
column.setWidth(100);
configs.add(column);

column = new ColumnConfig();
column.setId("currentlocation");
column.setHeader("Current Location");
column.setWidth(100);
configs.add(column);

ColumnModel cm = new ColumnModel(configs);

}
return configs;
}

public Grid<BeanModel> getGrid()
{
if (grid == null)
{
grid = new Grid<BeanModel>(getStore(), new ColumnModel(getColumns()));
grid.addListener(Events.Attach, new Listener<GridEvent<BeanModel>>() {
public void handleEvent(GridEvent<BeanModel> be)
{
PagingLoadConfig config = new BasePagingLoadConfig();
config.setLimit(50);
getLoader().load(config);
}
});

grid.setBorders(true);

}
return grid;
}

public ContentPanel getGridPanel()
{
if (gridPanel == null)
{
gridPanel = new ContentPanel();
gridPanel.setFrame(true);

gridPanel.setHeading("Paging Grid");
gridPanel.setLayout(new FitLayout());
gridPanel.add(getGrid());
gridPanel.setSize(600, 350);
gridPanel.setBottomComponent(getPagingToolBar());
}
return gridPanel;
}

public PagingLoader<PagingLoadResult<ModelData>> getLoader()
{
if (loader == null)
{
RpcProxy<List<Vehicle>> proxy=new RpcProxy<List<Vehicle>>(){

@Override
protected void load(Object loadConfig,
AsyncCallback<List<Vehicle>> callback) {

service.getVehicles(callback);

}

};

loader = new BasePagingLoader<PagingLoadResult<ModelData>>(proxy,new BeanModelReader());
loader.setRemoteSort(true);
loader.load();
}
return loader;
}

public PagingToolBar getPagingToolBar()
{
if (pagingToolBar == null)
{
pagingToolBar = new PagingToolBar(50);
pagingToolBar.bind(getLoader());
}
return pagingToolBar;
}

public ListStore<BeanModel> getStore()
{
if (store == null)
{
store = new ListStore<BeanModel>(getLoader());
}
return store;
}

private void initComponents()
{
initWidget(getGridPanel());
}

}

它仅显示网格,不显示值。

我的实现文件是

try {
// This step will read hibernate.cfg.xml and prepare hibernate for
// use

SessionFactory sessionFactory = new Configuration().configure()
.buildSessionFactory();
System.out.println("Within select");
session = sessionFactory.openSession();
List dataList = session.createQuery(" from Vehicle").list();

dataListArray = new ArrayList<Vehicle>(dataList.size());
for (int i = 0; i < dataList.size(); i++) {
Vehicle datalst = (Vehicle) dataList.get(i);
dataListArray.add(datalst);
}
//cutomerList.add((Customer) dataList);
System.out.println("size---->" + dataListArray.size());

return dataListArray;

} catch (Exception e) {
System.out.println(e.getMessage());
} finally {
session.flush();
session.close();
}

最佳答案

如果我在这里无知,请忽略我,但是静态类 BeanModel 是做什么用的?

它实现了 ModelData,但实现是空的。如果这是您的网格正在使用的 BeanModel,那么您的网格将无法访问数据。如果是这种情况,请让您的 BeanModel 扩展 ModelData。

或者您是使用 BeanModelMarker 接口(interface)和 @BEAN 注释的车辆 Bean?

希望我没有误解您的情况。

关于java - gxt 中的分页网格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3633637/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com