sql >> Database teknologi >  >> RDS >> Oracle

session/entitymanager er lukket

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.



  1. Udfør udløser lagrede procedurer på SqlFiddle. Mysql

  2. Få kolonnenavn i stedet for kolonneværdi

  3. Yii2 Hvordan udføres hvor OG eller ELLER tilstandsgruppering?

  4. PL/SQL:konvertere eksplicit markør til ref markør?