JDBC Java memanggil Store Procedure Oracle Update Delete PL/SQL

Di artikel sebelumnya sudah saya tulis bagaimana java memanggil sp yang isinya insert dan select, dan yang sekarang adalah untuk operasi update dan delete. seperti biasa sebelumnya kita buat dulu Store Procedurenya untuk Update dan Delete :

Store Procedure Update

create or replace
PROCEDURE SP_BHE_MHS_U 
(
nim_in         IN bhe_mhs.nim%type,
name_in        IN bhe_mhs.name%type,
address_in     IN bhe_mhs.address%type,
result_cursor  OUT SYS_REFCURSOR
)
AS 
BEGIN
  update bhe_mhs 
  set
  name      =name_in,
  address   =address_in
      where 
      nim=nim_in;
        
         OPEN result_cursor FOR
  select 'success' as status from dual;
END;

Store Procedure untuk Delete

create or replace
PROCEDURE SP_BHE_MHS_D 
(
nim_in         IN bhe_mhs.nim%type,
result_cursor  OUT SYS_REFCURSOR
)
AS 
BEGIN
  
  delete from bhe_mhs 
      where 
      nim=nim_in;
  
END;

Code java yang memanggilnya :

code Update

public void update(Mahasiswa o) throws SQLException {
        String updateMahasiswa = "{call bahrie_bhe.sp_bhe_mhs_u(?,?,?,?)}";
        CallableStatement callableStatement = DatabaseUtilities.getConnection().prepareCall(updateMahasiswa);
        callableStatement.setString(1, o.getNim());
        callableStatement.setString(2, o.getNama());
        callableStatement.setString(3, o.getAlamat());
        callableStatement.registerOutParameter(4, OracleTypes.CURSOR);
        callableStatement.executeUpdate();
    }

Code java untuk delete

public void delete(String nim) throws SQLException {
        String deleteMahasiswa = "{call bahrie_bhe.sp_bhe_mhs_d(?,?)}";
        CallableStatement callableStatement = DatabaseUtilities.getConnection().prepareCall(deleteMahasiswa);
        callableStatement.setString(1, nim);
        callableStatement.registerOutParameter(2, OracleTypes.CURSOR);
        callableStatement.executeUpdate();
    }

insert select update delete sudah saya kasih contoh, silahkan teman2 kembangkan sendiri dalam belajar.
Selamat mencoba 😀

@bahrie_bhe

JDBC Java memanggil Store Procedure Oracle Select PL/SQL

Di artikel yang sebelumnya sudah saya bahas bagaimana memanggil SP insert, nah yang sekarang adalah contoh untuk operasi select. jadi pertama kita bkin Store Procedure di oracle setelah itu kita panggil dengan java. codenya dapat dilihat dibawah ini, oh ya keuntungan memakai Store Procedure dibandingkan kita query insert ada di program java yaitu dengan data transaction di tangani oleh Oracle maka proses yang ada di aplikasi kita akan menjadi lebih ringan karena proses transaksinya berada di database. dan biasanya mesin database dan mesin aplikasi itu di pisah, sehingga hit yang tinggi ke aplikasi tidak membuatnya hang karena proses transaksi di limpahkan ke oracle, java hanya sebagai penghubung atau jalan. bila penjelasannya masih belum bisa dipahami mungkin bisa tanya ke google atau bisa diskusi dengan saya 😀

Store Procedure Select

create or replace
PROCEDURE SP_BHE_MHS_S 
(
result_cursor OUT SYS_REFCURSOR
)
AS 
BEGIN
open result_cursor for
  SELECT  
    nim nim,
    name nama,
    address alamat
    from bhe_mhs;
END;

code java seperti dibawah ini :

public List<Mahasiswa> getAll() throws SQLException {
        String getMahasiswa = "{call bahrie_bhe.sp_bhe_mhs_s(?)}";
        CallableStatement callableStatement = DatabaseUtilities.getConnection().prepareCall(getMahasiswa);
        callableStatement.registerOutParameter(1, OracleTypes.CURSOR);
        callableStatement.executeUpdate();
        ResultSet rs = (ResultSet) callableStatement.getObject(1);
        List<Mahasiswa> list = new ArrayList<Mahasiswa>();
        while (rs.next()) {
            Mahasiswa mhs = new Mahasiswa();
            mhs.setNim(rs.getString("nim"));
            mhs.setNama(rs.getString("nama"));
            mhs.setAlamat(rs.getString("alamat"));
            list.add(mhs);
        }
        return list;
    }

Selamat mencoba 😀

@bahrie_bhe

JDBC Java Memanggil Store Procedure Oracle Insert PL/SQL

