ããã¯ãšã³ãéçºè
ã§ããã°ãå¿
ãç¥ãå¿
èŠããããŸã
ã¹ããªã³ã°ããŒã¿ã¢ã¯ã»ã¹æè¡ Part.1
ð£ç¢ºèªããŠãã ããïŒ
ãã®è¬çŸ©ã¯Java Springå®å
šåŸæã·ãªãŒãºã®6çªç®ã®è¬çŸ©ã§ãããšã¬ã¬ã³ããªå
åŒæå¹Žå°ã®æè¡çäºãã ã»ãšã³ãã³ã®ã¹ããªã³ã°å®å
šåŸæããŒãããããæåã«ç¢ºèªããŠãã ããã
â¢ããŒãããããªã³ã¯ïŒ https://www.inflearn.com/roadmaps/373ïŒã¯ãªãã¯ãããšã·ã§ãŒãã«ããïŒ
ããŒã¿ã¢ã¯ã»ã¹æè¡
çŸä»£ã®ã¢ããªã±ãŒã·ã§ã³ã¯ãã»ãšãã©ãWebç°å¢ã§åäœããWebã¢ããªã±ãŒã·ã§ã³ã§ããåçŽã«èãããšãWebã¢ããªã±ãŒã·ã§ã³ã¯å€§ãã3ã€ã®æ©èœãå®è¡ããŸãã
æã
ã¯ãå
ã«Spring MVCã¬ãã¹ã³ãéããŠã¯ã©ã€ã¢ã³ãããã®èŠæ±ãåãåããåŠçããæ¹æ³ãåŠã³ãŸãããä»åã¯ããã®åŸã®ã¹ãããã§ããããžãã¹ããžãã¯ãå®è¡ãããµãŒãã¹ãšããã®çµæãããŒã¿ããŒã¹ã«ä¿æããŠç®¡çãããªããžããªã«ã€ããŠæ·±ãåŠã³ãŸãã
ã¯ã©ã€ã¢ã³ãããã®èŠæ±ãåãåããåŠçããæ©èœã¯Spring MVCã䜿çšããŸããããžãã¹ããžãã¯ãå®è¡ããæ©èœã¯ãçŽç²ãªJavaã³ãŒãã§äœæãããŸããæåŸã«ãå®è¡çµæãããŒã¿ããŒã¹ã«ä¿åããŠç®¡çããæ©èœã¯ãJDBCãJdbcTemplateãMyBatisãJPAãªã©ã®ããŸããŸãªãã¯ãããžãéžæããŠäœ¿çšããŸãããããŠãSpringãæäŸããDBããŒã¿ã¢ã¯ã»ã¹æè¡ã䜿çšãããšããããã®æè¡ãSpringãšçµ±åããŠéåžžã«äŸ¿å©ã«äœ¿çšã§ããŸãã
ããŒã¿ã¢ã¯ã»ã¹æè¡ãåŸæããçç±
ã¢ããªã±ãŒã·ã§ã³ãããŒã¿ããŒã¹ã«ããŒã¿ãä¿æããã³ç®¡çããã«ã¯ãããŸããŸãªããŒã¿ã¢ã¯ã»ã¹æè¡ãåŠç¿ããå¿
èŠããããŸãããã®ãããªããŒã¿ã¢ã¯ã»ã¹æè¡ãåŠç¿ããã®ãé£ãã代衚çãªçç±ã¯ã次ã®3ã€ã§ãã
1. ããŒã¿ããŒã¹ããŒã¹ã®ç¥èã匱ãã
ãã¹ãŠã®ããŒã¿ã¢ã¯ã»ã¹æè¡ã¯ãããŒã¿ããŒã¹ã«ããŒã¿ãä¿æããã³ç®¡çããããã®ãã®ã§ãããããã£ãŠãããŒã¿ããŒã¹ã®åºæ¬çãªçè§£ãå¿
èŠã§ãããã®ã¬ãã¹ã³ãåŠã¶åã«ãããŒã¿ããŒã¹ãšSQLã®åºæ¬ãåŠãã§ãã ããã
2. ããŒã¿ã¢ã¯ã»ã¹æè¡ãå€ãããã
JDBCããå§ãŸããSQLããããŒãšåŒã°ããJdbcTemplateãMyBatisãªã©ã®æè¡ãããORMæè¡ã§ããJPAãSpring Data JPAãQuerydslãªã©ã®ææ°æè¡ãŸã§ãããŸããŸãªããŒã¿ã¢ã¯ã»ã¹æè¡ããããŸããå€çš®å€æ§ãªæè¡ãååšãããããããããã®æè¡ã«ã¯ããã€ãã®é·æãšçæããããã©ã®ç¶æ³ã§ã©ã®æè¡ã䜿çšããã°ããããæç¢ºã«çè§£ããŠäœ¿çšããã®ã¯ç°¡åã§ã¯ãããŸããã
3. ããŒã¿ã¢ã¯ã»ã¹æè¡ã®æŽå²ãå€ãããã
JDBCããå§ãŸã£ãããŒã¿ã¢ã¯ã»ã¹æè¡ã¯ãã§ã«20幎ãè¶
ããŠããŸãããã®éãããŒã¿ã¢ã¯ã»ã¹æè¡ã®é²æ©ã¯ãã¡ãããSpringã¯ãããã®ããŒã¿ã¢ã¯ã»ã¹æè¡ããã䟿å©ã«äœ¿çšããã®ãå©ããããã«å€ãã®æ©èœãéçºãæ¹åããŠããŸãããã ããä»ã¯ããŸãã«ãå€ããèªååãããæœè±¡åãããŠããŸããŸãããç¹ã«ãæè¿éçºãå§ããããã¯ãšã³ãéçºè
ã¯ãããŒã¿ã¢ã¯ã»ã¹æè¡ã䜿çšãããšãã«ãã®ããã«æ©èœãåäœããçç±ãæ£ç¢ºã§ãªãçç±ãç¥ãããåã«äœ¿ãæ¹äžå¿ã«äœ¿çšããããšã«ãªããŸãããªããã®ããã«äœ¿çšããªãã®ã§ããïŒ
è¬çŸ©ã®ç¹åŸŽ
ããªããæžãã®ããç¥ãã°ãæ£ç¢ºã«æžãããšãã§ããŸãã
ãã®è¬çŸ©ã¯20幎åã«æ»ããŸããããŒã¿ã¢ã¯ã»ã¹æè¡ã®å§ãŸãã§ããJDBCãã¯ãããã³ãã¯ã·ã§ã³ãã³ãã¯ã·ã§ã³ããŒã«ãããŒã¿ãœãŒã¹ããã©ã³ã¶ã¯ã·ã§ã³ã®æŠå¿µããããŠSpringããµããŒãããããŒã¿ã¢ã¯ã»ã¹æè¡ãŸã§ããã¹ãŠãã³ãŒãã§çãããšäžç·ã«äœã£ãŠã¿ãªããæ®µéçã«é²ã¿ãŸããéå»ã«äœããã®äžäŸ¿ãªç¹ããããæ¬¡ã®æè¡ãèªçããã©ããªç¹ãæ¹åãããã®ããã®çç±ãæ¢ããŠçŽæ¥ã³ãŒãã£ã³ã°ããªããäžã€ãã€çè§£ã§ããŸãã
ãããŠ2ç·šãéããŠãMyBatisãJPAã®ããã«å®åã§äž»ã«äœ¿çšããããŒã¿ã¢ã¯ã»ã¹æè¡ãäžç·ã«åŠç¿ããããšã«ãªããŸãã
åºæ¬ããã£ãã
ããŒã¿ã¢ã¯ã»ã¹æè¡ãåŠç¿ããã«ã¯ãããŸããŸãªåºæ¬æ©åšãéèŠã§ãããã®ã¬ãã¹ã³ã§ã¯ãå®åã§ã¯å€çšãããŠããŸãããåŠç¿ããã®ã¯ç°¡åã§ã¯ãªããã©ã³ã¶ã¯ã·ã§ã³ãšJavaäŸå€ã®åºæ¬çãªåºç€ã«ã€ããŠã説æããŸãããããŠããã®ããã«åŠç¿ããå
容ãå®åã§ã©ã®ããã«æŽ»çšãããããã³ãŒãã§åŠç¿ã§ããŸãã
è¬çŸ©ç®æš
- ç®æšïŒããã¯ãšã³ãéçºã®éã«å¿
èŠãªããŒã¿ã¢ã¯ã»ã¹æè¡ã宿ããããšãç®æããŸãã
- åºç€ããå®åãŸã§ïŒå®åéçºã®ããã®å
容ãå€ãããããã¯ãšã³ãéçºçµéšã®ãªãéçºè
ãé©å¿ã§ããããã«æ§æããŸããã
- å®åäŸã®äžå¿ïŒå®åããã¹ããªã³ã°ã§ããã¯ãšã³ãã¢ããªã±ãŒã·ã§ã³ãéçºããéã«å¿
èŠãªããŒã¿ã¢ã¯ã»ã¹æè¡ãäŸãéããŠèªç¶ã«åŠç¿ããå®åã§ã®Best PracticeãäŒæããŸãã
- ç°¡æœãïŒå®åã§äœ¿çšããŠããªãå€ãæ©èœã¯å€§èã«é€å€ãããŸãããææ°ã®å®åã«äž»ã«äœ¿çšããå
容ãäžå¿ã«èª¬æããŸãã
ãã®ã¬ãã¹ã³ã§ã¯ãããŒã¿ã¢ã¯ã»ã¹æè¡ã«é¢ãããã¹ãŠã®å
容ã説æããŠããããã§ã¯ãããŸãããããŒã¿ã¢ã¯ã»ã¹æè¡ã«å¿
èŠãªã³ã¢ã¹ã±ã«ãã³ãç«ãŠããã®äžã«å®åã«å¿
èŠãªæè¡ãäžå¿ã«èª¬æããŸãããã®ã¬ãã¹ã³ã®åŸãããªãã¯é äžãªåºç€ç¥èã«åºã¥ããŠSpringããã¯ãšã³ãã¢ããªã±ãŒã·ã§ã³ãèªä¿¡ãæã£ãŠéçºããããšãã§ããŸãã
Spring DBè¬çŸ©ã®æ§æ
ã¹ããªã³ã°DBè¬çŸ©ã¯1ã2ç·šã«åãããŠããŸãã
ãã®ã¬ãã¹ã³ã¯Spring DB 1ç·š - ããŒã¿ã¢ã¯ã»ã¹ã®äžå¿çãªååã§ãã
Spring DB Part 1 - ããŒã¿ã¢ã¯ã»ã¹ã³ã¢ååçŸåšã®è¬çŸ©
ããŒã¿ã¢ã¯ã»ã¹æè¡ã®éèŠãªæŠå¿µãåºããã¹ããªã³ã°ãæäŸããããŒã¿ã¢ã¯ã»ã¹æè¡ã®åºæ¬åçãçè§£ããŸãã
ãŸããSpringãªãã§çŽç²ãªããŒã¿ã¢ã¯ã»ã¹æè¡ã§ããJDBCãã³ãã¯ã·ã§ã³ãã³ãã¯ã·ã§ã³ããŒã«ãããŒã¿ãœãŒã¹ããã©ã³ã¶ã¯ã·ã§ã³ãªã©ã®åºç€æè¡ã®éèŠãªæŠå¿µããŸãåŠç¿ããŸãããã®ããã«åºç€ãæŽããåŸãSpring Data Access Technologyããããã®æ©èœãã©ãã ã䟿å©ã«äœ¿çšã§ããããæ®µéçã«åŠã³ãŸãã
1ç·šã®åºç€ã®äžã«æ§ã
ãªæŽ»çšæè¡ãåŠç¿ããŸãã
JdbcTemplateãMyBatisãªã©ã®SQLããããŒæè¡ãããJPAãSpring Data JPAãQuerydslãªã©ã®ææ°ã®ORMæè¡ãåŠç¿ããåæè¡ã®é·æãšçæãçè§£ããŸãããããŠãããŒã¿ã¢ã¯ã»ã¹å±€ã®ãã¹ãæ¹æ³ãšSpringãã©ã³ã¶ã¯ã·ã§ã³ã®ããŸããŸãªæ©èœãæ·±ãåŠç¿ããŸãã
ç¥èå
±æè
ã®
äžèš
ããã¯ãšã³ãéçºè
ã¯ãMVCãšDBã¢ã¯ã»ã¹æè¡ãšãã2ã€ã®å€§ããªè»žã宿ããå¿
èŠããããŸãã 2ã€ã®è»žã宿ãããçŽ æŽãããããã¯ãšã³ãéçºè
ã«æé·ã§ããããã«ãç§ãé 匵ããŸããããããšãããããŸãã
è¬çŸ©é
é¢é£ããŒãããã