javax.persistence.EntityManager#getMetamodel ( )源码实例Demo

下面列出了javax.persistence.EntityManager#getMetamodel ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: Knowage-Server   文件: JPAPersistenceManager.java
public EntityType getTargetEntity(RegistryConfiguration registryConf, EntityManager entityManager) {

		EntityType targetEntity;

		String targetEntityName = getTargetEntityName(registryConf);

		Metamodel classMetadata = entityManager.getMetamodel();
		Iterator it = classMetadata.getEntities().iterator();

		targetEntity = null;
		while (it.hasNext()) {
			EntityType entity = (EntityType) it.next();
			String jpaEntityName = entity.getName();

			if (entity != null && jpaEntityName.equals(targetEntityName)) {
				targetEntity = entity;
				break;
			}
		}

		return targetEntity;
	}
 
源代码2 项目: sample-boot-micro   文件: OrmCriteria.java
/** 指定したEntityクラスにエイリアスを紐付けたCriteriaを生成します。 */
private OrmCriteria(EntityManager em, Class<T> clazz, String alias) {
    this.clazz = clazz;
    this.metamodel = em.getMetamodel();
    this.builder = em.getCriteriaBuilder();
    this.query = builder.createQuery(clazz);
    this.root = query.from(clazz);
    this.alias = alias;
    this.root.alias(alias);
}
 
源代码3 项目: sample-boot-hibernate   文件: OrmCriteria.java
/** 指定したEntityクラスにエイリアスを紐付けたCriteriaを生成します。 */
private OrmCriteria(EntityManager em, Class<T> clazz, String alias) {
    this.clazz = clazz;
    this.metamodel = em.getMetamodel();
    this.builder = em.getCriteriaBuilder();
    this.query = builder.createQuery(clazz);
    this.root = query.from(clazz);
    this.alias = alias;
    this.root.alias(alias);
}
 
源代码4 项目: tomee   文件: JtaEntityManager.java
public Metamodel getMetamodel() {
    final EntityManager entityManager = getEntityManager();
    try {
        final Timer timer = Op.getMetamodel.start(this.timer, this);
        try {
            return entityManager.getMetamodel();
        } finally {
            timer.stop();
        }
    } finally {
        closeIfNoTx(entityManager);
    }
}
 
源代码5 项目: elexis-3-core   文件: AbstractModelService.java
private <T> String getTableName(EntityManager em, Class<T> entityClass){
	/*
	 * Check if the specified class is present in the metamodel.
	 * Throws IllegalArgumentException if not.
	 */
	Metamodel meta = em.getMetamodel();
	EntityType<T> entityType = meta.entity(entityClass);
	
	//Check whether @Table annotation is present on the class.
	Table t = entityClass.getAnnotation(Table.class);
	
	String tableName = (t == null) ? entityType.getName().toUpperCase() : t.name();
	return tableName;
}
 
public Attribute getIdAttribute(EntityManager em, Class<T> clazz) {
    Metamodel m = em.getMetamodel();
    IdentifiableType<T> of = (IdentifiableType<T>) m.managedType(clazz);
    return of.getId(of.getIdType().getJavaType());
}