java类javax.persistence.Table的实例源码

HibernateUtil.java 文件源码 项目:MMORPG_Prototype 阅读 31 收藏 0 点赞 0 评论 0
private static void registerEntityTypes(Configuration config)
{
    Reflections reflections = new Reflections("pl.mmorpg.prototype.server.database.entities");
    Set<Class<?>> entityTypes = reflections.getTypesAnnotatedWith(Table.class);
    for (Class<?> type : entityTypes)
        config = config.addAnnotatedClass(type);
}
EntityUtils.java 文件源码 项目:spring-data-jdbc-template 阅读 34 收藏 0 点赞 0 评论 0
public static String tableName(Class<?> klass) {
    Table t = klass.getAnnotation(Table.class);
    if (t != null) {
        return t.name();
    }
    return klass.getSimpleName();
}
EntityInfo.java 文件源码 项目:crypto-exchange 阅读 42 收藏 0 点赞 0 评论 0
static String getTableName(Class<?> clazz) {
    Table table = clazz.getAnnotation(Table.class);
    if (table == null) {
        return clazz.getSimpleName();
    }
    return table.name().isEmpty() ? clazz.getSimpleName() : table.name();
}
DbTestBase.java 文件源码 项目:cryptoexchange 阅读 27 收藏 0 点赞 0 评论 0
String getTableName(Class<?> clazz) {
    Table t = clazz.getAnnotation(Table.class);
    if (t != null && !t.name().isEmpty()) {
        return t.name();
    }
    return clazz.getSimpleName();
}
EntityManager.java 文件源码 项目:financisto1-holo 阅读 29 收藏 0 点赞 0 评论 0
private static EntityDefinition parseDefinition(Class<?> clazz) {
    if (!clazz.isAnnotationPresent(Entity.class)) {
        throw new IllegalArgumentException("Class "+clazz+" is not an @Entity");
    }
    EntityDefinition.Builder edb = new EntityDefinition.Builder(clazz);
    try {
        Constructor<?> constructor = clazz.getConstructor();
        edb.withConstructor(constructor);
    } catch (Exception e) {
        throw new IllegalArgumentException("Entity must have an empty constructor");
    }       
    if (clazz.isAnnotationPresent(Table.class)) {
        Table tableAnnotation = clazz.getAnnotation(Table.class);
        edb.withTable(tableAnnotation.name());
    }
    Field[] fields = clazz.getFields();
    if (fields != null) {
        int index = 0;
        for (Field f : fields) {
            if ((f.getModifiers() & Modifier.STATIC) == 0) {
                if (f.isAnnotationPresent(Id.class)) {
                    edb.withIdField(parseField(f));
                } else {
                    if (f.isAnnotationPresent(Transient.class)) {
                        continue;
                    } else if (f.isAnnotationPresent(JoinColumn.class)) {
                        JoinColumn c = f.getAnnotation(JoinColumn.class);
                        edb.withField(FieldInfo.entity(index++, f, c.name(), c.required()));
                    } else {
                        edb.withField(parseField(f));                           
                    }                       
                }
            }
        }
    }
    return edb.create();
}
UniqueValidator.java 文件源码 项目:UniqueValidator 阅读 39 收藏 0 点赞 0 评论 0
private ArrayList<String[]> _getFieldsFromUniqueConstraint(Object value){
    ArrayList<String[]> result = new ArrayList<>();

    if(value.getClass().isAnnotationPresent(Table.class)){
        Table ta = value.getClass().getAnnotation(Table.class);
        for(UniqueConstraint uc : ta.uniqueConstraints()){
            result.add(uc.columnNames());
        }
    }

    return result;
}
DataAccessRegistry.java 文件源码 项目:stallion-core 阅读 40 收藏 0 点赞 0 评论 0
public ModelController registerDbOrFileModel(Class<? extends Model> model, Class<? extends ModelController> controller, String bucket) {
    Table anno = model.getAnnotation(Table.class);
    if (anno == null) {
        throw new UsageException("A @Table annotation is required on the model " + model.getCanonicalName() + " in order to register it.");
    }
    bucket = or(bucket, anno.name());
    String table = anno.name();
    DataAccessRegistration registration = new DataAccessRegistration()
            .setDatabaseBacked(true)
            .setPersisterClass(DbPersister.class)
            .setBucket(bucket)
            .setTableName(table)
            .setControllerClass(controller)
            .setStashClass(PartialStash.class)
            .setModelClass(model);
    if (!DB.available()) {
        registration
                .setDatabaseBacked(false)
                .setPersisterClass(JsonFilePersister.class)
                .setStashClass(LocalMemoryStash.class)
                .setPath(bucket)
                .setUseDataFolder(true)
                .setShouldWatch(true)
                .setWritable(true)
                ;
    }
    return register(registration);
}
JpaAnnotationParser.java 文件源码 项目:hsweb-framework 阅读 25 收藏 0 点赞 0 评论 0
public static RDBTableMetaData parseMetaDataFromEntity(Class entityClass) {
    Table table = AnnotationUtils.findAnnotation(entityClass, Table.class);
    if (table == null) {
        return null;
    }
    RDBTableMetaData tableMetaData = new RDBTableMetaData();
    tableMetaData.setName(table.name());

    PropertyDescriptor[] descriptors = BeanUtilsBean.getInstance()
            .getPropertyUtils()
            .getPropertyDescriptors(entityClass);
    for (PropertyDescriptor descriptor : descriptors) {
        Column column = getAnnotation(entityClass, descriptor, Column.class);
        if (column == null) {
            continue;
        }
        RDBColumnMetaData columnMetaData = new RDBColumnMetaData();
        columnMetaData.setName(column.name());
        columnMetaData.setAlias(descriptor.getName());
        columnMetaData.setLength(column.length());
        columnMetaData.setPrecision(column.precision());
        columnMetaData.setJavaType(descriptor.getPropertyType());
        JDBCType type = jdbcTypeMapping.get(descriptor.getPropertyType());
        if (type == null) {
            type = jdbcTypeConvert.stream()
                    .map(func -> func.apply(entityClass, descriptor))
                    .filter(Objects::nonNull)
                    .findFirst()
                    .orElse(JDBCType.OTHER);
        }
        columnMetaData.setJdbcType(type);
        tableMetaData.addColumn(columnMetaData);
    }
    return tableMetaData;
}
MCRHibernateConfigHelper.java 文件源码 项目:mycore 阅读 57 收藏 0 点赞 0 评论 0
private static String getUniqueColumns(Class<?> clazz, String name) {
    return Optional.of(clazz)
        .map(c -> c.getAnnotation(Table.class))
        .map(Table::uniqueConstraints)
        .map(Stream::of)
        .flatMap(s -> s
            .filter(uc -> uc.name().equals(name))
            .findAny()
            .map(UniqueConstraint::columnNames))
        .map(Stream::of)
        .map(s -> s.collect(Collectors.joining(", ")))
        .get();
}
ModelUtils.java 文件源码 项目:easy-mybatis 阅读 31 收藏 0 点赞 0 评论 0
public static String getTableName(Class<? extends BaseMybatisModel> modelClass) {
      if (modelClass.isAnnotationPresent(Table.class)) {
          return ((Table) modelClass.getAnnotation(Table.class)).name();
      }
if (modelClass.getSuperclass().isAnnotationPresent(Table.class)) {
    return ((Table) modelClass.getSuperclass().getAnnotation(Table.class)).name();
}
      return null;
  }


问题


面经


文章

微信
公众号

扫码关注公众号