JTree Tanpa Root
22 Feb 2012 Tinggalkan sebuah Komentar
in Java Programming, Java SE Tag:jtree tanpa root
Setelah cari cari akhirnya ketemu kalo kita pengen buat JTree tapi rootnya gak mo di tampilkan. supaya gak langsung collapse kalo punya banyak kategori cuman gara2 ada rootnya.
oke langsung aja ke codingnya. ga susah kq, cuman butuh satu baris aja. yaitu
JTree tree=new JTree(bla bla bla);
tree.setRootVisible(false);
cuman butuh root visible false doank. oke. selamat berkarya
Menulis dan Membaca File Properties Java
20 Feb 2012 Tinggalkan sebuah Komentar
in Java SE, Pemrograman
File Properties biasanya berguna untuk menyimpan username,password database dan host,port untuk koneksi dari aplikasi ke database maupun ke aplikasi lain.
dibawah ini contoh class yang mengurusi membaca file properties untuk digunakan dalam run aplikasi maupun menulis kedalam properties guna merubah password atau username atau host atau port.
public class FileSystem {
private final static String FILE_HOST = "system/server.properties";
public final static String KEY_HOST = "host";
public final static String KEY_PORT = "port";
public Properties read() {
try {
Properties p = new Properties();
p.load(new FileInputStream(FILE_HOST));
return p;
} catch (IOException ex) {
Logger.getLogger(FileSystem.class.getName()).log(Level.SEVERE, null, ex);
JOptionPane.showMessageDialog(null, "file server.properties not found");
return null;
}
}
public void writeServer(Properties p) {
try {
p.store(new FileOutputStream(FILE_HOST), null);
} catch (IOException ex) {
Logger.getLogger(FileSystem.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
Database to Excel menggunakan Java
23 Jul 2011 Tinggalkan sebuah Komentar
in Java Programming, Java SE, Ubuntu Tag:database, Enter your zip code here, excel, java
pertama buat databasenya dulu, saya buat dengan nama data. setelah itu buat table dan coba di isi.
CREATE TABLE IF NOT EXISTS `excel` ( `id` int(11) NOT NULL AUTO_INCREMENT, `biner` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ; -- -- Dumping data for table `excel` -- INSERT INTO `excel` (`id`, `biner`) VALUES (1, 111101001), (2, 11100100);
klass pertama : Data.java
package databasetoexcel.model;
/**
*
* @author saiful bahri (jepara,1990)
* http://bahrie27.wordpress.com/
*/
public class Data {
private int biner;
public Data() {
}
public int getBiner() {
return biner;
}
public void setBiner(int biner) {
this.biner = biner;
}
}
kelas ke dua : DataImpl.java
package databasetoexcel.model;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
*
* @author saiful bahri (jepara,1990)
* http://bahrie27.wordpress.com/
*/
public class DataImpl {
private Connection conn;
public DataImpl() {
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
String db = "jdbc:mysql://localhost:3306/data";
String user = "root";
String pass = "root";
conn = DriverManager.getConnection(db, user, pass);
} catch (SQLException ex) {
Logger.getLogger(DataImpl.class.getName()).log(Level.SEVERE, null, ex);
} catch (ClassNotFoundException ex) {
Logger.getLogger(DataImpl.class.getName()).log(Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
Logger.getLogger(DataImpl.class.getName()).log(Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
Logger.getLogger(DataImpl.class.getName()).log(Level.SEVERE, null, ex);
}
}
public void insertDb(int biner){
try {
PreparedStatement ps = conn.prepareStatement("insert into excel values(null,?)");
ps.setInt(1, biner);
ps.executeUpdate();
} catch (SQLException ex) {
Logger.getLogger(DataImpl.class.getName()).log(Level.SEVERE, null, ex);
}
}
public List getAll(){
try {
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery("select *from excel");
List list = new ArrayList();
while (rs.next()) {
Data d=new Data();
d.setBiner(rs.getInt("biner"));
list.add(d);
}
return list;
} catch (SQLException ex) {
Logger.getLogger(DataImpl.class.getName()).log(Level.SEVERE, null, ex);
return null;
}
}
public void deleteAll(){
try {
PreparedStatement ps = conn.prepareStatement("delete from excel");
ps.executeUpdate();
} catch (SQLException ex) {
Logger.getLogger(DataImpl.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
kelas ke tiga :JTableToExcelConverter.java (saya ambil dari codenya kang eko).
/*
* Copyright 2011 Eko Kurniawan Khannedy.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* under the License.
*/
package databasetoexcel.converter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JTable;
import javax.swing.table.TableModel;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
/**
*
* @author Eko Kurniawan Khannedy
*/
public class JTableToExcelConverter {
private JTable jtable;
public JTableToExcelConverter(JTable table) {
this.jtable = table;
}
public void convert(File file) {
// ambil table model
TableModel tableModel = jtable.getModel();
// ambil data header table
List header = new ArrayList();
for (int i = 0; i < tableModel.getColumnCount(); i++) {
header.add(tableModel.getColumnName(i));
}
// ambil data seluruh tabel
List<List> data = new ArrayList<List>();
// ambil data tiap baris
for (int i = 0; i < tableModel.getRowCount(); i++) {
List row = new ArrayList();
for (int j = 0; j < tableModel.getColumnCount(); j++) {
row.add(tableModel.getValueAt(i, j));
}
data.add(row);
}
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet();
HSSFRow rowHeader = sheet.createRow(0);
for (int i = 0; i < header.size(); i++) {
HSSFCell rowCell = rowHeader.createCell(i);
rowCell.setCellValue(header.get(i));
}
for (int i = 0; i < data.size(); i++) {
HSSFRow row = sheet.createRow(i + 1);
List dataRow = data.get(i);
for (int j = 0; j < dataRow.size(); j++) {
HSSFCell cell = row.createCell(j);
cell.setCellValue(dataRow.get(j).toString());
}
}
FileOutputStream stream = null;
try {
stream = new FileOutputStream(file);
workbook.write(stream);
} catch (IOException ex) {
Logger.getLogger(JTableToExcelConverter.class.getName()).log(Level.SEVERE, null, ex);
} finally {
if (stream != null) {
try {
stream.close();
} catch (IOException ex) {
Logger.getLogger(JTableToExcelConverter.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
}
}
setelah itu buat form nya. saya beri nama ViewDataToExcel.java screenshot dibawah.

untuk lbh jelas sourcodenya download aja di googlecode.

ini sceen shotnya ketika menambahkan jfilechooser, kalo caranya g kaya gitu nanti hasinya mawot di framenya hehehe
ini acara menambahkan librari poi.jar nya. librarinya ada di folder /lib yg di download.

Silahkan di download dan di plajari. Semoga bermanfaat.. bagi yg ingin tanya2 dapat chat di gtalk : bahrie172
Presentasi OOP (Inheritence Database ke MySQL dan Oracle)
31 Mei 2011 Tinggalkan sebuah Komentar
in Algoritma, Database, Java Programming, Java SE Tag:Inheritence Database, presentasi OOP
jadi di mysql dan oracle sama-sama terdapat tabel matakuliah. jadi langkah pertama membuat database dikedua jenis database tersebut dengan diisi tabel matakuliah. lalu membuat class Matakuliah yang isi parameternya id,nama,dosen serta jangan lupa setter getternya
public class Matakuliah {
private String id;
private String nama;
private String dosen;
public Matakuliah() {
}
public String getDosen() {
return dosen;
}
public void setDosen(String dosen) {
this.dosen = dosen;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getNama() {
return nama;
}
public void setNama(String nama) {
this.nama = nama;
}
}
setelah itu buat class Database sebagai kelas induk
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
public abstract class Database {
abstract public Connection getKonfigurasi();
public void insert(Matakuliah mk){
try {
PreparedStatement ps=getKonfigurasi().prepareStatement("insert into matakuliah values(?,?,?)");
ps.setString(1, mk.getId());
ps.setString(2, mk.getNama());
ps.setString(3, mk.getDosen());
ps.executeUpdate();
} catch (SQLException ex) {
Logger.getLogger(Database.class.getName()).log(Level.SEVERE, null, ex);
}
}
public void getAll(){
try {
Statement st=getKonfigurasi().createStatement();
ResultSet rs=st.executeQuery("select *from matakuliah");
List<Matakuliah> list=new ArrayList<Matakuliah>();
while(rs.next()){
Matakuliah mk=new Matakuliah();
mk.setId(rs.getString("id"));
mk.setNama(rs.getString("nama"));
mk.setDosen(rs.getString("dosen"));
list.add(mk);
}
for(Matakuliah mk : list){
System.out.println("");
System.out.println("-------------------");
System.out.println("ID Matakuliah : "+mk.getId());
System.out.println("Nama Matakuliah : "+mk.getNama());
System.out.println("Dosen : "+mk.getDosen());
System.out.println("-------------------");
}
} catch (SQLException ex) {
Logger.getLogger(Database.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
lalu buat class DbMySQL untuk turunan dari class Database
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
public class DbMySQL extends Database{
private Connection conn;
@Override
public Connection getKonfigurasi() {
try {
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
String db="jdbc:mysql://localhost:3306/presentasi";
String user="root";
String pass="root";
conn=DriverManager.getConnection(db, user, pass);
return conn;
} catch (SQLException ex) {
Logger.getLogger(DbMySQL.class.getName()).log(Level.SEVERE, null, ex);
return null;
} catch (ClassNotFoundException ex) {
Logger.getLogger(DbMySQL.class.getName()).log(Level.SEVERE, null, ex);
return null;
}
} catch (InstantiationException ex) {
Logger.getLogger(DbMySQL.class.getName()).log(Level.SEVERE, null, ex);
return null;
} catch (IllegalAccessException ex) {
Logger.getLogger(DbMySQL.class.getName()).log(Level.SEVERE, null, ex);
return null;
}
}
}
buat class DbOracle sebagai turunan dari class Database
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
public class DbOracle extends Database{
private Connection conn;
@Override
public Connection getKonfigurasi() {
try {
try {
Class.forName("oracle.jdbc.OracleDriver").newInstance();
String db="jdbc:oracle:thin:@localhost:1521:XE";
String user="bah";
String pass="teh";
conn=DriverManager.getConnection(db, user, pass);
return conn;
} catch (SQLException ex) {
Logger.getLogger(DbOracle.class.getName()).log(Level.SEVERE, null, ex);
return null;
} catch (ClassNotFoundException ex) {
Logger.getLogger(DbOracle.class.getName()).log(Level.SEVERE, null, ex);
return null;
}
} catch (InstantiationException ex) {
Logger.getLogger(DbOracle.class.getName()).log(Level.SEVERE, null, ex);
return null;
} catch (IllegalAccessException ex) {
Logger.getLogger(DbOracle.class.getName()).log(Level.SEVERE, null, ex);
return null;
}
}
}
setelah itu buat class untuk simulasinya atau untuk demo program nya..
import java.util.Scanner;
public class DemoDatabase {
public static void main(String[] args) {
int status;
int pilihanMysql = 0;
int pilihanOracle = 0;
boolean keluar = false;
boolean keluarAll=false;
Database db;
do{
System.out.println("=====PRESENTASI MATAKULIAH OOP=======");
System.out.println("");
System.out.println("Pilih Database yang ingin di pakai ?");
System.out.println("1. MySQL");
System.out.println("2. ORACLE");
System.out.println("3. Keluar");
System.out.print("Pilih nomor : ");
Scanner scan;
scan = new Scanner(System.in);
status = Integer.parseInt(scan.nextLine());
do {
if (status == 1) {
keluar=false;
db = new DbMySQL();
System.out.println("");
System.out.println("Database MySQL");
System.out.println("==============");
System.out.println("1. Insert data");
System.out.println("2. Lihat data");
System.out.println("3. Keluar");
System.out.print("pilih : ");
scan = new Scanner(System.in);
pilihanMysql = Integer.parseInt(scan.nextLine());
if (pilihanMysql == 1) {
Matakuliah mk = new Matakuliah();
System.out.print("Masukkan ID Matakuliah : ");
scan = new Scanner(System.in);
mk.setId(scan.nextLine());
System.out.print("Masukkan Nama Matakuliah : ");
scan = new Scanner(System.in);
mk.setNama(scan.nextLine());
System.out.print("Masukkan Dosen : ");
scan = new Scanner(System.in);
mk.setDosen(scan.nextLine());
db.insert(mk);
System.out.println("");
System.out.print("Semua Data Matakuliah Di Database Oracle");
db.getAll();
} else if (pilihanMysql == 2) {
System.out.println("");
System.out.print("Semua Data Matakuliah Di Database MySQL");
db.getAll();
} else if (pilihanMysql == 3) {
keluar = true;
} else {
System.out.println("pilihan salah");
}
} else if (status == 2) {
keluar=false;
db = new DbOracle();
System.out.println("");
System.out.println("Database Oracle");
System.out.println("==============");
System.out.println("1. Insert data");
System.out.println("2. Lihat data");
System.out.println("3. Keluar");
System.out.print("pilih : ");
scan = new Scanner(System.in);
pilihanOracle = Integer.parseInt(scan.nextLine());
if (pilihanOracle == 1) {
Matakuliah mk = new Matakuliah();
System.out.print("Masukkan ID Matakuliah : ");
scan = new Scanner(System.in);
mk.setId(scan.nextLine());
System.out.print("Masukkan Nama Matakuliah : ");
scan = new Scanner(System.in);
mk.setNama(scan.nextLine());
System.out.print("Masukkan Dosen : ");
scan = new Scanner(System.in);
mk.setDosen(scan.nextLine());
db.insert(mk);
System.out.println("");
System.out.print("Semua Data Matakuliah Di Database Oracle");
db.getAll();
} else if (pilihanOracle == 2) {
System.out.println("");
System.out.print("Semua Data Matakuliah Di Database Oracle");
db.getAll();
} else if (pilihanOracle == 3) {
keluar = true;
} else {
System.out.println("pilihan salah");
}
}else if(status==3){
keluarAll=true;
}
} while (keluar == false);
}while(keluarAll==false);
}
}
program ini nantinya masih jalan di console/terminal/cmd saja jadi belum ada tampilan GUI namun sudah dapat digunakan untuk melakukan proses insert serta select dari database database tersebut.
dibawah ini tampilan running program di console : dapat juga di jalankan di cmd sebab java itu multiplatform tinggal di compile dan dijalankan.

untuk source dapat didownload di bawah ini :
oh ya untuk driver mysql dan oracle nya itu saya exstrack dari driverJdbc .jar yang mysql dan oracle miliki.. karena ini masih manual jalan di console maka untuk mengimport drivernya pun saya lakukan dengan cara manual dengan cara mengekstraknya.
selamat Belajar java beserta Database, serta memahami OOP pastinya..
Merubah Tampilan Java Desktop
01 Mei 2011 7 Komentar
in Java Programming, Java SE Tag:java jtatto, jtatto, theme java desktop

tampilan default java

tampilan mac

tampilan Aero

tampilan graphite

tampilan acry
Tampilan tampilan diatas sangatlah mudah dipasang hanya tinggal menambahkan code dibawah ini dibawah main nya java,
namun sebelumnya anda harus mengimport dulu library JTatto.jar kedalam library program. kalo lewat IDE Netbeans atau Eclipse cukup mudah cara memasukkan librarynya. untuk JTatto.jar nya dapat di download di http://jtatto.net/
try {
UIManager.setLookAndFeel(new BernsteinLookAndFeel());
} catch (UnsupportedLookAndFeelException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}
Contoh code lengkap class Main.java nya :
public class Main {
public static void main(String[] args) {
try {
UIManager.setLookAndFeel(new BernsteinLookAndFeel());
} catch (UnsupportedLookAndFeelException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}
SwingUtilities.invokeLater(new Runnable() {
public void run() {
Mahasiswa mhs=new Mahasiswa();
mhs.setVisible(true);
}
});
}
}
Untuk LookAndFeel lainnya dapat dilihat dibawah ini:

Look And Feel
Selamat mencoba tampilan baru dan Enjoy dengan pemrograman java Desktop.. semoga pemrograman menjadi semakin menyenangkan..
—–
oh ya jtatto.jar juga sudah saya sertakan dalam library aplikasi toko buku yang sudah saya upload di googlecode.. sudah ada di postingan sebelumnya..






