Posted in Java 12 years ago 3 min read
#Database Configuration driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/services user=root password=Agar file konfigurasi tersebut dapat digunakan, tentunya harus ada program yang membaca file tersebut. Oleh karenanya, sekarang buatlah class baru dengan nama DatabaseConfig.java Di dalam class DatabaseConfig.java terdapat method yang membaca isi dari file database.cfg sehingga dapat dimanfaatkan dalam koneksi ke dalam database. Berikut ini adalah source code dari DatabaseConfig.java
package javamysql;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;
public class DatabaseConfig {
private static Connection con = null;
public static Connection getConnection() {
if (con != null) {
return con;
} else {
try {
Properties prop = new Properties();
InputStream is = DatabaseConfig.class.getClassLoader().getResourceAsStream("database.cfg");
prop.load(is);
String driver = prop.getProperty("driver");
String url = prop.getProperty("url");
String user = prop.getProperty("user");
String password = prop.getProperty("password");
Class.forName(driver);
con = DriverManager.getConnection(url, user, password);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
return con;
}
}
Selanjutnya kita akan membuat sebuah class yang berfungsi sebagai model (setter dan getter). Untuk membuat setter dan getter kita dapat menggunakan fasilitas generate yang ada di Netbeans, yaitu dengan cara menekan tombol Alt+Insert.
Class tersebut saya beri nama Query.java Berikut ini adalah source code Query.java
package javamysql;
/**
*
* @author Azuharu
*/
public class Query {
private String code;
private String name;
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Dan berikut ini adalah class ExecuteQuery3.java yang berfungsi untuk melakukan query ke database.
package javamysql;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
/**
*
* @author Azuharu
*/
public class ExecuteQuery3 {
private Connection con;
public ExecuteQuery3() {
con = DatabaseConfig.getConnection();
}
public ArrayList<Query> getQuery(){
ArrayList<Query> query = new ArrayList<Query>();
try {
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("select Code, Name from country");
while (rs.next()) {
Query q = new Query();
q.setCode(rs.getString("Code"));
q.setName(rs.getString("Name"));
query.add(q);
}
} catch (SQLException e) {
System.out.println(e.getMessage());
}
return query;
}
}
Terakhir, ini adalah class QueryRun.java yang berfungsi sebagai main class dalam project.
package javamysql;
import java.util.ArrayList;
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author Azuharu
*/
public class QueryRun {
public static void main(String[] args) {
ExecuteQuery3 ex = new ExecuteQuery3();
ArrayList<Query> query = ex.getQuery();
//Query q = new Query();
for (int i = 0; i < query.size(); i++) {
System.out.println(query.get(i).getCode() + " "+query.get(i).getName());
}
}
}
Semoga bermanfaat