当前位置: 首页>>代码示例>>Java>>正文


Java Id类代码示例

本文整理汇总了Java中org.springframework.data.annotation.Id的典型用法代码示例。如果您正苦于以下问题:Java Id类的具体用法?Java Id怎么用?Java Id使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


Id类属于org.springframework.data.annotation包,在下文中一共展示了Id类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getIdField

import org.springframework.data.annotation.Id; //导入依赖的package包/类
private Field getIdField(Class<?> domainClass) {
    Field idField = null;

    final List<Field> fields = FieldUtils.getFieldsListWithAnnotation(domainClass, Id.class);

    if (fields.isEmpty()) {
        idField = ReflectionUtils.findField(getJavaType(), "id");
    } else if (fields.size() == 1) {
        idField = fields.get(0);
    } else {
        throw new IllegalArgumentException("only one field with @Id annotation!");
    }

    if (idField != null && idField.getType() != String.class) {
        throw new IllegalArgumentException("type of id field must be String");
    }
    return idField;
}
 
开发者ID:Microsoft,项目名称:spring-data-documentdb,代码行数:19,代码来源:DocumentDbEntityInformation.java

示例2: getId

import org.springframework.data.annotation.Id; //导入依赖的package包/类
@SuppressWarnings("unchecked")
@Override
public ID getId(T entity) {
	Class<?> domainClass = getJavaType();
	while (domainClass != Object.class) {
		for (Field field : domainClass.getDeclaredFields()) {
			if (field.getAnnotation(Id.class) != null) {
				try {
					return (ID) field.get(entity);
				}
				catch (IllegalArgumentException | IllegalAccessException e) {
					BeanWrapper beanWrapper = PropertyAccessorFactory
							.forBeanPropertyAccess(entity);
					return (ID) beanWrapper.getPropertyValue(field.getName());
				}
			}
		}
		domainClass = domainClass.getSuperclass();
	}
	throw new IllegalStateException("id not found");
}
 
开发者ID:tkob,项目名称:spring-data-gclouddatastore,代码行数:22,代码来源:GcloudDatastoreEntityInformation.java

示例3: getPkColumns

import org.springframework.data.annotation.Id; //导入依赖的package包/类
private String getPkColumns() {
  Class<T> entityType = entityInfo.getJavaType();

  Field[] fields = entityType.getDeclaredFields();
  for (Field field : fields) {
    Id idAnnotation = field.getAnnotation(Id.class);
    if (idAnnotation != null) {
      String id = idAnnotation.name();
      if (StringUtils.isEmpty(id)) {
        return underscoreName(field.getName());
      } else {
        return id;
      }
    }
  }

  return "";
}
 
开发者ID:nickevin,项目名称:Qihua,代码行数:19,代码来源:JdbcRepository.java

示例4: getBean

import org.springframework.data.annotation.Id; //导入依赖的package包/类
protected <T> T getBean(Class<T> clazz, Node node) {
    try {
        T instance = clazz.newInstance();
        Iterable<String> propertyKeys = node.getPropertyKeys();
        for (String key : propertyKeys) {
            if (!key.equals(clazz.getName() + ID_SUFFIX)) {
                BeanUtils.setProperty(instance, key, node.getProperty(key));
            } else {
                BeanProperty prop = ReflectionUtils.getAnnotatedProperty(instance, Id.class);
                BeanUtils.setProperty(instance, prop.getName(), node.getProperty(key));
            }
        }
        return instance;
    } catch (Exception e) {
        throw new DataAccessResourceFailureException("Problem obtainig bean from node", e);
    }
}
 
开发者ID:Glamdring,项目名称:welshare,代码行数:18,代码来源:BaseNeo4jDao.java

示例5: persist

import org.springframework.data.annotation.Id; //导入依赖的package包/类
@Override
public <T> T persist(T e) {
    BeanProperty id = ReflectionUtils.getAnnotatedProperty(e, Id.class);
    if (id == null) {
        throw new IllegalArgumentException("The bean must have an @Id field");
    }

    List<BeanProperty> persistentProperties = ReflectionUtils
            .getAnnotatedProperties(e, Persistent.class);
    Property[] properties = new Property[persistentProperties.size() + 1];
    properties[0] = new Property(e.getClass().getName() + ID_SUFFIX, id.getValue());
    int i = 1;
    for (BeanProperty property : persistentProperties) {
        properties[i] = new Property(property.getName(), property.getValue());
        i++;
    }

    Node node = template.createNode(properties);
    index.index(node, e.getClass().getName() + ID_SUFFIX, id.getValue());
    return e;
}
 
开发者ID:Glamdring,项目名称:welshare,代码行数:22,代码来源:BaseNeo4jDao.java

示例6: getIdField

import org.springframework.data.annotation.Id; //导入依赖的package包/类
public static Field getIdField(Class<?> clazz) {
	Field idField = null;

	for(Field f : ReflectionUtils.getDeclaredFieldsInHierarchy(clazz)) {
		// named id or annotated with Id
		if(f.getName().equals(FIELD_NAME_DEFAULT_ID) || f.getAnnotation(Id.class) != null) {
			if(idField != null) {
				throw new MappingException("Multiple id fields detected for class " + clazz.getName());
			}
			idField = f;
		}

	}

	return idField;
}
 
开发者ID:3pillarlabs,项目名称:spring-data-simpledb,代码行数:17,代码来源:MetadataParser.java

示例7: getIdType

