Last active
February 26, 2018 18:54
-
-
Save volnoboy/a2f7ce7d18d45a14a2fb to your computer and use it in GitHub Desktop.
H2 JDBC Example
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.volnoboy; | |
import java.sql.Connection; | |
import java.sql.DriverManager; | |
import java.sql.ResultSet; | |
import java.sql.SQLException; | |
import java.sql.Statement; | |
public class H2JDBC { | |
//To start h2 server uncomment next two lines: | |
//String arguments[] = {"-tcpAllowOthers", "-tcpPort", "9092"}; | |
//Server server = Server.createTcpServer(arguments).start(); | |
// 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 = "sa"; | |
public static void main(String[] args) { | |
Connection conn = null; | |
Statement stmt = null; | |
try{ | |
//STEP 2: Register JDBC driver | |
Class.forName(JDBC_DRIVER); | |
//STEP 3: Open a connection | |
System.out.println("Connecting to database..."); | |
conn = DriverManager.getConnection(DB_URL, USER, PASS); | |
//STEP 4: Execute a query | |
System.out.println("Creating statement..."); | |
stmt = conn.createStatement(); | |
String sql = "Select * from persons"; | |
ResultSet rs = stmt.executeQuery(sql); | |
//STEP 5: Extract data from result set | |
while(rs.next()){ | |
//Retrieve by column name | |
String address = rs.getString("address"); | |
String city = rs.getString("city"); | |
//Display values | |
System.out.print("ADDRESS: " + address); | |
System.out.print(", CITY: " + city); | |
} | |
//To start h2 web console uncomment next line: | |
//org.h2.tools.Server.startWebServer(conn); | |
//STEP 6: Clean-up environment | |
rs.close(); | |
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!"); | |
}//end main | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment