JDBC (Java Database Connectivity) ã¯ãJava ããã°ã©ãã³ã°èšèªçšã«ç¹å¥ã«èšèšãããã¢ããªã±ãŒã·ã§ã³ ããã°ã©ãã³ã° ã€ã³ã¿ãŒãã§ã€ã¹ (API) ã§ãããŸããŸãªãªã¬ãŒã·ã§ãã« ããŒã¿ããŒã¹ç®¡çã·ã¹ãã (RDBMS) ã«æ¥ç¶ããŠå¯Ÿè©±ããããã®æšæºçã§çµ±äžããããã¬ãŒã ã¯ãŒã¯ãæäŸããŸããåºæ¬çã«ãJDBC 㯠Java ã¢ããªã±ãŒã·ã§ã³ãš RDBMS ã®éã®éèŠãªããªããžãŸãã¯ä»²ä»è ãšããŠæ©èœããéçºè ã Java ã¢ããªã±ãŒã·ã§ã³å ã§æ§é åç §äŒèšèª (SQL) ã䜿çšããŠå¹ççãã€ç°¡åã«ããŒã¿ããŒã¹ã«ã¢ã¯ã»ã¹ããŠæäœã§ããããã«ããŸãã
1997 幎ã«å°å ¥ããã JDBC ã¯ãJava ãšã³ã·ã¹ãã ã«ãããããŒã¿ããŒã¹æ¥ç¶ã®æ¥çæšæºã®ã¢ãããŒããšãªããåçŽãªãã¹ã¯ããã ãœãããŠã§ã¢ããè€éã§å€§èŠæš¡ãªãšã³ã¿ãŒãã©ã€ãº ã·ã¹ãã ã«è³ããŸã§ãå¹ åºãã¢ããªã±ãŒã·ã§ã³ã§éèŠãªåœ¹å²ãæãããŠããŸãã JDBC ã®äž»ãªç®çã¯ãJava ã¢ããªã±ãŒã·ã§ã³ã OracleãMySQLãSQL ServerãPostgreSQL ãªã©ã®ãªã¬ãŒã·ã§ãã« ããŒã¿ããŒã¹ãšçµ±åããããã®äžè²«æ§ããããæè»ãã€åŒ·åãªææ®µãæäŸããããšã§ãã仿¥ã®ããžã¿ã«äžçã«ãããããŒã¿ã®ã¢ã¯ã»ã¹ãä¿åãååŸãåŠçã®éèŠæ§ãèæ ®ãããšããã®äºææ§ã¯ææ°ã®ã¢ããªã±ãŒã·ã§ã³éçºã«ãšã£ãŠéåžžã«éèŠã§ãã
JDBC ã®äžæ žã¯ãéçºè ãããŒã¿ããŒã¹ãšéä¿¡ããããã®æšæºåããã API ãå®çŸ©ããäžé£ã® Java ã€ã³ã¿ãŒãã§ã€ã¹ãšã¯ã©ã¹ã§æ§æãããããŸããŸãª RDBMS éã®æ ¹æ¬çãªéããæœè±¡åããŸãã JDBC ã¯ããŒã¿ããŒã¹ ãªãœãŒã¹ã«ã¢ã¯ã»ã¹ããããã»ã¹ãç°¡çŽ åããã³åçåããéçºè ãè€éãªããŒã¿ããŒã¹æ¥ç¶ãéä¿¡ã®åé¡ã«åãçµãã®ã§ã¯ãªããããžãã¹ ããžãã¯ãšæ©èœèŠä»¶ã®å®è£ ã«éäžã§ããããã«ããŸãã
JDBC ã¯ãã©ã€ããŒããŒã¹ã®ã¢ãŒããã¯ãã£ãå®è£ ããŠãããç¹å®ã®å RDBMS ãç¬èªã® JDBC ãã©ã€ããŒãã€ãŸã JDBC API åŒã³åºããç¹å®ã®äœã¬ãã«ã®ããŒã¿ããŒã¹ ã³ãã³ãããã³éä¿¡ãããã³ã«ã«å€æãã圹å²ãæ ã Java ã©ã€ãã©ãªãŒãæäŸããŸãããã®ã¢ãŒããã¯ãã£ã¯ãéçºè ã Java ã¢ããªã±ãŒã·ã§ã³ ã³ãŒããå€§å¹ ã«å€æŽããããšãªãããŒã¿ããŒã¹ ã·ã¹ãã ãç°¡åã«çœ®ãæãããã¢ããã°ã¬ãŒããããã§ãããããã¢ãžã¥ãŒã«æ§ãæ¡åŒµæ§ãçžäºéçšæ§ãä¿é²ããŸããé©å㪠JDBC ãã©ã€ããŒã亀æããã ãã§ãJava ã¢ããªã±ãŒã·ã§ã³ã¯ã³ãŒã ããŒã¹ãæå°éã«å€æŽããããŸã£ãã倿Žããã«æ©èœãç¶ããããšãã§ããŸãã
JDBC API ã¯ãããŒã¿ããŒã¹æ¥ç¶ã®ç¢ºç«ãSQL ã¹ããŒãã¡ã³ãã®æºåãšå®è¡ãã¯ãšãªçµæã®åŠçããã©ã³ã¶ã¯ã·ã§ã³ã®å®è¡ããšã©ãŒãšäŸå€ã®åŠçãããŒã¿ããŒã¹ ã¡ã¿ããŒã¿ã®ç®¡çãªã©ã®éèŠãªã¿ã¹ã¯ã®ããã®ããŸããŸãªæ©èœãæäŸããã€ã³ã¿ãŒãã§ã€ã¹ãšã¯ã©ã¹ã®å æ¬çãªã»ããã§æ§æãããŠããŸããéèŠãª JDBC ã³ã³ããŒãã³ãã®äžéšã¯æ¬¡ã®ãšããã§ãã
- DriverManager: ããŒã¿ããŒã¹ ãã©ã€ããŒã®ãªã¹ãã管çããç¹å®ã® RDBMS çšã®é©å㪠JDBC ãã©ã€ããŒãžã®ç»é²ãæ€åºãæ¥ç¶ããµããŒãããã¯ã©ã¹ã
- æ¥ç¶: ç¹å®ã® RDBMS ãžã®æ¥ç¶ã衚ãã€ã³ã¿ãŒãã§ã€ã¹ãããŒã¿ããŒã¹æäœãå®è¡ãããã©ã³ã¶ã¯ã·ã§ã³ã管çããããã®äž»èŠãªãšã³ã㪠ãã€ã³ããšããŠæ©èœããŸãã
- StatementãPreparedStatementãããã³ CallableStatement: åçŽãªããã·ãŒãžã£ããã©ã¡ãŒã¿åãããããã·ãŒãžã£ãã¹ãã¢ã ããã·ãŒãžã£ãªã©ãããŸããŸãªã¿ã€ãã® SQL ã¯ãšãªãå®è¡ããããã®ã€ã³ã¿ãŒãã§ã€ã¹ã
- ResultSet: ããŒã¿ããŒã¹ ã¯ãšãªã®çµæã衚ãã€ã³ã¿ãŒãã§ã€ã¹ãããã«ãããã¯ãšãªçµæå ã®ã¬ã³ãŒãã®å¹ççã§é 次çãªèµ°æ»ãšåŠçãå¯èœã«ãªããŸãã
- SQLException: ããŒã¿ããŒã¹æäœäžã«çºçããå¯èœæ§ã®ãããšã©ãŒãšäŸå€ãåŠçããã¯ã©ã¹ã§ãéçºè ã«è©³çްãªèšºææ å ±ãšå埩ãªãã·ã§ã³ãæäŸããŸãã
AppMasterããã¯ãšã³ããWebãã¢ãã€ã« ã¢ããªã±ãŒã·ã§ã³ãäœæããããã®åŒ·åãªno-codeããŒã«ã§ãã AppMasterçæããã Java ããŒã¹ã®ããã¯ãšã³ã ã¢ããªã±ãŒã·ã§ã³ã« JDBC ãã·ãŒã ã¬ã¹ã«çµ±åã§ããPostgresql äºæããŒã¿ããŒã¹ããã©ã€ã㪠ããŒã¿ããŒã¹ãšããŠäœ¿çšã§ãããããã«äœ¿çšã§ãã Java ã¢ããªã±ãŒã·ã§ã³ãé¡§å®¢ã«æäŸããŸãããã®çµ±åã«ããã AppMaster顧客ã¯éçºãšå±éã®ã©ã€ããµã€ã¯ã«ãå€§å¹ ã«ç°¡çŽ åããã³å éãããJava ã¢ããªã±ãŒã·ã§ã³ã§ã®ããŒã¿ããŒã¹æ¥ç¶ãšç®¡çã®è€éãã«å¯ŸåŠãã代ããã«ãããžãã¹èŠä»¶ã®å®çŸã«éäžã§ããããã«ãªããŸããããã«ã AppMasterã®no-codeã¢ãããŒããšèªåçæã¢ããªã±ãŒã·ã§ã³ã«ãããé¡§å®¢ã¯æè¡çè² åµããªãœãŒã¹ã®ãªãŒããŒããããçºçãããããšãªããææ°ã®ã¹ã±ãŒã©ãã«ã§å¹ççãªãœãããŠã§ã¢ ãœãªã¥ãŒã·ã§ã³ãæ§ç¯ããã³ç¶æã§ããŸãã
çµè«ãšããŠãJDBC ã¯ãJava ã¢ããªã±ãŒã·ã§ã³ãããŸããŸãª RDBMS ã«æ¥ç¶ããã·ãŒã ã¬ã¹ãªããŒã¿ããŒã¹ã®çµ±åãã¢ã¯ã»ã¹ã管çãä¿é²ããããã®éèŠãªæ¥çæšæº API ã§ããé·å¹Žã«ããããJDBC ã¯ããŸããŸãªãµã€ãºãšè€éãã®ç¡æ°ã® Java ã¢ããªã±ãŒã·ã§ã³ã§ãã®äŸ¡å€ã蚌æããŠãããéçºè 㯠Java ããã°ã©ãã³ã°èšèªã®ãã¯ãŒãšå©äŸ¿æ§ãå©çšããŠãªã¬ãŒã·ã§ãã« ããŒã¿ããŒã¹ã®å¯èœæ§ãæå€§éã«æŽ»çšã§ããŸãã AppMaster ããã®è£œåã« JDBC ãçµã¿èŸŒãããšã§ã顧客ãéçºããã»ã¹ãåçåããçç£æ§ãåäžãããã¢ããªã±ãŒã·ã§ã³ã®æ©èœãããã©ãŒãã³ã¹ãããã³ã¹ã±ãŒã©ããªãã£ã®ç¹ã§å€§å¹ ã«åªããçµæãéæã§ããããã«æ¯æŽããŸãã