Articles of orm

Mapear enum na JPA com valores fixos?

Eu estou procurando as maneiras diferentes de mapear um enum usando o JPA. Eu especialmente quero definir o valor inteiro de cada input enum e salvar apenas o valor inteiro. @Entity @Table(name = “AUTHORITY_”) public class Authority implements Serializable { public enum Right { READ(100), WRITE(200), EDITOR (300); private int value; Right(int value) { this.value […]

As classs de tabelas do Hibernate precisam ser serializáveis?

Eu herdei um projeto do Portal Websphere que usa o Hibernate 3.0 para conectar-se a um database do SQL Server. Existem cerca de 130 classs de tabelas do Hibernate neste projeto. Todos eles implementam Serializable. Nenhum deles declara um campo serialVersionUID, portanto, o Eclipse IDE mostra um aviso para todas essas classs. Existe alguma necessidade […]

Palavra reservada automática que escapa para tabelas e colunas do Hibernate

Eu estou tentando usar um mapeamento do Hibernate para vários bancos de dados diferentes: H2, Oracle, MySql. Cada database tem uma lista diferente de palavras reservadas. Eu gostaria que o Hibernate escapasse automaticamente das palavras reservadas. Eu sei que posso: use backticks para forçar a fuga (escaping tudo só para ser seguro) altere todos os […]

Hibernate – @ElementCollection – Estranho comportamento de exclusão / inserção

@Entity public class Person { @ElementCollection @CollectionTable(name = “PERSON_LOCATIONS”, joinColumns = @JoinColumn(name = “PERSON_ID”)) private List locations; […] } @Embeddable public class Location { […] } Dada a estrutura de classs a seguir, quando tento adicionar um novo local à lista de locais da pessoa, sempre resulta nas seguintes consultas SQL: DELETE FROM PERSON_LOCATIONS WHERE […]

Como remover entidade com ManyToMany relacionamento em JPA (e correspondentes linhas da tabela de junit)?

Digamos que eu tenha duas entidades: Grupo e Usuário. Cada usuário pode ser membro de vários grupos e cada grupo pode ter muitos usuários. @Entity public class User { @ManyToMany Set groups; //… } @Entity public class Group { @ManyToMany(mappedBy=”groups”) Set users; //… } Agora eu quero remover um grupo (digamos que tenha muitos membros). […]

Como resolver o LazyInitializationException ao usar o JPA e o Hibernate

Eu estou trabalhando em um projeto para um cliente que quer usar a boot lenta. Eles sempre recebem “exceção de boot preguiçosa” ao mapear classs com o modo de carregamento lento padrão. @JoinTable(name = “join_profilo_funzionalita”, joinColumns = {@JoinColumn(name = “profilo_id”, referencedColumnName = “profilo_id”)}, inverseJoinColumns = {@JoinColumn(name = “funzionalita_id”, referencedColumnName = “funzionalita_id”)}) //@ManyToMany(fetch=FetchType.EAGER) – no exceptions […]

Devo ativar ou desativar proxies dynamics com o framework de entidades 4.1 e MVC3?

Alguém poderia oferecer alguns conselhos ou apontar alguns blogs / artigos que poderiam ajudar a tomar essa decisão? Os proxies parecem muito estranhos para mim e hesito em usá-los. Eu gosto da capacidade de controlar Lazy Loading usando propriedades virtuais no meu modelo, mas isso é praticamente todos os benefícios que eu vejo. Meu aplicativo […]

Como mapear listas de objects nesteds com o Dapper

Atualmente estou usando o Entity Framework para meu access ao database, mas quero dar uma olhada no Dapper. Eu tenho aulas assim: public class Course{ public string Title{get;set;} public IList Locations {get;set;} … } public class Location{ public string Name {get;set;} … } Então, um curso pode ser ministrado em vários locais. Entity Framework faz […]

Qual é a diferença entre associações JPA e Hibernate unidirecionais e bidirecionais?

Qual é a diferença entre associações unidirecionais e bidirecionais? Como a tabela gerada no database é a mesma, a única diferença encontrada é que cada lado da associação bidirecional terá uma referência à outra, e a unidirecional não. Esta é uma associação unidirecional public class User { private int id; private String name; @ManyToOne @JoinColumn( […]

O que é um ORM e onde posso aprender mais sobre isso?

Alguém sugeriu que eu usasse um ORM para um projeto que estou criando, mas estou tendo problemas para encontrar informações sobre o que é ou como funciona. Alguém pode me dar uma breve explicação ou um link sobre onde eu posso aprender mais sobre isso?