Discover millions of ebooks, audiobooks, and so much more with a free trial

Only $11.99/month after trial. Cancel anytime.

Java Persistence with Spring Data and Hibernate
Java Persistence with Spring Data and Hibernate
Java Persistence with Spring Data and Hibernate
Ebook1,206 pages26 hours

Java Persistence with Spring Data and Hibernate

Rating: 0 out of 5 stars

()

Read preview

About this ebook

Master Java persistence using the industry-leading tools Spring Data and Hibernate.

In Java Persistence with Spring Data and Hibernate you will learn:

Mapping persistent classes, value types, and inheritance
Mapping collections and entity associations
Processing transactions with Spring Data and Hibernate
Creating fetch plans, strategies, and profiles
Filtering data
Building Spring Data REST projects
Using Java persistence with non-relational databases
Querying JPA with QueryDSL
Testing Java persistence applications

Java Persistence with Spring Data and Hibernate teaches you the ins-and-outs of Java persistence with hands-on examples using Spring Data, JPA, and Hibernate. The book carefully analyzes the capabilities of the major Java persistence tools, and guides you through the most common use cases. By comparing and contrasting the alternatives, you’ll find it easy to choose the right tool choice for your applications. You’ll learn how to make and utilize mapping strategies, about the different approach to transactions for both Hibernate and Spring Data, and even how to efficiently test Java persistence applications. The practical techniques are demonstrated with both relational and non-relational databases.

Forewords by Dmitry Aleksandrov and Mohamed Taman.

About the technology

Effectively managing application data is essential for any serious application. Spring Data and Hibernate bridge the gap between object-oriented code and relational data stores, radically simplifying Java persistence. By implementing the Java Persistence API (JPA) standard, these powerful tools help you avoid common bugs related to state and application data storage.

About the book

Java Persistence with Spring Data and Hibernate explores Java persistence using industry-standard tools. Hands-on examples introduce object-relational mapping and guide you through different mapping strategies to suit your needs. Covering transactions, persistent application testing, and non-relational databases, this book is your go-to resource for managing data in Java applications.

What's inside

Mapping persistent classes, value types, and inheritance
Creating fetch plans, strategies, and profiles
Building Spring Data REST projects
Querying JPA with QueryDSL

About the reader

For intermediate Java programmers.

About the author

Catalin Tudose has more than 20 years of experience in the Java community. Christian Bauer, Gavin King, and Gary Gregory are the authors of Java Persistence with Hibernate, Second Edition, on which this book is based.

Table of Contents
PART 1 - GETTING STARTED WITH ORM
1 Understanding object/relational persistence
2 Starting a project
3 Domain models and metadata
4 Working with Spring Data JPA
PART 2 - MAPPING STRATEGIES
5 Mapping persistent classes
6 Mapping value types
7 Mapping inheritance
8 Mapping collections and entity associations
9 Advanced entity association mappings
PART 3 - TRANSACTIONAL DATA PROCESSING
10 Managing data
11 Transactions and concurrency
12 Fetch plans, strategies, and profiles
13 Filtering data
PART 4 - BUILDING JAVA PERSISTENCE APPLICATIONS WITH SPRING
14 Integrating JPA and Hibernate with Spring
15 Working with Spring Data JDBC
16 Working with Spring Data REST
PART 5 - BUILDING JAVA PERSISTENCE APPLICATIONS WITH SPRING
17 Working with Spring Data MongoDB
18 Working with Hibernate OGM
PART 6 - WRITING QUERIES AND TESTING JAVA PERSISTENCE APPLICATIONS
19 Querying JPA with Querydsl
20 Testing Java persistence applications
LanguageEnglish
PublisherManning
Release dateApr 18, 2023
ISBN9781638351856
Java Persistence with Spring Data and Hibernate
Author

Catalin Tudose

