增删改操作
来源:互联网 发布:下载软件的软件哪个好 编辑:程序博客网 时间:2024/06/07 05:39
(1)准备工作
1)定义pojo
package sample.dataset;import java.util.Date;public class Product {private long id;private String name;private double price;private Date gmtCreate;private Date gmtModifieDate;<span style="white-space:pre"></span>....}2)定义DataType对应Pojo
此处是在全局定义,在view中没有matchType
3)定义DataSet使用新建的DataType
4)定义DataGrid使用定义的DataSet
5)定义一个ToolBar,下面添加一个ToolBarButton,用来修改
6)定义一个Dialog,用来编辑数据
7) 在下面Children节点添加一个AutoForm,用来生成编辑表单
注意,这里使用dataSet是为了可以根据dataSet中的数据来生成表单中的控件
8)添加2个按钮,分别用来确定和取消
9)添加UpdateAction,用来更新操作
添加一个UpdateItem
10)后端代码
package sample.curd;import java.util.ArrayList;import java.util.List;import java.util.Map;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Component;import sample.dataset.Product;import sample.dataset.ProductDAO;import com.bstek.dorado.annotation.DataProvider;import com.bstek.dorado.annotation.DataResolver;import com.bstek.dorado.data.entity.EntityState;import com.bstek.dorado.data.entity.EntityUtils;@Componentpublic class StdCURD {@Autowiredprivate ProductDAO productDAO;@DataProviderpublic List<Product> getAll(){return productDAO.getData();}@DataProviderpublic List<Product> getByParam(Map<String, Object> params){List<Product> resultList = new ArrayList<>();if (params!=null && params.size()>0 && params.get("productId")!=null) {long id = Long.valueOf((String)params.get("productId"));for (Product product:productDAO.getData()) {if (product.getId() == id) {resultList.add(product);return resultList;}}}return productDAO.getData();}@DataResolverpublic void save(List<Product> products){for (Product product : products) {if (EntityState.DELETED.equals(EntityUtils.getState(product))) {System.out.println("删除操作");}else if (EntityState.MODIFIED.equals(EntityUtils.getState(product))) {System.out.println("修改操作");}else if (EntityState.NEW.equals(EntityUtils.getState(product))) {System.out.println("新增操作");}}productDAO.save(products);}}
最终页面如下:
(2)修改
1)为编辑按钮绑定onClick事件
// @Bind #edit.onClick!function(dialogEdit){dialogEdit.show();}
2)为取消按钮绑定onClick事件
// @Bind #cancleBtn.onClick!function(dsProducts,dialogEdit){view.get("#dsProducts.data:#").cancel();dialogEdit.hide();}意思是取消当前数据的操作,然后隐藏窗口
3)为确定按钮绑定onClick事件
// @Bind #confirmBtn.onClick!function(updateAction,dialogEdit){updateAction.execute(function(){dialogEdit.hide();});}
(3)新增
1)添加新增按钮
2)为新增按钮添加onClick事件响应
// @Bind #addBtn.onClick!function(dsProducts,dialogEdit){dsProducts.getData().insert();dialogEdit.show();}
(4)删除(只能逻辑删除)
1)添加删除按钮
2)为删除按钮添加onClick事件响应
// @Bind #removeBtn.onClick!function(dsProducts){var entity = view.get("#dsProducts.data:#");alert(entity.get("id"));entity.remove(); if(entity){ dorado.MessageBox.confirm("确认要删除记录吗?", function(){ }); }}
0 0
- 增删查改操作
- mybatis增删改操作
- 增删改操作
- mysql 增删改操作
- GridView+Linq增删改操作
- 通用的增删改操作
- GridView增删改简单操作
- ThinkPHP中的增删改操作
- 二叉排序树的增删改操作
- SimpleJDBCOperator 增删改查操作
- EF操作增删改查
- hibernate 增删改查操作
- mybatis进行增删改操作
- Sqlite增删改查操作
- 拦截数据库增删改操作
- mongo 增删改查操作
- JavaScript--DOM增删改操作
- mybatis 增删改查操作
- 编译和链接
- 坏的解释器: 没有那个文件或目录/bin/sh
- C语言C++语言中静态变量和静态函数
- REST Web应用,ZF框架 Rest CS服务实现
- Spring MVC前台属性数据的传递和后台属性数据的接收
- 增删改操作
- latex 论文致谢
- Java中创建线程的两种方式及线程的状态复习
- 在WMWare 安装Redhat Linux 6.4 basic server版本(没有图形界面)网络连接
- 获取最大值
- LeetCode——Product of Array Except Self
- java ee web开发学习笔记
- MySQL之——分布式集群
- priority_queue,以及运算符重载