Du må ikke bruge Session
og Transaction
som et klassemedlem af din dao sådan. Session/EntityManager
formodes at være omfattet af arbejdsenhed, de er ikke gevindsikre.
I din nuværende tilstand, da Spring DI opretter bønner som singleton, hvis to tråde bruger dao på samme tid, vil den anden overskrive begge Session
og Transaction
medlemmer, hvorfor jeg formoder, at du får IllegalStateExcepion.
Du skal gøre dem trådomfanget ved enten at bruge dem som variabler i metoder eller, hvis du ikke har brug for hibernates specifikke metode, kan du gå efter en fuld JPA-konfiguration i foråret og bruge @PersistenceContext/@PersistenceUnit
at lade rammerne omhandle det spørgsmål.