ÀÚ¹Ù ORM Ç¥ÁØ JPA ÇÁ·Î±×·¡¹Ö
- ÀúÀÚ<±è¿µÇÑ> Àú
- ÃâÆǻ翡ÀÌÄÜÃâÆÇ»ç
- ÃâÆÇÀÏ2020-06-01
- µî·ÏÀÏ2022-06-21
º¸À¯ 1, ´ëÃâ 0,
¿¹¾à 0, ´©Àû´ëÃâ 0, ´©Àû¿¹¾à 0
Ã¥¼Ò°³
ÀÚ¹Ù ORM Ç¥ÁØ JPA´Â SQL ÀÛ¼º ¾øÀÌ °´Ã¼¸¦ µ¥ÀÌÅͺ£À̽º¿¡ Á÷Á¢ ÀúÀåÇÒ ¼ö ÀÖ°Ô µµ¿ÍÁÖ°í, °´Ã¼¿Í °ü°èÇü µ¥ÀÌÅͺ£À̽ºÀÇ Â÷À̵µ Áß°£¿¡¼ ÇØ°áÇØÁØ´Ù. ÀÌ Ã¥Àº JPA ±âÃÊ À̷аú ÇÙ½É ¿ø¸®, ±×¸®°í ½Ç¹«¿¡ ÇÊ¿äÇÑ ¼º´É ÃÖÀûÈ ¹æ¹ý±îÁö JPA¿¡ ´ëÇÑ ¸ðµç °ÍÀ» ´Ù·é´Ù. ¶ÇÇÑ, ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©¿Í JPA¸¦ ÇÔ²² »ç¿ëÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÏ°í, ½ºÇÁ¸µ µ¥ÀÌÅÍ JPA, QueryDSL °°Àº Çõ½ÅÀûÀÎ ¿ÀÇ ¼Ò½º¸¦ È°¿ëÇؼ ÀÚ¹Ù À¥ ¾ÖÇø®ÄÉÀ̼ÇÀ» È¿°úÀûÀ¸·Î °³¹ßÇÏ´Â ¹æ¹ýÀ» ´Ù·é´Ù.´ÙÀ½ ¸µÅ©¿¡¼ ¿Â¶óÀÎ °ÀǸ¦ ¼ö°ÇÒ ¼ö ÀÖ´Ù.- ±âº»Æí: https://www.inflearn.com/course/ORM-JPA-Basic- È°¿ëÆí 1: https://www.inflearn.com/course/½ºÇÁ¸µºÎÆ®-JPA-È°¿ë-1- È°¿ëÆí 2: Áغñ ÁßÀÔ´Ï´Ù.
ÀúÀÚ¼Ò°³
SI¿¡¼ ´Ù¾çÇÑ ÇÁ·ÎÁ§Æ®¸¦ ¼öÇàÇÏ°í, J2EE °»ç¿Í ´ÙÀ½ Ä¿¹Â´ÏÄÉÀ̼Ç, SK Ç÷¡´ÖÀ» °ÅÃÄ ÇöÀç ¿ì¾ÆÇÑÇüÁ¦µé¿¡¼ °³¹ß ÆÀÀåÀ¸·Î ±Ù¹«ÇÏ°í ÀÖ´Ù. µµ¸ÞÀÎ ÁÖµµ ¼³°è¿¡ °ü½ÉÀÌ ¸¹À¸¸ç, ²÷ÀÓ¾øÀÌ °øºÎÇÏ°í ´õ ³ªÀº Äڵ带 ÀÛ¼ºÇÏ´Â °³¹ßÀÚ°¡ µÇ·Á°í ³ë·Â ÁßÀÌ´Ù.
¸ñÂ÷
1Àå. JPA ¼Ò°³1.1 SQL°ú ¹®Á¦Á¡1.1.1 ¹Ýº¹, ¹Ýº¹ ±×¸®°í ¹Ýº¹1.1.2 SQL¿¡ ÀÇÁ¸ÀûÀÎ °³¹ß1.1.3 JPA¿Í ¹®Á¦ ÇØ°á1.2 Æз¯´ÙÀÓÀÇ ºÒÀÏÄ¡1.2.1 »ó¼Ó1.2.2 ¿¬°ü°ü°è1.2.3 °´Ã¼ ±×·¡ÇÁ Ž»ö1.2.4 ºñ±³1.2.5 Á¤¸®1.3 JPA¶õ ¹«¾ùÀϱî?1.3.1 JPA ¼Ò°³1.3.2 ¿Ö JPA¸¦ »ç¿ëÇØ¾ß Çϴ°¡?1.4 Á¤¸®2Àå. JPA ½ÃÀÛ2.1 ÀÌŬ¸³½º ¼³Ä¡¿Í ÇÁ·ÎÁ§Æ® ºÒ·¯¿À±â2.2 H2 µ¥ÀÌÅͺ£À̽º ¼³Ä¡2.3 ¶óÀ̺귯¸®¿Í ÇÁ·ÎÁ§Æ® ±¸Á¶2.3.1 ¸ÞÀ̺ì°ú »ç¿ë ¶óÀ̺귯¸® °ü¸®2.4 °´Ã¼ ¸ÅÇÎ ½ÃÀÛ2.5 persistence.xml ¼³Á¤2.5.1 µ¥ÀÌÅͺ£À̽º ¹æ¾ð2.6 ¾ÖÇø®ÄÉÀÌ¼Ç °³¹ß2.6.1 ¿£Æ¼Æ¼ ¸Å´ÏÀú ¼³Á¤2.6.2 Æ®·£Àè¼Ç °ü¸®2.6.3 ºñÁî´Ï½º ·ÎÁ÷2.6.4 JPQL2.7 Á¤¸®3Àå. ¿µ¼Ó¼º °ü¸®3.1 ¿£Æ¼Æ¼ ¸Å´ÏÀú ÆÑÅ丮¿Í ¿£Æ¼Æ¼ ¸Å´ÏÀú3.2 ¿µ¼Ó¼º ÄÁÅؽºÆ®¶õ?3.3 ¿£Æ¼Æ¼ÀÇ »ý¸íÁÖ±â3.4 ¿µ¼Ó¼º ÄÁÅؽºÆ®ÀÇ Æ¯Â¡3.4.1 ¿£Æ¼Æ¼ Á¶È¸3.4.2 ¿£Æ¼Æ¼ µî·Ï3.4.3 ¿£Æ¼Æ¼ ¼öÁ¤3.4.4 ¿£Æ¼Æ¼ »èÁ¦3.5 Ç÷¯½Ã3.5.1 Ç÷¯½Ã ¸ðµå ¿É¼Ç3.6 ÁØ¿µ¼Ó3.6.1 ¿£Æ¼Æ¼¸¦ ÁØ¿µ¼Ó »óÅ·ΠÀüȯ: detach( )3.6.2 ¿µ¼Ó¼º ÄÁÅؽºÆ® ÃʱâÈ: clear( )3.6.3 ¿µ¼Ó¼º ÄÁÅؽºÆ® Á¾·á: close( )3.6.4 ÁØ¿µ¼Ó »óÅÂÀÇ Æ¯Â¡3.6.5 º´ÇÕ: merge( )3.7 Á¤¸®4Àå. ¿£Æ¼Æ¼ ¸ÅÇÎ4.1 @Entity4.2 @Table4.3 ´Ù¾çÇÑ ¸ÅÇÎ »ç¿ë4.4 µ¥ÀÌÅͺ£À̽º ½ºÅ°¸¶ ÀÚµ¿ »ý¼º4.5 DDL »ý¼º ±â´É4.6 ±âº» Å° ¸ÅÇÎ4.6.1 ±âº» Å° Á÷Á¢ ÇÒ´ç Àü·«4.6.2 IDENTITY Àü·«4.6.3 SEQUENCE Àü·«4.6.4 TABLE Àü·«4.6.5 AUTO Àü·«4.6.6 ±âº» Å° ¸ÅÇÎ Á¤¸®4.7 Çʵå¿Í Ä÷³ ¸ÅÇÎ: ·¹ÆÛ·±½º4.7.1 @Column4.7.2 @Enumerated4.7.3 @Temporal4.7.4 @Lob4.7.5 @Transient4.7.6 @Access4.8 Á¤¸®½ÇÀü ¿¹Á¦ 1. ¿ä±¸»çÇ× ºÐ¼®°ú ±âº» ¸ÅÇο䱸»çÇ× ºÐ¼®µµ¸ÞÀÎ ¸ðµ¨ ºÐ¼®Å×ÀÌºí ¼³°è¿£Æ¼Æ¼ ¼³°è¿Í ¸ÅÇε¥ÀÌÅÍ Á᫐ ¼³°èÀÇ ¹®Á¦Á¡5Àå. ¿¬°ü°ü°è ¸ÅÇÎ ±âÃÊ5.1 ´Ü¹æÇâ ¿¬°ü°ü°è5.1.1 ¼ø¼öÇÑ °´Ã¼ ¿¬°ü°ü°è5.1.2 Å×ÀÌºí ¿¬°ü°ü°è5.1.3 °´Ã¼ °ü°è ¸ÅÇÎ5.1.4 @JoinColumn5.1.5 @ManyToOne5.2 ¿¬°ü°ü°è »ç¿ë5.2.1 ÀúÀå5.2.2 Á¶È¸5.2.3 ¼öÁ¤5.2.4 ¿¬°ü°ü°è Á¦°Å5.2.5 ¿¬°üµÈ ¿£Æ¼Æ¼ »èÁ¦5.3 ¾ç¹æÇâ ¿¬°ü°ü°è5.3.1 ¾ç¹æÇâ ¿¬°ü°ü°è ¸ÅÇÎ5.3.2 ÀÏ´ë´Ù Ä÷º¼Ç Á¶È¸5.4 ¿¬°ü°ü°èÀÇ ÁÖÀÎ5.4.1 ¾ç¹æÇâ ¸ÅÇÎÀÇ ±ÔÄ¢: ¿¬°ü°ü°èÀÇ ÁÖÀÎ5.4.2 ¿¬°ü°ü°èÀÇ ÁÖÀÎÀº ¿Ü·¡ Å°°¡ ÀÖ´Â °÷5.5 ¾ç¹æÇâ ¿¬°ü°ü°è ÀúÀå5.6 ¾ç¹æÇâ ¿¬°ü°ü°èÀÇ ÁÖÀÇÁ¡5.6.1 ¼ø¼öÇÑ °´Ã¼±îÁö °í·ÁÇÑ ¾ç¹æÇâ ¿¬°ü°ü°è5.6.2 ¿¬°ü°ü°è ÆíÀÇ ¸Þ¼Òµå5.6.3 ¿¬°ü°ü°è ÆíÀÇ ¸Þ¼Òµå ÀÛ¼º ½Ã ÁÖÀÇ»çÇ×5.7 Á¤¸®½ÇÀü ¿¹Á¦ 2. ¿¬°ü°ü°è ¸ÅÇÎ ½ÃÀÛÀÏ´ë´Ù, ´Ù´ëÀÏ ¿¬°ü°ü°è ¸ÅÇΰ´Ã¼ ±×·¡ÇÁ Ž»ö6Àå. ´Ù¾çÇÑ ¿¬°ü°ü°è ¸ÅÇÎ6.1 ´Ù´ëÀÏ6.1.1 ´Ù´ëÀÏ ´Ü¹æÇâ [N:1]6.1.2 ´Ù´ëÀÏ ¾ç¹æÇâ [N:1, 1:N]6.2 ÀÏ´ë´Ù6.2.1 ÀÏ´ë´Ù ´Ü¹æÇâ [1:N]6.2.2 ÀÏ´ë´Ù ¾ç¹æÇâ [1:N, N:1]6.3 ÀÏ´ëÀÏ [1:1]6.3.1 ÁÖ Å×ÀÌºí¿¡ ¿Ü·¡ Å°6.3.2 ´ë»ó Å×ÀÌºí¿¡ ¿Ü·¡ Å°6.4 ´Ù´ë´Ù [N:N]6.4.1 ´Ù´ë´Ù: ´Ü¹æÇâ6.4.2 ´Ù´ë´Ù: ¾ç¹æÇâ6.4.3 ´Ù´ë´Ù: ¸ÅÇÎÀÇ ÇÑ°è¿Í ±Øº¹, ¿¬°á ¿£Æ¼Æ¼ »ç¿ë6.4.4 ´Ù´ë´Ù: »õ·Î¿î ±âº» Å° »ç¿ë6.4.5 ´Ù´ë´Ù ¿¬°ü°ü°è Á¤¸®6.5 Á¤¸®½ÇÀü ¿¹Á¦ 3. ´Ù¾çÇÑ ¿¬°ü°ü°è ¸ÅÇÎÀÏ´ëÀÏ ¸ÅÇδٴë´Ù ¸ÅÇÎ7Àå. °í±Þ ¸ÅÇÎ7.1 »ó¼Ó °ü°è ¸ÅÇÎ7.1.1 Á¶ÀÎ Àü·«7.1.2 ´ÜÀÏ Å×À̺í Àü·«7.1.3 ±¸Çö Ŭ·¡½º¸¶´Ù Å×À̺í Àü·«7.2 @MappedSuperclass7.3 º¹ÇÕ Å°¿Í ½Äº° °ü°è ¸ÅÇÎ7.3.1 ½Äº° °ü°è vs ºñ½Äº° °ü°è7.3.2 º¹ÇÕ Å°: ºñ½Äº° °ü°è ¸ÅÇÎ7.3.3 º¹ÇÕ Å°: ½Äº° °ü°è ¸ÅÇÎ7.3.4 ºñ½Äº° °ü°è·Î ±¸Çö7.3.5 ÀÏ´ëÀÏ ½Äº° °ü°è7.3.6 ½Äº°, ºñ½Äº° °ü°èÀÇ Àå´ÜÁ¡7.4 Á¶ÀÎÅ×À̺í7.4.1 ÀÏ´ëÀÏ Á¶ÀÎÅ×À̺í7.4.2 ÀÏ´ë´Ù Á¶ÀÎÅ×À̺í7.4.3 ´Ù´ëÀÏ Á¶ÀÎÅ×À̺í7.4.4 ´Ù´ë´Ù Á¶ÀÎÅ×À̺í7.5 ¿£Æ¼Æ¼ Çϳª¿¡ ¿©·¯ Å×ÀÌºí ¸ÅÇÎ7.6 Á¤¸®½ÇÀü ¿¹Á¦ 4. »ó¼Ó °ü°è ¸ÅÇλó¼Ó °ü°è ¸ÅÇÎ@MappedSuperclass ¸ÅÇÎ8Àå. ÇÁ·Ï½Ã¿Í ¿¬°ü°ü°è °ü¸®8.1 ÇÁ·Ï½Ã8.1.1 ÇÁ·Ï½Ã ±âÃÊ8.1.2 ÇÁ·Ï½Ã¿Í ½Äº°ÀÚ8.1.3 ÇÁ·Ï½Ã È®ÀÎ8.2 Áï½Ã ·Îµù°ú Áö¿¬ ·Îµù8.2.1 Áï½Ã ·Îµù8.2.2 Áö¿¬ ·Îµù8.2.3 Áï½Ã ·Îµù, Áö¿¬ ·Îµù Á¤¸®8.3 Áö¿¬ ·Îµù È°¿ë8.3.1 ÇÁ·Ï½Ã¿Í Ä÷º¼Ç ·¡ÆÛ8.3.2 JPA ±âº» ÆäÄ¡ Àü·«8.3.3 Ä÷º¼Ç¿¡ FetchType.EAGER »ç¿ë ½Ã ÁÖÀÇÁ¡8.4 ¿µ¼Ó¼º ÀüÀÌ - CASCADE8.4.1 ¿µ¼Ó¼º ÀüÀÌ: ÀúÀå8.4.2 ¿µ¼Ó¼º ÀüÀÌ: »èÁ¦8.4.3 CASCADEÀÇ Á¾·ù8.5 °í¾Æ °´Ã¼8.6 ¿µ¼Ó¼º ÀüÀÌ + °í¾Æ °´Ã¼, »ý¸íÁÖ±â8.7 Á¤¸®½ÇÀü ¿¹Á¦ 5. ¿¬°ü°ü°è °ü¸®±Û·Î¹ú ÆäÄ¡ Àü·« ¼³Á¤¿µ¼Ó¼º ÀüÀÌ ¼³Á¤9Àå. °ª ŸÀÔ9.1 ±âº»°ª ŸÀÔ9.2 ÀÓº£µðµå ŸÀÔ(º¹ÇÕ °ª ŸÀÔ)9.2.1 ÀÓº£µðµå ŸÀÔ°ú Å×ÀÌºí ¸ÅÇÎ9.2.2 ÀÓº£µðµå ŸÀÔ°ú ¿¬°ü°ü°è9.2.3 @AttributeOverride: ¼Ó¼º ÀçÁ¤ÀÇ9.2.4 ÀÓº£µðµå ŸÀÔ°ú null9.3. °ª ŸÀÔ°ú ºÒº¯ °´Ã¼9.3.1 °ª ŸÀÔ °øÀ¯ ÂüÁ¶9.3.2 °ª ŸÀÔ º¹»ç9.3.3 ºÒº¯ °´Ã¼9.4. °ª ŸÀÔÀÇ ºñ±³9.5. °ª ŸÀÔ Ä÷º¼Ç9.5.1 °ª ŸÀÔ Ä÷º¼Ç »ç¿ë9.5.2 °ª ŸÀÔ Ä÷º¼ÇÀÇ Á¦¾à»çÇ×9.6 Á¤¸®½ÇÀü ¿¹Á¦ 6. °ª ŸÀÔ ¸ÅÇνÇÀü ¿¹Á¦ Á¤¸®10Àå. °´Ã¼ÁöÇâ Äõ¸® ¾ð¾î10.1 °´Ã¼ÁöÇâ Äõ¸® ¼Ò°³10.1.1 JPQL ¼Ò°³10.1.2 Criteria Äõ¸® ¼Ò°³10.1.3 QueryDSL ¼Ò°³10.1.4 ³×ÀÌƼºê SQL ¼Ò°³10.1.5 JDBC Á÷Á¢ »ç¿ë, ¸¶À̹ÙƼ½º °°Àº SQL ¸ÅÆÛ ÇÁ·¹ÀÓ¿öÅ© »ç¿ë10.2 JPQL10.2.1 ±âº» ¹®¹ý°ú Äõ¸® API10.2.2 ÆĶó¹ÌÅÍ ¹ÙÀεù10.2.3 ÇÁ·ÎÁ§¼Ç10.2.4 ÆäÀÌ¡ API10.2.5 ÁýÇÕ°ú Á¤·Ä10.2.6 JPQL Á¶ÀÎ10.2.7 ÆäÄ¡ Á¶ÀÎ10.2.8 °æ·Î Ç¥Çö½Ä10.2.9 ¼ºê Äõ¸®10.2.10 Á¶°Ç½Ä10.2.11 ´ÙÇü¼º Äõ¸®10.2.12 »ç¿ëÀÚ Á¤ÀÇ ÇÔ¼ö È£Ãâ(JPA 2.1)10.2.13 ±âŸ Á¤¸®10.2.14 ¿£Æ¼Æ¼ Á÷Á¢ »ç¿ë10.2.15 Named Äõ¸®: Á¤Àû Äõ¸®10.3 Criteria10.3.1 Criteria ±âÃÊ10.3.2 Criteria Äõ¸® »ý¼º10.3.3 Á¶È¸10.3.4 ÁýÇÕ10.3.5 Á¤·Ä10.3.6 Á¶ÀÎ10.3.7 ¼ºê Äõ¸®10.3.8 IN ½Ä10.3.9 CASE ½Ä10.3.10 ÆĶó¹ÌÅÍ Á¤ÀÇ10.3.11 ³×ÀÌƼºê ÇÔ¼ö È£Ãâ10.3.12 µ¿Àû Äõ¸®10.3.13 ÇÔ¼ö Á¤¸®10.3.14 Criteria ¸ÞŸ ¸ðµ¨ API10.4 QueryDSL10.4.1 QueryDSL ¼³Á¤10.4.2 ½ÃÀÛ10.4.3 °Ë»ö Á¶°Ç Äõ¸®10.4.4 °á°ú Á¶È¸10.4.5 ÆäÀÌ¡°ú Á¤·Ä10.4.6 ±×·ì10.4.7 Á¶ÀÎ10.4.8 ¼ºê Äõ¸®10.4.9 ÇÁ·ÎÁ§¼Ç°ú °á°ú ¹Ýȯ10.4.10 ¼öÁ¤, »èÁ¦ ¹èÄ¡ Äõ¸®10.4.11 µ¿Àû Äõ¸®10.4.12 ¸Þ¼Òµå À§ÀÓ10.4.13 QueryDSL Á¤¸®10.5 ³×ÀÌƼºê SQL10.5.1 ³×ÀÌƼºê SQL »ç¿ë10.5.2 Named ³×ÀÌƼºê SQL10.5.3 ³×ÀÌƼºê SQL XML ¿¡ Á¤ÀÇ10.5.4 ³×ÀÌƼºê SQL Á¤¸®10.5.5 ½ºÅä¾îµå ÇÁ·Î½ÃÀú(JPA 2.1)10.6 °´Ã¼ÁöÇâ Äõ¸® ½ÉÈ10.6.1 ¹úÅ© ¿¬»ê10.6.2 ¿µ¼Ó¼º ÄÁÅؽºÆ®¿Í JPQL10.6.3 JPQL°ú Ç÷¯½Ã ¸ðµå10.7 Á¤¸®11Àå. À¥ ¾ÖÇø®ÄÉÀÌ¼Ç Á¦ÀÛ11.1 ÇÁ·ÎÁ§Æ® ȯ°æ¼³Á¤11.1.1 ÇÁ·ÎÁ§Æ® ±¸Á¶11.1.2 ¸ÞÀ̺ì°ú »ç¿ë ¶óÀ̺귯¸® °ü¸®11.1.3 ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ© ¼³Á¤11.2 µµ¸ÞÀÎ ¸ðµ¨°ú Å×ÀÌºí ¼³°è11.2.1 ¿ä±¸»çÇ× ºÐ¼®11.2.2 µµ¸ÞÀÎ ¸ðµ¨ ¼³°è11.2.3 Å×ÀÌºí ¼³°è11.2.4 ¿¬°ü°ü°è Á¤¸®11.2.5 ¿£Æ¼Æ¼ Ŭ·¡½º11.3 ¾ÖÇø®ÄÉÀÌ¼Ç ±¸Çö11.3.1 °³¹ß ¹æ¹ý11.3.2 ȸ¿ø ±â´É11.3.3 »óÇ° ±â´É11.3.4 ÁÖ¹® ±â´É11.3.5 À¥ °èÃþ ±¸Çö11.4 Á¤¸®12Àå. ½ºÇÁ¸µ µ¥ÀÌÅÍ JPA12.1 ½ºÇÁ¸µ µ¥ÀÌÅÍ JPA ¼Ò°³12.1.1 ½ºÇÁ¸µ µ¥ÀÌÅÍ ÇÁ·ÎÁ§Æ®12.2 ½ºÇÁ¸µ µ¥ÀÌÅÍ JPA ¼³Á¤12.3 °øÅë ÀÎÅÍÆäÀ̽º ±â´É12.4 Äõ¸® ¸Þ¼Òµå ±â´É12.4.1 ¸Þ¼Òµå À̸§À¸·Î Äõ¸® »ý¼º12.4.2 JPA NamedQuery12.4.3 @Query, ¸®ÆÄÁöÅ丮 ¸Þ¼Òµå¿¡ Äõ¸® Á¤ÀÇ12.4.4 ÆĶó¹ÌÅÍ ¹ÙÀεù12.4.5 ¹úÅ©¼º ¼öÁ¤ Äõ¸®12.4.6 ¹Ýȯ ŸÀÔ12.4.7 ÆäÀÌ¡°ú Á¤·Ä12.4.8 ÈùÆ®12.4.9 Lock12.5 Specifications(¸í¼¼)12.6 »ç¿ëÀÚ Á¤ÀÇ ¸®ÆÄÁöÅ丮 ±¸Çö12.7 Web È®Àå12.7.1 ¼³Á¤12.7.2 µµ¸ÞÀΠŬ·¡½º ÄÁ¹öÅÍ ±â´É12.7.3 ÆäÀÌ¡°ú Á¤·Ä ±â´É12.8 ½ºÇÁ¸µ µ¥ÀÌÅÍ JPA°¡ »ç¿ëÇÏ´Â ±¸Çöü12.9 JPA ¼¥¿¡ Àû¿ë12.9.1 ȯ°æ ¼³Á¤12.9.2 ¸®ÆÄÁöÅ丮 ¸®ÆÑÅ丵12.9.3 ¸í¼¼ Àû¿ë12.10 ½ºÇÁ¸µ µ¥ÀÌÅÍ JPA¿Í QueryDSL ÅëÇÕ12.10.1 QueryDslPredicateExecutor »ç¿ë12.10.3 QueryDslRepositorySupport »ç¿ë12.11 Á¤¸®13Àå. À¥ ¾ÖÇø®ÄÉÀ̼ǰú ¿µ¼Ó¼º °ü¸®13.1 Æ®·£Àè¼Ç ¹üÀ§ÀÇ ¿µ¼Ó¼º ÄÁÅؽºÆ®13.1.1 ½ºÇÁ¸µ ÄÁÅ×À̳ÊÀÇ ±âº» Àü·«13.2 ÁØ¿µ¼Ó »óÅÂ¿Í Áö¿¬ ·Îµù13.2.1 ±Û·Î¹ú ÆäÄ¡ Àü·« ¼öÁ¤13.2.2 JPQL ÆäÄ¡ Á¶ÀÎ13.2.3 °Á¦·Î ÃʱâÈ13.2.4 FACADE °èÃþ Ãß°¡13.2.5 ÁØ¿µ¼Ó »óÅÂ¿Í Áö¿¬ ·ÎµùÀÇ ¹®Á¦Á¡13.3 OSIV13.3.1 °ú°Å OSIV: ¿äû ´ç Æ®·£Àè¼Ç13.3.2 ½ºÇÁ¸µ OSIV: ºñÁî´Ï½º °èÃþ Æ®·£Àè¼Ç13.3.3 OSIV Á¤¸®13.4 ³Ê¹« ¾ö°ÝÇÑ °èÃþ13.5 Á¤¸®14Àå. Ä÷º¼Ç°ú ºÎ°¡ ±â´É14.1 Ä÷º¼Ç14.1.1 JPA¿Í Ä÷º¼Ç14.1.2 Collection, List14.1.3 Set14.1.4 List + @OrderColumn14.1.5 @OrderBy14.2 @Converter14.2.1 ±Û·Î¹ú ¼³Á¤14.3 ¸®½º³Ê14.3.1 À̺¥Æ® Á¾·ù14.3.2 À̺¥Æ® Àû¿ë À§Ä¡14.4 ¿£Æ¼Æ¼ ±×·¡ÇÁ14.4.1 Named ¿£Æ¼Æ¼ ±×·¡ÇÁ14.4.2 em.find( )¿¡¼ ¿£Æ¼Æ¼ ±×·¡ÇÁ »ç¿ë14.4.3 subgraph14.4.4 JPQL¿¡¼ ¿£Æ¼Æ¼ ±×·¡ÇÁ »ç¿ë14.4.5 µ¿Àû ¿£Æ¼Æ¼ ±×·¡ÇÁ14.4.6 ¿£Æ¼Æ¼ ±×·¡ÇÁ Á¤¸®14.5 Á¤¸®15Àå. °í±Þ ÁÖÁ¦¿Í ¼º´É ÃÖÀûÈ15.1 ¿¹¿Ü ó¸®15.1.1 JPA Ç¥ÁØ ¿¹¿Ü Á¤¸®15.1.2 ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©ÀÇ JPA ¿¹¿Ü º¯È¯15.1.3 ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿öÅ©¿¡ JPA ¿¹¿Ü º¯È¯±â Àû¿ë15.1.4 Æ®·£Àè¼Ç ·Ñ¹é ½Ã ÁÖÀÇ»çÇ×15.2 ¿£Æ¼Æ¼ ºñ±³15.2.1 ¿µ¼Ó¼º ÄÁÅؽºÆ®°¡ °°À» ¶§ ¿£Æ¼Æ¼ ºñ±³15.2.2 ¿µ¼Ó¼º ÄÁÅؽºÆ®°¡ ´Ù¸¦ ¶§ ¿£Æ¼Æ¼ ºñ±³15.3 ÇÁ·Ï½Ã ½ÉÈ ÁÖÁ¦15.3.1 ¿µ¼Ó¼º ÄÁÅؽºÆ®¿Í ÇÁ·Ï½Ã15.3.2 ÇÁ·Ï½Ã ŸÀÔ ºñ±³15.3.3 ÇÁ·Ï½Ã µ¿µî¼º ºñ±³15.3.4 »ó¼Ó°ü°è¿Í ÇÁ·Ï½Ã15.4 ¼º´É ÃÖÀûÈ15.4.1 N+1 ¹®Á¦15.4.2 Àбâ Àü¿ë Äõ¸®ÀÇ ¼º´É ÃÖÀûÈ15.4.3 ¹èÄ¡ ó¸®15.4.4 SQL Äõ¸® ÈùÆ® »ç¿ë15.4.5 Æ®·£Àè¼ÇÀ» Áö¿øÇÏ´Â ¾²±â Áö¿¬°ú ¼º´É ÃÖÀûÈ15.5 Á¤¸®16Àå. Æ®·£Àè¼Ç°ú ¶ô, 2Â÷ ij½Ã16.1 Æ®·£Àè¼Ç°ú ¶ô16.1.1 Æ®·£Àè¼Ç°ú °Ý¸® ¼öÁØ16.1.2 ³«°üÀû ¶ô°ú ºñ°üÀû ¶ô ±âÃÊ16.1.3 @Version16.1.4 JPA ¶ô »ç¿ë16.1.5 JPA ³«°üÀû ¶ô16.1.6 JPA ºñ°üÀû ¶ô16.1.7 ºñ°üÀû ¶ô°ú ŸÀӾƿô16.2 2Â÷ ij½Ã16.2.1 1Â÷ ij½Ã¿Í 2Â÷ ij½Ã16.2.2 JPA 2Â÷ ij½Ã ±â´É16.2.3 ÇÏÀ̹ö³×ÀÌÆ®¿Í EHCACHE Àû¿ë16.3 Á¤¸®
ÇÑÁÙ ¼Æò