package com.mkyong.jdbc;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
public class JDBCStatementInsertExample {
private static final String DB_DRIVER
= "oracle.jdbc.driver.OracleDriver"; private static final String DB_CONNECTION
= "jdbc:oracle:thin:@localhost:1521:MKYONG"; private static final String DB_USER
= "user"; private static final String DB_PASSWORD
= "password"; "yyyy/MM/dd HH:mm:ss");
public static void main
(String[] argv
) {
try {
insertRecordIntoDbUserTable();
System.
out.
println(e.
getMessage());
}
}
private static void insertRecordIntoDbUserTable
() throws SQLException {
String insertTableSQL
= "INSERT INTO DBUSER" + "(USER_ID, USERNAME, CREATED_BY, CREATED_DATE) " + "VALUES"
+ "(1,'mkyong','system', " + "to_date('"
+ getCurrentTimeStamp() + "', 'yyyy/mm/dd hh24:mi:ss'))";
try {
dbConnection = getDBConnection();
statement = dbConnection.createStatement();
System.
out.
println(insertTableSQL
);
// execute insert SQL stetement
statement.executeUpdate(insertTableSQL);
System.
out.
println("Record is inserted into DBUSER table!");
System.
out.
println(e.
getMessage());
} finally {
if (statement != null) {
statement.close();
}
if (dbConnection != null) {
dbConnection.close();
}
}
}
try {
Class.forName(DB_DRIVER);
System.
out.
println(e.
getMessage());
}
try {
DB_CONNECTION, DB_USER,DB_PASSWORD);
return dbConnection;
System.
out.
println(e.
getMessage());
}
return dbConnection;
}
private static String getCurrentTimeStamp
() {
java.
util.
Date today
= new java.
util.
Date(); return dateFormat.format(today.getTime());
}
cGFja2FnZSBjb20ubWt5b25nLmpkYmM7CgppbXBvcnQgamF2YS5zcWwuRHJpdmVyTWFuYWdlcjsKaW1wb3J0IGphdmEuc3FsLkNvbm5lY3Rpb247CmltcG9ydCBqYXZhLnNxbC5TUUxFeGNlcHRpb247CmltcG9ydCBqYXZhLnNxbC5TdGF0ZW1lbnQ7CmltcG9ydCBqYXZhLnRleHQuRGF0ZUZvcm1hdDsKaW1wb3J0IGphdmEudGV4dC5TaW1wbGVEYXRlRm9ybWF0OwoKcHVibGljIGNsYXNzIEpEQkNTdGF0ZW1lbnRJbnNlcnRFeGFtcGxlIHsKCglwcml2YXRlIHN0YXRpYyBmaW5hbCBTdHJpbmcgREJfRFJJVkVSID0gIm9yYWNsZS5qZGJjLmRyaXZlci5PcmFjbGVEcml2ZXIiOwoJcHJpdmF0ZSBzdGF0aWMgZmluYWwgU3RyaW5nIERCX0NPTk5FQ1RJT04gPSAiamRiYzpvcmFjbGU6dGhpbjpAbG9jYWxob3N0OjE1MjE6TUtZT05HIjsKCXByaXZhdGUgc3RhdGljIGZpbmFsIFN0cmluZyBEQl9VU0VSID0gInVzZXIiOwoJcHJpdmF0ZSBzdGF0aWMgZmluYWwgU3RyaW5nIERCX1BBU1NXT1JEID0gInBhc3N3b3JkIjsKCXByaXZhdGUgc3RhdGljIGZpbmFsIERhdGVGb3JtYXQgZGF0ZUZvcm1hdCA9IG5ldyBTaW1wbGVEYXRlRm9ybWF0KAoJCQkieXl5eS9NTS9kZCBISDptbTpzcyIpOwoKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3YpIHsKCgkJdHJ5IHsKCgkJCWluc2VydFJlY29yZEludG9EYlVzZXJUYWJsZSgpOwoKCQl9IGNhdGNoIChTUUxFeGNlcHRpb24gZSkgewoKCQkJU3lzdGVtLm91dC5wcmludGxuKGUuZ2V0TWVzc2FnZSgpKTsKCgkJfQoKCX0KCglwcml2YXRlIHN0YXRpYyB2b2lkIGluc2VydFJlY29yZEludG9EYlVzZXJUYWJsZSgpIHRocm93cyBTUUxFeGNlcHRpb24gewoKCQlDb25uZWN0aW9uIGRiQ29ubmVjdGlvbiA9IG51bGw7CgkJU3RhdGVtZW50IHN0YXRlbWVudCA9IG51bGw7CgoJCVN0cmluZyBpbnNlcnRUYWJsZVNRTCA9ICJJTlNFUlQgSU5UTyBEQlVTRVIiCgkJCQkrICIoVVNFUl9JRCwgVVNFUk5BTUUsIENSRUFURURfQlksIENSRUFURURfREFURSkgIiArICJWQUxVRVMiCgkJCQkrICIoMSwnbWt5b25nJywnc3lzdGVtJywgIiArICJ0b19kYXRlKCciCgkJCQkrIGdldEN1cnJlbnRUaW1lU3RhbXAoKSArICInLCAneXl5eS9tbS9kZCBoaDI0Om1pOnNzJykpIjsKCgkJdHJ5IHsKCQkJZGJDb25uZWN0aW9uID0gZ2V0REJDb25uZWN0aW9uKCk7CgkJCXN0YXRlbWVudCA9IGRiQ29ubmVjdGlvbi5jcmVhdGVTdGF0ZW1lbnQoKTsKCgkJCVN5c3RlbS5vdXQucHJpbnRsbihpbnNlcnRUYWJsZVNRTCk7CgoJCQkvLyBleGVjdXRlIGluc2VydCBTUUwgc3RldGVtZW50CgkJCXN0YXRlbWVudC5leGVjdXRlVXBkYXRlKGluc2VydFRhYmxlU1FMKTsKCgkJCVN5c3RlbS5vdXQucHJpbnRsbigiUmVjb3JkIGlzIGluc2VydGVkIGludG8gREJVU0VSIHRhYmxlISIpOwoKCQl9IGNhdGNoIChTUUxFeGNlcHRpb24gZSkgewoKCQkJU3lzdGVtLm91dC5wcmludGxuKGUuZ2V0TWVzc2FnZSgpKTsKCgkJfSBmaW5hbGx5IHsKCgkJCWlmIChzdGF0ZW1lbnQgIT0gbnVsbCkgewoJCQkJc3RhdGVtZW50LmNsb3NlKCk7CgkJCX0KCgkJCWlmIChkYkNvbm5lY3Rpb24gIT0gbnVsbCkgewoJCQkJZGJDb25uZWN0aW9uLmNsb3NlKCk7CgkJCX0KCgkJfQoKCX0KCglwcml2YXRlIHN0YXRpYyBDb25uZWN0aW9uIGdldERCQ29ubmVjdGlvbigpIHsKCgkJQ29ubmVjdGlvbiBkYkNvbm5lY3Rpb24gPSBudWxsOwoKCQl0cnkgewoKCQkJQ2xhc3MuZm9yTmFtZShEQl9EUklWRVIpOwoKCQl9IGNhdGNoIChDbGFzc05vdEZvdW5kRXhjZXB0aW9uIGUpIHsKCgkJCVN5c3RlbS5vdXQucHJpbnRsbihlLmdldE1lc3NhZ2UoKSk7CgoJCX0KCgkJdHJ5IHsKCgkJCWRiQ29ubmVjdGlvbiA9IERyaXZlck1hbmFnZXIuZ2V0Q29ubmVjdGlvbigKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERCX0NPTk5FQ1RJT04sIERCX1VTRVIsREJfUEFTU1dPUkQpOwoJCQlyZXR1cm4gZGJDb25uZWN0aW9uOwoKCQl9IGNhdGNoIChTUUxFeGNlcHRpb24gZSkgewoKCQkJU3lzdGVtLm91dC5wcmludGxuKGUuZ2V0TWVzc2FnZSgpKTsKCgkJfQoKCQlyZXR1cm4gZGJDb25uZWN0aW9uOwoKCX0KCglwcml2YXRlIHN0YXRpYyBTdHJpbmcgZ2V0Q3VycmVudFRpbWVTdGFtcCgpIHsKCgkJamF2YS51dGlsLkRhdGUgdG9kYXkgPSBuZXcgamF2YS51dGlsLkRhdGUoKTsKCQlyZXR1cm4gZGF0ZUZvcm1hdC5mb3JtYXQodG9kYXkuZ2V0VGltZSgpKTsKCgl9Cgo=