package Ġde . rie ck pil . blog Ċ Ċ import Ġjavax . annotation . Post Construct Ċ import Ġjavax . e jb . Singleton Ċ import Ġjavax . e jb . Startup Ċ import Ġjavax . persistence . EntityManager Ċ import Ġjavax . persistence . Persistence Context Ċ Ċ @ Singleton Ċ @ Startup Ċ open Ġclass ĠBook Service Ġ{ ĊĊĠĠĠ Ġ@ Persistence Context ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġentity Manager : ĠEntity Manager ĊĊĠĠĠ Ġ@ Post Construct ĊĠĠĠ Ġopen Ġfun ĠsetUp () Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln (" Initializing Ġbooks Ġ... ") ĊĠĠĠĠĠĠĠ Ġentity Manager . persist ( Book ( null , Ġ" Java ĠEE Ġ 8 ", Ġ" Du ke ")) ĊĠĠĠĠĠĠĠ Ġentity Manager . persist ( Book ( null , Ġ" J ak arta ĠEE Ġ 8 ", Ġ" Du ke ")) ĊĠĠĠĠĠĠĠ Ġentity Manager . persist ( Book ( null , Ġ" Micro Profile Ġ 2 . 2 ", Ġ" Du ke ")) ĊĠĠĠĠĠĠĠ Ġprintln (" ... Ġfinished Ġinitializing Ġbooks ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġopen Ġfun ĠgetAll Books (): ĠList < Book > Ġ= Ġentity Manager . createQuery (" SELECT Ġb ĠFROM ĠBook Ġb ", ĠBook :: class . java ). result List ĊĠĠĠ Ġopen Ġfun Ġget Book ById ( id : ĠLong ): ĠBook ? Ġ= Ġentity Manager . find ( Book :: class . java , Ġid ) Ċ }