Catalin Tudose has more than 20 years experience in the Java area and is currently acting as Java and web technologies expert at Luxoft Romania. He has taught more than 2,000 hours of courses and applications as a teaching assistant and professor at the Faculty of Automation and Computers in Bucharest. He authored 6 courses at Pluralsight on Java topics, including Java persistence and he holds a PhD in computer science. Christian Bauer, Gavin King, and Gary Gregory are the authors of Java Persistence with Hibernate, Second Edition, on which this book is based.

Related to Java Persistence with Spring Data and Hibernate

Related ebooks

Programming For You

View More

Related articles

Reviews for Java Persistence with Spring Data and Hibernate

Rating: 0 out of 5 stars
0 ratings

0 ratings0 reviews

What did you think?

Tap to rate

Review must be at least 10 words

    Book preview

    Java Persistence with Spring Data and Hibernate - Catalin Tudose

    jebook_preview_excerpt.htmln$ג%+^] QAf2dTL)Q!>=4hx+ڼM L3kFl¬t+:7*oڔ4Ng yC[,l$nEVs\ZL*Ww{df7X._W&Z`2ʌK4C@yޛɘrfdpO0#eQE^&7]s}4]#};(&1YgG+h4ْ7?-igI]zG-G]Zoj蟻FyUՠI|ianx7Ւ Kn}mp/+(YTD/&-K̮]/ nWrxWc4$/¬1⅊hNWڼ-xuf7x%yVuXSJx:3LvBrڬ_LlJCwe]b Q&É1Iݴ]D.I7+qKG”2 :/_:y=W8n&3t^]bErb x$nS$gձc""\4~.yY}L}(:vbtJNN}~J9=O? TsE 7tS߁mrA,ҏB~ UVY734tS{[v_MdNˆYX_7 KE>_ҿѲj&_r!hjCLHYյsaSe6*oeFmHLniEJnND >f(t2p!4Z9G`Y$v !KiM 隩Z)nhtSdeJnj1tM[9$nM4K 65-̪EPWkp)6}{-z&Ɵsn*LTBB]n@egGЏRf>gGcHΛ9QS'b&$ɓq$q@wυ~H.i'13fs/ J|Jqf*5TDrOt DQT Nɳ/:'Ϟ|Ũj@^q;`4LBkSs&&LGN\Nkb;!+}'>螤juNklhioIΔkl b4_`|i;[ -}IW49st|=18weeioz6ɻ7gw+4'C5X(N&6 :P~d=O Ok̑?}0yExzEzlʴ)O))4|=Cqlo3LmEG'ee'֓eU̺}8|_I,Y*X?ϋR W9t/7)o./2g%0R޻|/.hi<6lȦwB?#_=p/tuq} _z:~5˟» jܹQBSt td8_mYmH^tשV1N#v(R$&ӀB=V>&~߼(:ѣn%2BzZIfJ`7WK# z;lt)<9~ҟ0;Rr*!~c`dra'*ֆƲc:7vbT%zt=*Pw"p>D{#Σx2$6/BԿ38S~2\׿|)*!)Yd_?|狮֕W+vXə,]o\|R+s3iUUxg\O?|M0[´8f*\4qNG?ԇay1e##_%ouφ4g>+;H7HۋպK,H I4)-Ӛv5*EHΏ6$,a/f+U¢ nGfeZaIo,TKfYqp $3;d؝ =g FHA}OZpТtbR,D\Gt_o߼Ne5݋$6i5r+~!s<o }aK$dpȯrMH#3k V"1|Q`52ǧC&:_ysl tWETr]xSG06)t[w{6w^v'_o,oC;3z{R0&ʄw ׮k!iǚ`80-d qɅbYz7/9qLп.sc6"րw[K=)q:\}E,:]:]@gW@Pc S",ؓbmRctk:+փ+gG4XxLW~gl\}Mz+j|Z;ߐWtӆ_ }1StG;<9 2a Cܙl8q pwRdj(Q৷ef7Q\\硛[)E bXMM.GF@Ulm@9w >s9P8,@ ^ |jt@2En7{+wC( 5Xa[' G-])Z΅ULrqxVVo ]lvvt/_ӆ=OZ߈,ڝ2p=_. 8S]Kcڇ{F~@ij!yGn~Q2NMl&tV^56u/%H/?:nM<=]<}?8-CkྻS=Ig"-rOڷǗ8rF nP#ཻ~pf";2ee2Nf'F66qՎwrgCb0,GA:NhTmLY} w`ЗI3_s ;utn?xC1A xifiY1F\vvu^O_ [Λ/`M/Nyk#μ}2#繳T<Yf4E!̴ fD "6n_W"Eh;/nVhÞP'#`(01xzvyO"2Mw'#ЍVδXLck!/W==iX?x_T=ӻJKI3<;![GPܐ+`#م4-t 0a}-B;P,#Zl';^gSh 8P9A)5gݿ;n>AۼN O 8z)o~ܳ? ;2De@ޥy!{/ߍs\,Rf ýNZԾ<,:zͷ|Sb1e w;|`2l=Ý90M̓Ʞ+T2*2vY\w`aUHOQQ_Ic bh@;Wy'wYȸegT="V s.WQ>?::7v/|_g=[ۿWn̈ {%ǜW^zg%6/zE&@`ψndMVͺ7qY`-L0z<0s⹎!3ݲNFCS rX ;&6zð)^ 6wՆY$G`9ox-}(oG?~ _}8i&2w2 H}yqzP/nP Qg2#]ʪfQ/ܷyn?CF̋ک2Q$ɾ/v߫ת,/C8l:@Jɡ4baJ%$xʃd_A%"A q]ًg72\+uM(tj OF0<WArhCIn썿jfՇ.6W"g8ɽ|7/ns0q,!U;xy?6cs{w}{IO4oʍ[늝0|*[S=9y[8>KG8o?SOڻW>@06\cr,dl-}!wp({K ],jYGMC q ұ¡o"OF!^okuYxFOFB3Ӵvh H:z]GBa!{sؗǓ<8bD QKR&h:Nw|*};<oFr؋V W23^C*yWP#,?+'XMqaQPOQ&%ʨOKP&ڠj&n}u42*ܡfZ\17V8&zQnc;AQRWbdT8溑-WlK=EҠz ;&咼(dKΓҘ '<.1]ځYy{p1ؿIcʼm V%۝,MfPp,g>BFv e]liϴpN0a`9{{.[M4k0U%s ?r3֍ |=\_R@DG(9 }?wI| C0g[THhaQ-qr٢إl2OʧQȇewǪ@DI̼m٧i |UT]HIH-̝d7Zd*2%2-|ͬF889%һ4cwFQ"Z#s%$nʹ+ t\V*ƠevK3SQyD8˶ꎓ?U2]IY딍S/ @(_-vVe:1.Mv(h7! & 9TҬPR}BCglZnxfU 7 UmQYp!8E5BXJ%Rӝ$(y[J": BTAK#9P L~ͻRU".w0ъ'Dڴ Uݥ5 ?Dz`rMmULUa#Eb?X~̤H<;ؐ6zz;9#VkX)æ5+[sͲݫMZQc69䦦u{f??YD\NO[+ΖjknˮXɦZ ;2&ɩ7EI*ǩ#Gt3H:nGh0`\45oԖmo Ɓ֢x^!MP* =BXy]nE;2qeaL`r@iIdN:WQRԧu-@ҮJ$=pn!~9/{M`ef%|ZD&lq7kQLKpw9 `EXMGGɳ:_cv,JƗYd(o+5{-Z?]IyiLO%I8C(RNnjڀMK 4˝umH-hp(M9~Pp=UzFd#D/28.y:s\< _؏h )" FKt00b>X~({I^?tN`?8 gDW / ӅG%\tܵS#!3 $޳*ƴã%̪|F I#hzqHǬoeM-s{zqǸ2:a Pt,'Q-vM !l]XJDvhek!f >,9sR]Am. Ac;mWFHt{Wm"5%MV** k4ݘ0->Dd^((0׈T9s$XFKbe~Yڒs>5DUt< >8f6ᘌ}v 3Z qHUwڮɩMȬ[Nž]:{N}1epUڮT\|p-ڲΡBM veۉ:P?$C*F>+L!-VfE+! K [kpki"猶%/;2NaA05܂u3!7*FCy>'?8Jq6v5> "aׯ 3-sliߌ:Itdޱ_^vRkmʦ*oxhNw{,(_Y d>r6K\M̪`J+/#a4(1 w;SyuVh<q6V74I .i5F !2O =|Z ګٳ|9D|UO݅-ihF>D|R[93,>H扤6 1Ñwhj#$R!([dBܴ˦uQWxc)9pZSdE&E'憋LܩS!\bpU'Ķ4EWou4b %8-z_'3MnBd{kP{bh᯻$4Yc[3 >Ч[3xrne;S%ԙCYyMM'%hg![^x@4${zH)o16@4cjW"wAPv%.<*n?zk\~KtsrĎ}g9v+GaP <>ά'qKZ[Ot {-- *R!s[ OhBY!~Zh \# ">Г>Ѯ.Z愤1F|P3sM'ani{q')(+^ߓIK.-326j?fj@TұcFPubFdcްȘ dxKW۷G[ָE5]+(0a:Ѩ:T1Hs@SW]Hq9+bܥ[5+%[F-TDěR1e8X}af跲'Oi:N~;$6uNS&GЫ墋,_KByD!hw,_rtl ?NNHzoO4WDkp wxy# f[6\ofI^jA -#&]UZZ58<Ijn+栋)؂Hyfcɇ[׳ b o&klyicJeNXC|AT>Xj.)u]$&۪IDe<]iLU= lzjNLZ_ }M*¡iEPbOQ3# =!lD.D_PwkʺjzYclZ4-'YFc@/llybfyӦ>S%~yPp֩< Nl9bn,Wfljac8´a_pF!ݼyt|XuYMpJt׈uOTKhl-aLwD?u;OW_2>[ڮ]kU7^ݔ$^r04S`[w{WB.H,}mc (QL櫍Y<[giCju7!."E?/gtMjk ܩݶɹkG!Cloӟ :?ظzy"p /Ww|󪭓_Z&:Iҟ?YJs"]|c'wخَI=Z5OEEcӶY&KӶw] An-Q ba=^ I|=9 ڌiꇦB\4^gAYsGxi}w0,[V dHXg-@͑\=X+$z@P3)׭]d /mxaoC- X^CS(m Q=h+ DJ0gYV!Z޴BјӒ 1+'XZ`QQ`XQ%vh('X0OZ\Z%X0v-N_ QB $u`ҥOI^u*]츇:ƞjA:w-`e`R2W2na*0C̎]!_d䣓RHOpP2]栚هOLU*;\x3=.؊giRby1fwE/C.'3"Req†"IAװQsX׵ys᜞Cue9yLBښ Ϧ2֋GgvW hM*G+M J|( [> )N1no8c'>G]|lMg4nL>i;3X<"e2[Q- yxB'^9nb,Lma6{ ę vϞd=4E}"qNgPڬBJ:b$69aWZ~f=R'G/}i9gJE\l>דenrrQ%Hnr_^'O>9Z!~LJ3A3?A/`rsC/Qƺ{FܜYI<+_qF R.xW{ڶR\y# w&ԖN߽wɭASY!KIlɹ7z=\14 +,-u' qX)2;)8X{ͤ p+p3垎`'IWr>{~ 9}^ۭP[szHխi6-R' /8^8&9Q ?'M*ĝSnOM)aQݽ2Z/94B- YA=c]5ʅ'\h,+f',߽&)HYMIFݧ=!c ̚+ȫNm8 +h\_`|gozkao閾> zfq?Giwg:歖˯:N.`FfURm5R4[Re {I̟10Ғ{&4b6q.l5Gl'cf 3_y!A(}Nc:PK\_M{O5,{Ɗ 0NjLr8h)R+, kX&r'WsF}ɮTRjl}bsj12#`+}h#:Nò$ ,KznZo5XͲ:pzDg"1zL^npu ֵKԴ:-ߢW. BwEle l=)ځ9y xСϦ ւih2I|Ɵ\L|8oJꭹp8w:I#ྌ`Ĥ\y$<E-kbkq;y(Ή<b}3}qD۟*PECdӳv&/ʴ p0o\p$0D0/-dHJoBDɩ 'bZ8,FΫ4ּJti%q?"sՖ^@5GW6ś #&=14-mW4PtsK@M(Q(WDFUTU*V7+)|ĎZU?TB0:qB:r -"$q%آV2,%ԩ٤\ 7RD[biP J|I0*ͷ|Fj?qߢ3n^r SRzth `&Z0mz@I&,kmQZL 8DmEζ6!s2AZ(5p [S6 \?Z ~J;E'}aOu,[v+mKgNB@; 29[zJ.\[K1paNHHp4Sy= Ɔ z7(#dO i08ITGWŗLK = ,)}RX/.T=z0:BOShP}+m!^nސ;<׈†6hHg5Q6bR򶧵-θ{"'TG;/ḙbCW3`^TZbe;׶RFG {XZ-䒱bg'M{~2?Aud:R,H=ap|j4tۤS}GL{ hnVJP8ū"m^Khξ"LRZBRېN>\ {jQ2ClagEؠ+V1܎4A oeڠ$g6jjkzkCU-(az"IՕ:1HB\3&k(Yi73|1gMLd*G:޼>Ԧ!e@c.C(W~*8r4N<6ȵO6Mjq[!i&!%Jڑ|T:C+XZc8A V| UV q>_+M%\k)ktdd z`6ݔUZÞL4ZmJ"ۈR9s9 !9; zW4*%c=[6+.guFڢHޞh [ڏwJ+f$SO$|Q ^8gXj qq1Z>|C@y١^\yǔasb]R*`UCdV0]荵 eaZǴ=?Y_{|(&ݢp$"<@+uQW1x]|!$ۜժ{W$zm{Mke$lX5ef+iOo${"rW-2pt}L pACЌڥX (bsp!&Qh=w.C2m% H,:eKWgppX+\Et,^MB[| k57n&VNpS}/-$jgQmnMEF==CuJȒb 2z1ZО6'US M\M@|m 1vqt޺.Ձgc)6f'gVAɐ9 s~jюό=mgD{/EϚteUwyN*4ծj0pC,*L1$]:.^h{+1[gwImPĘ۪5.ܧD$J..|a'˹|{Ik筷_. NN=j8_MC&P^f" g 8|Ghi;mޡ#goC屠׬L[!"*@duI Y:(nwQ:;kaua*.ч6ɊoP[×pג-a݋PasOJ WO#zi(-ήlrRC˝E,_`>7;^;Wmubӳ#>圵zNa àN.6pIQdm\_"oQ#8ז%wj\-:Y %aףYߺ)8WlViJTLD\@@fׁ;t Y]&@AY#}7YVW]R7QVqFD@FMm&hں݆dEDhd0q͡bQ%7sW&18buCjrD(ʽB>R2c2l·0AMKiٗ>v 5 N7Й&<US89H/XGƈu hٖ3Rlm@]6YW;}9\o+CL#ݨ%Gm#7EUb$"uaj[#*Gz8ry24hψoڱujJ8Կ9n~)*QiH^ 8lpcc[pqpA܆C6f&C O"Z Sw@yHb5S),Isv톤04 [.Y.1K_"# EdJqwf:CSdnLZpwC5z3QJJp(nת{긞0>2j]J ( 7#ԊC3:x֬TB.6\CeEp5z~JN|xùHg /sc/dwLqn KB#)hH<]R^>C9 9x:Xr1 ^hO{ѓ4lFu(G 4NO:ॅC>Ҕ3 /ХX`y$|p`мe;ſ‚5\m?_ Cm?5-psrD6_c<:IV<_jyr||_GM={ڮZ+B cO[[$R$㺭%?ʼf|ʴ_=kwjO%=Eo틃!K7!4n>/gt`Uy?'^oHpo{w]FL2iZ; >O_iӾ~;Ñ(HV)X>=$PK)s 55E/;D:^u4Q_G*\{D1 J{liCwϮ.No.ӗ/WA׷o.8:ׯWoNxIkޓ^Ey/nN/_gqzvۛOӷ?FfzZzwuq[|y\]x{vq-Dk2±"9pq67DZaz$g8B+JgX2jM# W8_T߀t`m *hF$..w(֐"GvB9H}%K[x6M Mռ[0̎wh趦].$sd'B6#JH3a&:wm'm`+&%[k7X|.F*=%)fݚꢂJ . ӄ }#!I_A!X˶]"v֝ZU5mf:ZZP4Ł5 N6+ʜ eet58ˊc8KI5N[w"ovjqVّ"LwDEȽفH%L]F8gx຃/ }-sw̪*<;:y1ksP f֒kKr5+ة[W}Ya D\cHSL2Boibhy0 5x_f6B'HXv 陉V;kOyfeI«  {)K;YMdoMfEx4jA81zp4U<`%Iދ鍍5KWJ(@?Z8Xgi@BZJ4clp΅N!B*VKS؟F*\YVWXVv{͑[y]aR!"P䉮o%%f c:uUR"Xp>myxa9 86d'_VUAd UMh}u ~&&g)SKM_\]\<{c!Cݹ^9nG]ol' = FJB4mez ,`퐍3aj$#JCRI-M4._qUrٟNᩙo." q1y}S$an+[JPrN+5"bS/+ĬUH;;|{#/\9}]Rƫ&Ӑi7B#mV-J)Z5 xn횙rUFB3"!ҡV]}^ɇ)\QtOIxKAQXNh.eF}" |n9vpM%!@;:gnm͘|~;OEJ 73Y"}.ä@9z6!oZL҉H! i7՜h"w=TPp =Hau^i9 ZaC;/ <Ws{7 .o/T>dL)plsRȩDE 1م Mrfdd䌨1qjG p8܁${ ʻ8 4T c+X֌IFոH/BЖJDdFbZ;Y?b+P]qMʉԳVSI3Bvi:-mԠ6;{p{cmaI݇sT D!ߔa\HjEgϕnY_02K4볁ҥ. /L b& cu⥸oRB"eI Ir\,(~oGw-[?Hbe0\\ɘ&o5:Pig7M oi]$H տ]"6iG&":ߥgF)KJg\1'/B& aV|^T"<+V#9`l (u8?^QYh+N?Lr>gx D~98)/8C06}ڰU Q(q1-qٝI-f/WE*E |*d[lBgeeUynnkzq̎֒ajMQ+ʷ!'YYM;wTWg Gi#n\E2Wo`jòQ敓bmyV:{cTH&μu \xHm$缍%jT-hɨpmT/;Ab 5r(e#-vBx72aI;s Xŀgpi t^uT7Zn^߉4&eR;$)qN颔apu r-Xzk-?{IAZ_ >'؉\|}?~s6}ϿI`=ICsnYyr#i86x<)D*E 'RcⰗNM&X'`v(,lhR 9vae\} !zOүljlCDKrjgP![8+"v MBpwN-\UD)I*ֹ{3n|!1aS(ދ⏽2P%֖0ТٸuH(bX "gpOl5l?p梁X2~n{=w`[^CEggڇ)pƻ}ދ^u97lex^j!v?D=nOxkج9^%
    Enjoying the preview?
    Page 1 of 1