Java でIDEといえば Eclipse や IntelliJ な気がします。しかしそれほど本気ではないが楽しく気軽に Java コーディングしたいという時に、VSCodeで簡単にデータベース接続まで理解する。以上を表題の3つで実現する事を考えてみました。
以下2つが分かりやすかった。
予備知識
Visual Studio Code で Java を使うにはJDK11が必要になりました
Java のクラスパス(Classpath)を通す - vscode、JDBCドライバ
H2-database-jdbc-connection H2データベース-JDBC接続
簡単な練習
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class H2jdbcCreateDemo {
//JDBC driver name and database URL
static final String JDBC_DRIVER = "org.h2.Driver";
static final String DB_URL = "jdbc:h2:~/test";
// Database credentials
static final String USER = "sa";
static final String PASS = "";
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try {
//STEP 1: Register JDBC driver
Class.forName(JDBC_DRIVER);
//STEP 2: Open a connection
System.out.println("Connecting to database...");
conn = DriverManager.getConnection(DB_URL,USER,PASS);
//STEP 3: Execute a query
System.out.println("Creating table in given database...");
stmt = conn.createStatement();
String sql = "CREATE TABLE IF NOT EXISTS SAMPLE_TABLE " +
"(id INTEGER not NULL, " +
" name VARCHAR(255), " +
" memo VARCHAR(255), " +
" age INTEGER, " +
" PRIMARY KEY ( id ))";
stmt.executeUpdate(sql);
System.out.println("Created table in given database...");
//STEP 4: Clean-up environment
stmt.close();
conn.close();
} catch(SQLException se) {
//Handle errors for JDBC
se.printStackTrace();
} catch(Exception e) {
//Handle errors for Class.forName
e.printStackTrace();
} finally {
//finally block used to close resources
try{
if(stmt!=null) stmt.close();
} catch(SQLException se2) {
}//nothing we can do
try {
if(conn!=null) conn.close();
} catch(SQLException se){
se.printStackTrace();
}//end finally try
}//end try
System.out.println("Goodbye!");
}
}
PS C:\Users\s5551\OneDrive\デスクトップ\workspace\java\simplecrud\src> java -classpath h2-1.4.200.jar H2jdbcCreateDemo.java
Connecting to database...
Creating table in given database...
Created table in given database...
Goodbye!
PS C:\Users\s5551\OneDrive\デスクトップ\workspace\java\simplecrud\src>
余談
勝手に想像するにJavaは以下が不利です。
- カッコイイGUIを簡単に作るのにはイマドキ適さない。
- 故に初心者はわざわざ選ばない
- Javaはなぜ難しい?と各所で言われます...。
しかしTIOBE index、
https://www.tiobe.com/tiobe-index/
Java は相変わらず3位に入るようです。
https://insights.stackoverflow.com/survey/2020#technology-programming-scripting-and-markup-languages-all-respondents においても3位にSQL、5位にJava。
ライブラリが充実し経験者が数多く知識がふんだんにあるという意味で、入門までの難関はそれほどないのでは。VSCode で週末お気軽Java開発も良いのでは。というか業務を離れて書くならこれで良いなと感じたので以上メモです。
参考になればさいわいです。