首先看针对单个实体的。
1.根据主键查询实体findone
通过主键找到一个实体。
GenericValue findOne(java.lang.String entityName, java.util.Map<java.lang.String,? extends java.lang.Object> fields, boolean useCache)
例子1:
facility = delegator.findOne("Facility", [facilityId : facilityId], false)
例子2:
GenericValue studentGV = delegator.findOne("Student", UtilMisc.toMap("stuId", studentMap.get("stuId")), false)
GenericValue findOne(java.lang.String entityName, boolean useCache, java.lang.Object... fields)
例子:
GenericValue personGV = delegator.findOne("Person", false, UtilMisc.toMap("partyId", context.userLoginId))
2.生成主键标记getNextSeqId
从给定序列名的序列中获得下一个保证的唯一序列ID;如果指定的序列不存在,它将被创建。
createSetNextSeqId:设置序列ID(仅用于一个主键字段的实体),然后在数据库中按正常方式创建一个创建。
java.lang.String getNextSeqId(java.lang.String seqName)
java.lang.String getNextSeqId(java.lang.String seqName, long staggerMax)
java.lang.Long getNextSeqIdLong(java.lang.String seqName)
java.lang.Long getNextSeqIdLong(java.lang.String seqName, long staggerMax)
GenericValue createSetNextSeqId(GenericValue value)
例子:
jobId = delegator.getNextSeqId("JobSandbox")
3.新增实体记录create
创建一个genericvalue形式的实体并将其写入数据库
GenericValue create(GenericPK primaryKey)
GenericValue create(GenericValue value)
GenericValue create(java.lang.String entityName, java.util.Map<java.lang.String,? extends java.lang.Object> fields)
GenericValue create(java.lang.String entityName, java.lang.Object... fields)
GenericValue createOrStore(GenericValue value)
4.修改实体记录store
将GenericValue值更新到数据库
int store(GenericValue value)
5.删除实体记录removeValue
从数据库中删除实体记录int removeValue(GenericValue value) int removeByPrimaryKey(GenericPK primaryKey)
下面是针对批量操作实体的。
6.批量修改storeAll
int storeAll(java.util.List<GenericValue> values)
int storeAll(java.util.List<GenericValue> values, EntityStoreOptions storeOptions)
int storeByCondition(java.lang.String entityName, java.util.Map<java.lang.String,? extends java.lang.Object> fieldsToSet, EntityCondition condition)
7.批量删除removeByAnd
int removeAll(java.util.List<? extends GenericEntity> dummyPKs)
int removeAll(java.lang.String entityName)
int removeByAnd(java.lang.String entityName, java.util.Map<java.lang.String,? extends java.lang.Object> fields)
int removeByAnd(java.lang.String entityName, java.lang.Object... fields)
int removeByCondition(java.lang.String entityName, EntityCondition condition)
8.按条件查询
EntityListIterator find(java.lang.String entityName, EntityCondition whereEntityCondition, EntityCondition havingEntityCondition, java.util.Set<java.lang.String> fieldsToSelect, java.util.List<java.lang.String> orderBy, EntityFindOptions findOptions)
java.util.List<GenericValue> findAll(java.lang.String entityName, boolean useCache)
java.util.List<GenericValue> findByAnd(java.lang.String entityName, java.util.Map<java.lang.String,? extends java.lang.Object> fields, java.util.List<java.lang.String> orderBy, boolean useCache)
java.util.List<GenericValue> findList(java.lang.String entityName, EntityCondition entityCondition, java.util.Set<java.lang.String> fieldsToSelect, java.util.List<java.lang.String> orderBy, EntityFindOptions findOptions, boolean useCache)
GenericValue getRelatedOne(java.lang.String relationName, GenericValue value, boolean useCache)
java.util.List<GenericValue> getRelated(java.lang.String relationName, java.util.Map<java.lang.String,? extends java.lang.Object> byAndFields, java.util.List<java.lang.String> orderBy, GenericValue value, boolean useCache)
int removeRelated(java.lang.String relationName, GenericValue value)