import org.springframework.data.annotation.Id; //导入依赖的package包/类
@SuppressWarnings("unchecked")
@Override
public Class<ID> getIdType() {
	Class<?> domainClass = getJavaType();
	while (domainClass != Object.class) {
		for (Field field : domainClass.getDeclaredFields()) {
			if (field.getAnnotation(Id.class) != null) {
				return (Class<ID>) field.getType();
			}
		}
		domainClass = domainClass.getSuperclass();
	}
	throw new IllegalStateException("id not found");
}
 
开发者ID:tkob,项目名称:spring-data-gclouddatastore,代码行数:15,代码来源:GcloudDatastoreEntityInformation.java

示例8: doWith

import org.springframework.data.annotation.Id; //导入依赖的package包/类
public void doWith(Field field) throws IllegalArgumentException,
		IllegalAccessException {
	ReflectionUtils.makeAccessible(field);

	if (field.isAnnotationPresent(Id.class)) {
		idFound = true;
	}
}
 
开发者ID:nkasvosve,项目名称:beyondj,代码行数:9,代码来源:CascadingMongoEventListener.java

示例9: buildUpdate

import org.springframework.data.annotation.Id; //导入依赖的package包/类
/**
 * 除@Id字段外,其他字段则更新
 *
 * @param <T>
 * @param dto
 * @return
 * @throws SecurityException
 * @throws IllegalArgumentException
 * @throws NoSuchMethodException
 * @throws IllegalAccessException
 * @throws InvocationTargetException
 * @throws ClassNotFoundException
 * @throws InstantiationException
 */
public static <T extends AbstractNaviBaseDto> Update buildUpdate(T dto) throws SecurityException, IllegalArgumentException,
    NoSuchMethodException, IllegalAccessException,
    InvocationTargetException, InstantiationException,
    ClassNotFoundException {
    Field[] fields = dto.getClass().getDeclaredFields();
    AbstractNaviBaseDto initDto = (AbstractNaviBaseDto) Class.forName(
        dto.getClass().getName(), true, dto.getClass().getClassLoader()
    ).newInstance();
    Update up = new Update();
    for (Field field : fields) {
        String fnm = field.getName();
        int finalNo = field.getModifiers() & Modifier.FINAL;
        int staticNo = field.getModifiers() & Modifier.STATIC;
        int transitNo = field.getModifiers() & Modifier.TRANSIENT;
        if (finalNo != 0 || staticNo != 0 || transitNo != 0
            || field.isAnnotationPresent(Id.class)) {
            continue;
        }
        Object newValue = dto.getValue(fnm);
        if (newValue == null || newValue.equals(initDto.getValue(fnm))) {
            continue;
        }
        up.set(fnm, newValue);
    }
    return up;
}
 
开发者ID:sunguangran,项目名称:navi,代码行数:41,代码来源:NaviUtil.java

示例10: getIdField

import org.springframework.data.annotation.Id; //导入依赖的package包/类
private Field getIdField(final Class<T> domainClass) {
    Field idField = null;
    for (final Field field : domainClass.getDeclaredFields()) {
        final Class type = field.getType();
        final String name = field.getName();
        if (field.isAnnotationPresent(Id.class)) {
            idField = field;
            idField.setAccessible(true);
            break;
        }
    }
    return idField;
}
 
开发者ID:create1st,项目名称:spring-boot-starter-mybatis,代码行数:14,代码来源:MappingMyBatisEntityInformation.java

示例11: doWith

import org.springframework.data.annotation.Id; //导入依赖的package包/类
public void doWith(Field field) throws IllegalArgumentException, IllegalAccessException {
    ReflectionUtils.makeAccessible(field);

    if (field.isAnnotationPresent(Id.class)) {
        idFound = true;
    }
}
 
开发者ID:ssouporg,项目名称:denv,代码行数:8,代码来源:CascadingMongoEventListener.java

示例12: findIdField

import org.springframework.data.annotation.Id; //导入依赖的package包/类
@Override
protected Field findIdField(Class<?> clazz) {
	Field idField = getReferencedField(this.getClazz(), Id.class);
	if (idField == null) {
		idField = getReferencedField(this.getClazz(), javax.persistence.Id.class);
		if (idField == null) {
			idField = getReferencedField(this.getClazz(), EmbeddedId.class);
		}
	}
	return idField;
}
 
开发者ID:statefulj,项目名称:statefulj,代码行数:12,代码来源:MongoPersister.java

示例13: matches

import org.springframework.data.annotation.Id; //导入依赖的package包/类
@Override
public boolean matches(Field field) {
    return field.getAnnotation(Id.class) == null;
}
 
开发者ID:snowdrop,项目名称:spring-data-snowdrop,代码行数:5,代码来源:GenericEntityToModelMapper.java

示例14: getCode

import org.springframework.data.annotation.Id; //导入依赖的package包/类
@Id
public String getCode() {
	return code;
}
 
开发者ID:PacktPublishing,项目名称:Mastering-Spring-5.0,代码行数:5,代码来源:Stock.java

示例15: isIdProperty

import org.springframework.data.annotation.Id; //导入依赖的package包/类
public boolean isIdProperty() {
    return isAnnotationPresent(Id.class) 
           || isAnnotationPresent(com.googlecode.objectify.annotation.Id.class);
}
 
开发者ID:nhuttrung,项目名称:spring-data-objectify,代码行数:5,代码来源:ObjectifyPersistentProperty.java


注:本文中的org.springframework.data.annotation.Id类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。