Di Postingan sebelumnya sudah saya singgung tentang bikin schema oracle. Nah disini saya teruskan dengan membuat table serta membuat SP (store procedure) yang berfungsi sebagai jembatan untuk memasukan data dari aplikasi ke table.
jadi skemanya nanti java melempar parameter ke SP dan SP memproses memasukkan ke table.

table BHE_MHS didalam schema BAHRIE_BHE :

  CREATE TABLE "BAHRIE_BHE"."BHE_MHS" 
   (	"NIM" VARCHAR2(20 BYTE) NOT NULL ENABLE, 
	"NAME" VARCHAR2(50 BYTE), 
	"ADDRESS" VARCHAR2(100 BYTE), 
	 CONSTRAINT "BHE_MHS_PK" PRIMARY KEY ("NIM")
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
  TABLESPACE "BAHRI_TUTORIAL"  ENABLE
   ) SEGMENT CREATION IMMEDIATE 
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
  TABLESPACE "BAHRI_TUTORIAL" ;
 

setelah itu bikin Store Procedure insert nya :

create or replace
PROCEDURE SP_BHE_MHS_I 
(
nim_in         IN bhe_mhs.nim%type,
name_in        IN bhe_mhs.name%type,
address_in     IN bhe_mhs.address%type,
result_cursor  OUT SYS_REFCURSOR
)
AS 
BEGIN
  INSERT INTO bhe_mhs
  (
  nim,
  name,
  address
  )
  VALUES
  (
  nim_in,
  name_in,
  address_in
  );
  
 
  OPEN result_cursor FOR
  select 'success' as status from dual;
  EXCEPTION
    WHEN DUP_VAL_ON_INDEX THEN
     OPEN result_cursor FOR
        select 'error' as status from dual;
   
END;

cara java memanggil sp tersebut dengan cara seperti dibawah ini :

public Mahasiswa insert(Mahasiswa o) throws SQLException {

        //use store procedure oracle
        String insertMahasiswa = "{call bahrie_bhe.sp_bhe_mhs_i(?,?,?,?)}";
        CallableStatement callableStatement = DatabaseUtilities.getConnection().prepareCall(insertMahasiswa);
        callableStatement.setString(1, o.getNim());
        callableStatement.setString(2, o.getNama());
        callableStatement.setString(3, o.getAlamat());
        callableStatement.registerOutParameter(4, OracleTypes.CURSOR);
        callableStatement.executeUpdate();
        ResultSet rs = (ResultSet) callableStatement.getObject(4);
        if(rs.next()){
        o.setStatus(rs.getString("status"));
        System.out.println(rs.getString("status"));
        }
        return o;
    }

Sekian tutorialnya. bila belumm paham bisa tinggalkan pesan dibawah atau mention aja di @bahrie_bhe 😀
Selamat Belajar.

Install JDK 7 Oracle/Sun di Ubuntu

