总结一下,ofbiz增删改查的代码
注:配置信息这里就不再表述
1、create,插入数据
Map values = UtilMisc.toMap("id", "1", "name", "allen");
GenericValue user = delegator.makeValue("User", values);
user.create();
以上代码等价于
INSERT INTO USER (id, name) VALUES ("1", "allen").
UtilMisc是集合类操作的工具类,ofbiz优化了map,list,set。
id和name是调用该service时传入的,组成一个参数的Map
User是在entitymodel.xml中配置的实体(具体配置,请参考我之前发的博文)
GenericValue 对象是对应数据库中一条记录。
2、delete,删除数据
Map values= UtilMisc.toMap("id", "1");
GenericValue user = delegator.findByPrimaryKey("User", values);
user.remove();
或者
Map<String,Object> pkFields = FastMap.newInstance();
pkFields.put("id", "1"); //放入主键信息
GenericPK primaryKey = delegator.makePK("User", pkFields);
delegator.removeByPrimaryKey(primaryKey);
以上代码等价于
DELETE FROM USER WHERE id= "1" ;
3、update,更新数据
Map planetValues = UtilMisc.toMap("User", "1");
GenericValue user = delegator.findByPrimaryKey("User",values);
user.put("name", "Jack");
user.store();
或者
Map<String,Object> updateFields = FastMap.newInstance();
updateFields.put("name", "Jack");
/*.... 如果有其它字段需要修改, 还可以继续把要修改的值放到updateFields中.*/
//设置修改条件
EntityCondition updateCon = EntityCondition.makeCondition("id", EntityComparisonOperator.EQUALS, "1");
delegator.storeByCondition("User", updateFields, updateCon);
<