Vaadin Web应用开发教程(48): SQLContainer-编辑
来源:互联网 发布:如何购买淘宝网店 编辑:程序博客网 时间:2024/05/16 06:37
和普通Container修改其中Item项类似,SQLContainer 可以使用类似的方法来编辑其中的Item。RowItem的ColumnProperties 会自动通知SQLContainer关于数据的变化并应用到数据库。
添加Item
向SQLContainer中添加一项是通过方法addItem()来完成的。这个方法将创建一个新的Item,新创建的Item可以在内存中缓存或直接添加到数据库中。这取决于SQLContainer的auto commit 模式。
下面的例子向Customer 表中添加一个记录 James ,Shen, Tribute Street, Perth
添加Item
向SQLContainer中添加一项是通过方法addItem()来完成的。这个方法将创建一个新的Item,新创建的Item可以在内存中缓存或直接添加到数据库中。这取决于SQLContainer的auto commit 模式。
实际也只能通过addItem() 方法向SQLContainer中添加记录,其它由Container定义的方法SQLContainer并不支持:
public boolean addContainerProperty(Object propertyId, Class<?> type, Object defaultValue)public boolean removeContainerProperty(Object propertyId)public Item addItem(Object itemId)public Object addItemAt(int index)public Item addItemAt(int index, Object newItemId)public Object addItemAfter(Object previousItemId)public Item addItemAfter(Object previousItemId, Object newItemId)此外RowItem 不支持的Item方法有:
public boolean addItemProperty(Object id, Property property)public boolean removeItemProperty(Object id)
下面的例子向Customer 表中添加一个记录 James ,Shen, Tribute Street, Perth
void addCustomer(SQLContainer sqlContainer){sqlContainer.setAutoCommit(false);TemporaryRowId rowId=(TemporaryRowId)sqlContainer.addItem();if(rowId!=null){RowItem rowItem=(RowItem)sqlContainer.getItem(rowId);ColumnProperty firstName=(ColumnProperty)rowItem.getItemProperty("FIRSTNAME");firstName.setValue("James");ColumnProperty lastName=(ColumnProperty)rowItem.getItemProperty("LASTNAME");lastName.setValue("Shen");ColumnProperty street=(ColumnProperty)rowItem.getItemProperty("STREET");street.setValue("Tribute Steet");ColumnProperty city=(ColumnProperty)rowItem.getItemProperty("CITY");city.setValue("Perth");ColumnProperty Id=(ColumnProperty)rowItem.getItemProperty("ID");Id.setValue(50);rowItem.commit();}}
整体感觉使用SQLContainer编辑数据并不十分方便,还不如直接使用SQL语句或是使用hibernate.来的方便。
- Vaadin Web应用开发教程(48): SQLContainer-编辑
- Vaadin Web应用开发教程(49): SQLContainer-引用其它SQLContainer
- Vaadin Web应用开发教程(45): SQLContainer 概述
- Vaadin Web应用开发教程(46): 开始使用SQLContainer
- Vaadin Web应用开发教程(47): SQLContainer-过滤及排序
- Vaadin Web应用开发教程(50): SQLContainer-使用FreeformQuery
- Vaadin Web应用开发教程(37):可视化界面编辑插件
- Vaadin Web应用开发教程(3):Vaadin应用程序框架介绍
- Vaadin Web应用开发教程(1):概述
- Vaadin Web应用开发教程: 总结
- Vaadin Web应用开发教程(4):开始编写Web应用
- Vaadin Web应用开发教程(5):Vaadin Web应用的基本组成部分
- Vaadin Web应用开发教程(2):安装开发环境
- Vaadin Web应用开发教程(6):使用资源
- Vaadin Web应用开发教程(7):UI组件概述
- Vaadin Web应用开发教程(8):UI组件-Label
- Vaadin Web应用开发教程(9):UI组件-Link
- Vaadin Web应用开发教程(10):UI组件-TextField
- InvalidateRect函数
- hdu 3625 Examining the rooms
- java String 缓冲池概念的举例说明
- 开学啦
- 计算图中包含环的个数
- Vaadin Web应用开发教程(48): SQLContainer-编辑
- 一致性 hash 算法( consistent hashing )
- CentOS Linux Vsftp服务器配置
- 有意思的12道C面试题及答案
- Unity Web前端研究
- 树形结构的处理——组合模式(五)
- 详解C++代码反汇编后的堆栈寄存器EBP和ESP
- HBase条件查询(多条件查询)
- Ajax使用示例(不详细)