Hibernate throws MultipleBagFetchException - cannot simultaneously fetch multiple bags

前端 未结 15 2042
广开言路
广开言路 2020-11-22 12:49

Hibernate throws this exception during SessionFactory creation:

org.hibernate.loader.MultipleBagFetchException: cannot simultaneously fetch multiple b

15条回答
  •  感动是毒
    2020-11-22 13:24

    We tried Set instead of List and it is a nightmare: when you add two new objects, equals() and hashCode() fail to distinguish both of them ! Because they don't have any id.

    typical tools like Eclipse generate that kind of code from Database tables:

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((id == null) ? 0 : id.hashCode());
        return result;
    }
    

    You may also read this article that explains properly how messed up JPA/Hibernate is. After reading this, I think this is the last time I use any ORM in my life.

    I've also encounter Domain Driven Design guys that basically say ORM are a terrible thing.

提交回复
热议问题