
ãã¹ããªã³ã°ããŒã¿ãŒã®æŒæµèš #1ãSpring BootæŽ10å¹Žè¶ ã®SEãä»ããå€ã®äžçãæ°ã«ãªãå§ãã
ã¯ããã«ïŒ10幎以äžäœ¿ãç¶ããŠããSpring Boot
ã·ã¹ãã éçºã«æºãã£ãŠ20幎以äžããã®ãã¡10幎以äžãSpring Bootã䜿ã£ãŠããŸããã
éçºã®ã¹ããŒãã倧ããå€ããŠããããé Œããçžæ£ã§ããä»ã§ãããã®ä¿¡é Œã¯å€ãããŸããã
ããã©ããµãšæããŸããã
ããä»ãäœããªããšããããæ°ããã·ã¹ãã ãäœããªããç§ã¯ããäžåºŠSpring Bootãéžã¶ã®ã ãããã
äœ¿ãæ £ããŠããããããšããçç±ããã£ããèã«çœ®ããŠèããŠã¿ãããã»ãã®æè¡ã«ãè§Šããããã§ãèªåã®éžæè¢ãèŠçŽããŠã¿ãããªããŸããã
ãã¹ããªã³ã°ããŒã¿ãŒã®æŒæµèšãã¯ããããªSEã®æè¡æ¢çŽ¢ã®èšé²ã§ããååã¯ãåºçºç¹ãšãªã£ããããŸã§ã®çµéšãšããããã確ããããããšãæžããŠã¿ãŸãã
Spring Bootç»å Žåã®Javaéçº
Spring Bootã䜿ãåã¯ãStruts 1ãStruts 2ãSpring FrameworkãJava EEãªã©ã§éçºããŠããŸããã
åœæã®éçºãæ¯ãè¿ããšãæ¥åã®åŠçãæžãåã«ãèšå®ãå®è¡ç°å¢ãæŽããäœæ¥ããããŸãããXMLã®èšå®ãã©ã€ãã©ãªã®çµã¿åãããªã©ãã¢ããªã±ãŒã·ã§ã³ãåããããã®æºåãä»äºã®äžéšã§ããã
ãã¡ãããããã§èº«ã«ã€ããç¥èã¯ããã®åŸã®éçºã«ãã€ãªãã£ãŠããŸãããã ãäœãããæ©èœã«ãã©ãçããŸã§ã®éã®ãã¯ãããå°ãçããªããªããã®ããšæã£ãŠããŸããã
Spring Bootãšã®åºäŒãã¯è¡æã ã£ã
Spring Bootã䜿ãå§ããŠåŒ·ãæããã®ã¯ããéçºã®ã¹ããŒããæ Œæ®µã«äžãã£ãããšããããšã§ããã
XMLã§æžããŠããèšå®ãæžããäŸåé¢ä¿ã®ç®¡çããããããªããŸãããçµã¿èŸŒã¿Tomcatã§ã¢ããªã±ãŒã·ã§ã³ãåãããããšããREST APIãäœããããããšããç§ã«ã¯å€§ããªå€åã§ããã
ãããŸã§æºåã«äœ¿ã£ãŠããæéããäœãããåŠçã«åããããã®æå¿ãããããŸããã
ãããžã§ã¯ãã®æ§æããããããããªã£ãããšããããŒã ã§éçºããããã§ã¯å©ãããŸãããé·ã䜿ãç¶ããŠããã®ã¯ããããã䟿å©ãã宿ããŠããããã§ãã
äžåºŠåºç€ãäœãã°ãéçºã¯é©ãã»ã©é²ã
ãšã¯ãããSpring Bootãéžã¹ã°ãæåãããã¹ãŠã決ãŸãããã§ã¯ãããŸããã
ç§ã®éçºã§ã¯ãããã±ãŒãžãã©ãåãããããã°ãã©ãåºãããã»ãã·ã§ã³ãäŸå€ãã©ãæ±ããããšãã£ã倿ãå¿ èŠã§ãããäŸåé¢ä¿ãå«ããæåã®åºç€ã¯è©Šè¡é¯èª€ããªããäœã£ãŠããŸãã
ãã®åŸã¯ãæ¢åãããžã§ã¯ãã®åºç€ãåºçºç¹ã«ããŠãããŒãžã§ã³ã«åãããŠæãå ¥ããããæ¹åãããããŠããŸããã
äžåºŠåå°ãæŽãã°ãããŒã ã§éçºãé²ãããããªããŸããå ±éã®ããæ¹ãããããšã§ãåã ã®æ©èœã«éäžãããããªãããã§ãã
ãã®èç©ã¯ãé·ã䜿ã£ãŠããæè¡ã®åŒ·ã¿ã ãšæããŠããŸããåæã«ãã»ãã®æè¡ãšæ¯ã¹ããšãã«ã¯ãç§ãæã£ãŠããçµéšã®å·®ãæèããå¿ èŠãããããã§ãã
䟿å©ãªäžæ¹ãçè§£ã§ããŠããã®ã ããã
䜿ãç¶ãããã¡ã«ã䟿å©ããšã¯å¥ã®åããåºãŠããŸããã
DIãã¢ãããŒã·ã§ã³ãèªåèšå®ãéçºãå©ããŠãããä»çµã¿ã§ãããå éšã®åããååã«çè§£ããªããŸãŸã§ãã䜿ããŠããŸããšããããããŸãã
ç§èªèº«ãåããŠããããšãšãä»çµã¿ã説æã§ããããšããåããŠèããããšæãããã«ãªããŸããã
ãŸãã以åã®ãããžã§ã¯ãã§äœ¿ã£ãèšèšããæ¬¡ã®ãããžã§ã¯ãã«ãåã£ãŠãããšã¯éããŸãããåºç€ãåå©çšã§ããã®ã¯äŸ¿å©ã§ãããä»åã®èŠä»¶ã«ãå¿ èŠãªã®ãã¯ãæ¹ããŠèããäœå°ããããŸãã
æ £ããŠãããšãéžã¶çç±ã説æããåã«æãåããŸãããã®æéã®ãããçããã€ã€ããšãã«ã¯ç«ã¡æ¢ãŸã£ãŠã¿ããã®ã§ãã
10幎䜿ãç¶ããããããèŠããŠãã課é¡
ããäžã€æ°ã«ãªã£ãŠããã®ãã䜿ãç¶ããããã®è² æ ã§ãã
ã¢ããã°ã¬ãŒãã§ã¯ãäºææ§ã調ã¹ãå¿ èŠãªä¿®æ£ãå ¥ããååž°ãã¹ããè¡ããŸããSpring Securityã®èšå®å€æŽãªã©ã調æ»ã察å¿ã«æéãæããããšããããŸããã
æ©èœãäœãæéã ãã§ãªããç¶æããæéãå«ããŠæè¡ãèããããé·ã䜿ã£ãŠãããããããããæããŸãã
ãã ããããã¯Spring Bootã ãã«åºæã®åé¡ãšã¯éããŸãããã»ãã®æè¡ã§ããæŽæ°ãžã®å¯Ÿå¿ãåŠã³çŽãã¯å¿ èŠã«ãªãã§ãããããŸã æ¯èŒããŠããªã段éã§ãé£ã®èçã®æå ¥ããŸã§æ¥œã ãšæ±ºããããã«ã¯ãããŸããã
å§ãããããšãç¶ããããããã®äž¡æ¹ã確ãããŠã¿ãããšæã£ãŠããŸãã
ä»ããŒãããäœããªãäœãéžã¶ã
å®éã®æè¡éžå®ã§ã¯ãéå»ã®è³ç£ãããŒã ã®ç¿ç床ãç¡èŠã§ããŸãããç§ã«ãšã£ãŠããSpring Bootã®çµéšã¯å€§ããªå€æææã§ãã
ã§ã¯ããã®å¶çŽããã£ããå€ããŠãå°ããªã·ã¹ãã ãäœããªãã©ãã§ããããã
ãããããæ¬¡ã®æè¡ã§åã仿§ã®APIãæ®µéçã«å®è£ ããæ¯ã¹ãŠã¿ãäºå®ã§ãã
Spring BootïŒJavaïŒ
FastAPIïŒPythonïŒ
NestJSïŒTypeScriptïŒ
QuarkusïŒJavaïŒ
GoïŒãã¬ãŒã ã¯ãŒã¯ã¯GinãEchoãæ€èšäžïŒ
ãŸãã¯GETãšPOSTã§JSONãæ±ããšããããå§ããDBã®CRUDãå ¥åæ€èšŒãäŸå€åŠçãžé²ãæ§æ³ã§ãããã®å ã«ã¯ãèªèšŒã»èªå¯ããã©ã³ã¶ã¯ã·ã§ã³ãªã©ãèããŠããŸãã
èŠãŠã¿ããã®ã¯ãåŠçã®éãã ãã§ã¯ãããŸãããæåã«åããŸã§ã®æéãã³ãŒãã®èªã¿ããããåŠç¿ãä¿å®ã®è² æ ãæ°ã«ãªããŸããäœãã©ã枬ããã¯ãå®è£ ãå§ããåã«æŽçããŸãã
æ¯èŒã®çµæããã¯ãSpring Bootãéžã¶ãããããŸãããçšéã«ãã£ãŠãå¥ã®æè¡ãéžã³ãããªããããããŸãããä»ã®ãšãããçãã¯æ±ºãŸã£ãŠããŸããã
é·ã䜿ã£ãŠããçžæ£ã®ããããå€ãžåºãŠã¿ããšéã£ãŠèŠããæ°ãããŸãã
次åã¯ãæ¯èŒããæè¡ãšãåãæ¡ä»¶ã§äœã確ãããããæŽçããäºå®ã§ãããŸãã¯ãå°ããªAPIãäœããšãããžåããŠæºåãé²ããŸãã