sudo rm /var/lib/dpkg/info/oracle-java7-installer*
sudo apt-get purge oracle-java7-installer*
sudo rm /etc/apt/sources.list.d/*java*
sudo apt-get update
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer

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 😀

Crud Java Menggunakan Spring-Hibernate

Malem semakin larut dan aku pun berfikir akan suatu hal. di tweet banyak yang bilang saya sedang galau. ah tidak itu hanya kata mereka saja. saya hanya sedang belajar menulis puisi. dan sampailah saya menulis tutorial yang sebenarnya sudah lama ingin ku tulis. namun karna sang waktu melenakanku, hingga baru sekarang coretan ini terwujud. Crud itu kepanjangan dari create read update delete, java yang berarti disusun oleh tutur java, menggunakan spring hibernate bermaksud menjadikan spring serta hibernate pendamping tutur java dalam membentuk sebuah aplikasi yang di impikan. ditutorial ini saya jadikan netbeans sebagai alat tulisku, spring dan hibernate meja belajarku.
Hibernate membatuku mempercapat urusan dalam pembuatan model yang bertugas bercakap2 dengan database. Belau dapat memberi kita table sesaui yang kita inginkan beserta relasi relasinya. dengan HQL nya, sang Hibernate memberi kita kebahagiaan akan harmonisnya dia dengan semua database. Spring bagaikan mesin jahit, yang dapat menusuk sana dan sini. dapat memasukkan aliran darah aplikasi ke dalam nadi yang membutuhkannya.

lebih jelasnya download projectnya serta jalankan. bila ditemukan keluahan atau kegalauan silahkan tulis curhatannya 🙂

untuk screenshoot wajah spring hibernate mungkin akan menyusul seiring waktu yang menggiringku ke sebuah tutorial yang meninggalkan tanda tanya.

http://bahrie127.googlecode.com/files/demo-spring.zip

Database to Excel menggunakan Java

Iseng iseng di tengah kesibukan, karena ada temen yg nanya jg gmana sih jadiin data yg ada di dalam database menjadi excel make java?. Karena saya pernah buat aplikasinya jadi coba saya share gimana buatnya, yg jelas disini kita harus make librari yg bukan bawaannya jdk, disini kita make librarinya apace poi. Untuk lebih jelasnya bisa baca referensi dari blognya kang eko, kang eko jg sebenarnya sudah buat tutorial kayaa gini, tapi dia buatnya diatas maven, jd yg blum terbiasa make maven bakal bingung jalaninnya gimana bukanya juga gimana.hehehe.. oke ini yg dah saya buat, buat klass klass pendukungnya,,

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)
 * https://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)
 * https://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 &lt; tableModel.getColumnCount(); i++) {
            header.add(tableModel.getColumnName(i));
        }

        // ambil data seluruh tabel
        List&lt;List&gt; data = new ArrayList&lt;List&gt;();

        // ambil data tiap baris
        for (int i = 0; i &lt; tableModel.getRowCount(); i++) {
            List row = new ArrayList();
            for (int j = 0; j &lt; 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 &lt; header.size(); i++) {
            HSSFCell rowCell = rowHeader.createCell(i);
            rowCell.setCellValue(header.get(i));
        }

        for (int i = 0; i &lt; data.size(); i++) {
            HSSFRow row = sheet.createRow(i + 1);
            List dataRow = data.get(i);
            for (int j = 0; j &lt; 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.

form

untuk lbh jelas sourcodenya download aja di googlecode.

jfilechooser

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.

lib

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)

Alhamdulillah bisa ngeblog lagi.. disini saya ingin menshare hasil presentasi saya kemaren di matakuliah Object Oriented Programming.. disini saya membahas tentang Inheritence atau turunan. jadi pertama saya punya class Database dan kelas tersebut saya turunkan ke kelas DbMySQL dan kelas DbOracle. Jadi dikelas Database tersebut sudah terdapat 3 method yaitu konfigurasi, insert, dan select. untuk insert dan select sendiri dalam mysql dan oracle querynya sama jadi dapat langsung dibuat di database dan nanti tinggal di turunkan. sedangkan untuk konfigurasi pastinya beda antara mysql dan oracle, jadi untuk methode konfigurasi saya bikin abstrak jadi nanti untuk di klas DbMysql dan DbOracle dapat diimplement sendiri dengan cara konfigurasi masing2 database. Disini saya hanya menyediakan satu tabel yaitu tabel matakuliah untuk dijadikan simulasinya..
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.

db

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. 😀

http://bahrie127.googlecode.com/files/PresentasiPBO.zip

selamat Belajar java beserta Database, serta memahami OOP pastinya.. 😀

Merubah Port Jetty Maven di Linux

Apa itu jetty apa itu maven saya rasa yg sedang cari tutorial ini pasti sudah tahu, bagi yang tidak sengaja membaca artikel ini dapat di googling apa itu jetty dan maven, tapi yg berbahasa indonesia sperti jarang atau hampir tidak ada.. hehehe
Nah, saya nulis tentang merubah port jetty karena pengalaman tadi malam saat saya menjalan project java dari maven yg memerlukan server jetty namun port defaultnya jetty yaitu 8080 sudah dipake oleh oracle di localhost, sehingga mau tidak mau saya harus merubah port jetty atau merubah port oracle supaya jetty dapat starter, dan stelah saya googling-googling akhirnya dapet cara untuk merubah port jetty dan tidaklah susah.. tinggal mengetikkan satu baris di dalam terminal dan jangan lupa menjalankan jetty didalam root program yang ingin dijalankan.ini codenya :

mvn -Djetty.port=9999 jetty:run

yang artinya nanti portnya berubah menjadi 9999 yang dari sebelumnya 8080. cukup sekian semoga bisa membantu yang sedang belajar maven.. Semangat 😀

Merubah Tampilan Java Desktop

Dalam postingan kali ini saya ingin berbagi cerita tentang bagaimana membuat tampilan java desktop supaya menjadi lebih cantik karena secara default tampilan java tidak gitu enak di pandang (kotak kotak), namun cukup menambakan sedikit source dan mengimport sedikit library tampilan java bisa berubah menjadi wah, jauh dari yg dbayakan dan diomongkan orang orang kalo tampilan java itu jelek dan lebih bagus pemrograman ini dan itu. dibawah ini nanti saya kasih screenshotnya. 😀

default
tampilan default java

mac
tampilan mac

aero
tampilan Aero

grapite
tampilan graphite

acry
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:

lookandfeel
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..

http://bahrie127.googlecode.com/files/LibTokoBuku.zip

Previous Older Entries