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.

Iklan

Pengecekan Nomor Kartu Kredit menggunakan Algoritma Luhn Java Programming

Ternyata dalam digit number kartu kredit itu terdapat pengecekan bila salah satu karakter diganti dengan digit lain maka akan menghasilkan kembalian false. jadi dengan itu tidak mudah dalam pemalsuan nomor kartu kredit karena nomor tersebut di buat dengan algoritma yang secure. Salah satu algoritma yang sering dipakai dalam pengecekan kartu kredit adalah algoritma Luhn (Luhn Algorithm). deskripsinya dapat dibaca disini http://en.wikipedia.org/wiki/Luhn_algorithm.

Bentuk code java untuk pengecekan menggunakan algoritma Luhn dapat dilihat dibawah, code ini saya dapat dari googlecode ๐Ÿ˜€ jadi free untuk digunakan :

public class Luhn
{
        public static boolean Check(String ccNumber)
        {
                int sum = 0;
                boolean alternate = false;
                for (int i = ccNumber.length() - 1; i >= 0; i--)
                {
                        int n = Integer.parseInt(ccNumber.substring(i, i + 1));
                        if (alternate)
                        {
                                n *= 2;
                                if (n > 9)
                                {
                                        n = (n % 10) + 1;
                                }
                        }
                        sum += n;
                        alternate = !alternate;
                }
                return (sum % 10 == 0);
        }
}

Selamat mencoba untuk belajar, siapa tahu bermanfaat dalam dunia kerja nantinya ๐Ÿ˜€
Untuk contoh programnya menyusul. hehe

Sumber : Google Code Luhn.java

Buat schema pada Database Oracle

Kita tahu kalau kita install database oracle, itu berarti kita hanya punya satu database. beda dengan Mysql yang kita dapat membuat banyak database didalamnya, kalau oracle databasenya hanya satu. nah untuk memudahkan dalam pengelompokan table atau pengen buat banyak aplikasi didalam satu database serta untuk memudahkan dalam pembuatan table maka lebih baik pisahkan aplikasi-aplikasi melalui schema. contohnya aplikasi A ada di schema A, aplikasi B ada di schema B. ini juga berguna untuk yang ingin latihan dan supaya lebih mudah dalam latihan pl/sql oracle supaya teratur dan tidak acak-acak’an serta table atau procedure mudah di cari.

dibawah ini adalah script yang saya bikin untuk latihan mengonekkan aplikasi java dengan store procedure yang ada di oracle. jadi setelah oracle di install, coba masuk pakai aplikasi seperti TOAD ataupun SQLDeveloper. setelah itu jalankan di editornya :

CREATE TABLESPACE  "BAHRI_TUTORIAL" 
LOGGING DATAFILE 'D:\tutorial\oracle\BAHRI_TUTORIAL_01.DBF'	 
SIZE 100M	
REUSE AUTOEXTEND ON NEXT 1280K 
MAXSIZE 32767M EXTENT MANAGEMENT LOCAL 
SEGMENT SPACE MANAGEMENT AUTO;

create user BAHRIE_BHE
profile default 
identified by "bahrie_bhe" 
default tablespace BAHRI_TUTORIAL
temporary tablespace TEMP	
account unlock;

grant connect, resource to BAHRIE_BHE;

GRANT UNLIMITED TABLESPACE TO BAHRIE_BHE;

SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE='BAHRIE_BHE';
SELECT * FROM DBA_ROLE_PRIVS WHERE GRANTEE='BAHRIE_BHE';

Selamat Mencoba ๐Ÿ˜€

User Guide TokuBukuApp Project

Masih ingat dengan aplikasi Toko Buku yang pernah saya buat dulu. Dulu waktu saya posting tidak saya sertai dengan user guide cara menjalankan. artikel yang aplikasi toko buku. dan akhirnya sudah bisa didownload di googlecode. silahkan didownload di link dibawah ini :

User Guide TokoBukuApp

Semoga bermanfaat.

I’m Back

Setelah beberapa bulan tidak lagi menulis diblog, semoga postingan ini mengawali lagi tulisan2 yang akan datang ๐Ÿ˜€
sekalian belajar menulis dengan baik. ๐Ÿ˜€

Mempercantik Pagination Codeigniter dengan Bootstrap Twitter

Kalau kita menggunakan Framework Codeigniter (CI) dan membuat pagination, maka tampilan pagination nya sangat standart walaupun tablenya udah pake css yang sangat cantik. ย tetep paginationnya dilihat tidak friendly. nah supaya lebih elok dipandang paginationnya maka kita tambahkan tag-tag bootstrap pada config pagination CI. *asumsi anda sudah tahu cara pakai Codeigniter dan Bootstrap*.

tambahkan kode dibawah ini di atas code ini
$this->pagination->initialize($config);

        $config['full_tag_open'] = '<div class="pagination"><ul>';
        $config['full_tag_close'] = '</ul></div>';

        $config['first_link'] = '&laquo; First';
        $config['first_tag_open'] = '<li class="prev page">';
        $config['first_tag_close'] = '</li>';

        $config['last_link'] = 'Last &raquo;';
        $config['last_tag_open'] = '<li class="next page">';
        $config['last_tag_close'] = '</li>';

        $config['next_link'] = 'Next &rarr;';
        $config['next_tag_open'] = '<li class="next page">';
        $config['next_tag_close'] = '</li>';

        $config['prev_link'] = '&larr; Previous';
        $config['prev_tag_open'] = '<li class="prev page">';
        $config['prev_tag_close'] = '</li>';

        $config['cur_tag_open'] = '<li class="active"><a href="">';
        $config['cur_tag_close'] = '</a></li>';

        $config['num_tag_open'] = '<li class="page">';
        $config['num_tag_close'] = '</li>';

lihatlah dibawah ini ada tampilan pagination standart dari CI :

paginationci

 

dan dibawah ini adalah tampilan setelah dipercantik dengan bootstrap :

paginationbootstrap

Selamat mencoba. ๐Ÿ˜€

Sumber : http://stackoverflow.com/questions/12164114/codeigniter-bootstrap-pagination

Menghilangkan index.php pada project Codeigniter (CI)

Buat file dengan nama .htaccess dan letakan pada root project (sederajat dengan folder application, system). dan isi dengan code dibawah ini :

ada 2 baris perlu di rubah sesuai dengan nama projectnya.

dibaris ini :ย RewriteRule ^(.*)$ /con2/index.php?/$1 [L] ย -> con2 diganti dengan nama project anda.

RewriteRule ^(.*)$ /con2/index.php?/$1 [L] ย  -> con2 diganti dengan nama project anda.


RewriteEngine On
RewriteBase /
#Removes access to the system folder by users.
#Additionally this will allow you to create a System.php
#controller, previously this would not have been possible.
#'system' can be replaced if you have renamed your system folder.
RewriteCond %{REQUEST_URI} ^system.*
RewriteCond $1 !^(index\.php|images|stylesheets|javascript)
RewriteRule ^(.*)$ /con2/index.php?/$1 [L]
#Checks to see if the user is attempting to access a valid file,
#such as an image or css document, if this isn't true it sends
#the request to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /con2/index.php?/$1 [L]

# If we don't have mod_rewrite installed, all 404's
# can be sent to index.php, and everything works as normal.
# Submitted by: ElliotHaughin
ErrorDocument 404 /index.php


selamat mencoba. ๐Ÿ˜€

Previous Older Entries Next Newer Entries