Tem como fazer o mapeamento, com hibernate, de uma classe em tempo de executção?
Por exemplo o usuário cadastra os campos da nova tabela que será criada, a aplicação cria a tabela e mapea a nova entidade, tem como fazer isso?
Mapear classes com hibernate em tempo de execução
1 Resposta
L
Sim tem como,para adicionar em uma classe ja existente e mais susse,agora criar a classe e os mapeamentos em execucao he pauleira.
PersistentClass userMapping =
cfg.getClassMapping(User.class.getName());
// Define uma nova coluna
Column column = new Column();
column.setName("MOTTO");
column.setNullable(false);
column.setUnique(true);
userMapping.getTable().addColumn(column);
SimpleValue value = new SimpleValue();
value.setTable( userMapping.getTable() );
value.setTypeName("string");
value.addColumn(column);
// Define uma nova propriedade na classe
Property prop = new Property();
prop.setValue(value);
prop.setName("motto");
prop.setNodeName(prop.getName());
userMapping.addProperty(prop);
SessionFactory sf = cfg.buildSessionFactory();
Criado 22 de outubro de 2008
Ultima resposta 22 de out. de 2008
Respostas 1
Participantes 2