BAB II ok

download BAB II ok

of 27

Transcript of BAB II ok

BAB II DASAR TEORI II.1. Teori Tentang Permasalahan II.1.1. Pengertian Bank Oleh karena perbankan memainkan peranan yang sangat penting dalam menyalurkan dana kepada peminjam yang mempunyai kesempatan investasi yang produktif, aktivitas keuangan ini penting untuk menjamin bahwa sistem keuangan dan perekonomian berjalan mulus dan efisien (Frederic S. Mishkin, 2008).

Bank memperoleh dana dengan meminjam dan dengan menerbitkan kewajiban lainnya seperti deposito. Mereka kemudian menggunakan dana-dana tersebut untuk mendapatkan aset seperti surat berharga (sekuritas) dan pinjaman.

II.1.2. Pengertian e Banking Menurut kutipan dari http://basiloe.co.cc/tag/e-bankingbahwa, Internet banking adalah sebuah jaringan internet yang dipergunakan demi kepentingan perbankan atau menggunakan jaringan internet untuk melakukan transaksi perbankan yang dapat dilakuakan di rumah, di kantor atau dimana saja. Untuk itu hanya diperlukan komputer dan koneksi internet.Saat Bank Tradisional ( Bank yang melakukan transaksi di suatu tempat) menjadi online, haruslah memiliki jaringan internet yang sangat luas dan selalu ada selama 24 jam sehingga dapat melayani konsumen melalui sistem InternetBanking. InternetBanking merupakan teknologi canggih dan dapat memberikan lebih banyak informasi daripada tradsional bank yang hanya melayani konsumen yang datang ke suatu tempat untuk bertransaksi langsung.Adapun keuntungan-keuntungan yang dapat dirasakan ialah :1. 2. 3.

InternetBanking lebih menghemat waktu dan biaya (biaya transportasi). Konsumen tidak harus mendatangi bank secara langsung Internetbanking memberi pelayanan selama 24 jam

II - 1

II - 2

4.

Konsumen dapat melakukan transaksi dari manapun dan kapan pun. Bagi pihak Bank :

5.

Mengurangi biaya oprasional, biaya sewa tempat, dan gaji karyawan.

II.1.3. Keamanan e banking Persyaratan dari kemanana internet banking ialah : 1. Confidentiality, ialah sistem harus memastikan bahwa informasi

dikomunikasikan dan disimpan secara aman dan hanya dapat diakses oleh mereka yang berhak saja. 2. Integrity, dimana sistem harus memastikan bahwa informasi dikirimkan secara menyeluruh, lengkap dan dalam keadaan tidak berubah. 3. Availability, ialah sistem yang bertugas mengirimkan, menyimpan dan

memproses informasi dapat digunakan ketika dibutuhkan oleh mereka yang membutuhkannya. 4. Authenticity, ialah dimana sistem harus memastikan bahwa pihak, obyek, dan informasi yang berkomunikasi adalah ril dan bukan palsu. 5. Non-Repudiation, dimana sistem melakukan transaksi tidak harus memastikan bahwa pihak yang transaksi

dapat menolak,

menyangkal

yang telah dilakukannya.

II.1.4. Pemrograman dengan JAVA Pemrograman berorientasi objek atau yang lebih lazim dikenal dengan sebutan asing ObjectOrientedProgramming (OOP) adalah inti dari pemrograman java. Beberapa ciri dari pemrograman berorientasi objek ialah abstraksi (abstraction), pembungkusan (encapsulation), pewarisan (inheritance), dan polimorfisme atau kebanyakrupaan (polymorphism) (Budi Raharjo : 2009: 35). II.1.2.1. Abstraksi Abstraksi adalah pengabstrakan atau penyembunyian kerumitan dari suatu proses. Sebagai contoh seorang programmer tidak perlu mengetahui secara detail bagaimana sebuah tombl dibuat. Yang perlu diketahui adalah bagaimana cara menggunakan objek tombol yang

II - 3

sudah ada (baik data/property maupun method-nya) (Budi Raharjo : 2009: 35). II.1.2.2. Pembungkusan (encapsulation) Proses pembungkusan itu sendiri merupakan suatu cara atau mekanisme dalam melakukan abstraksi. Dalam pemrograman tradisional, proses semacam ini sering dinamakan dengan penyembunyian informasi (information hiding).

Pembungkusan kode dalam pemrograman Java ada tiga tingkat akses yaitu private, protected, dan public. 1. Tingakt akses private, dengan mendeklarasikan data dan method

menggunakanakses prvate, berarti data dan methodhanya bisa diakses oleh kelas yang memilikinya saja. Ini berarti data dan method tersebut tidak bisa diakses oleh kelas-kelas lain yang ada pada program. 2. Tingkat akses protected, ialahsuatu data maupun method yang dideklarasikan dengan tingkat akses protected dapat diakses oleh kelas yang memilikinya dan juga oleh kelas-kelas yang masih memiliki hubungan keturunan. Untuk

mendeklarasikan data atau method dengan tingkat akses protected harus menggunakan keyword protected. 3. Tingkat akses public, data maupun method yang bersifat public dapat diakses oleh semua bagian di dalam program. Data-data atau method yang

dideklarasikan dengan tingkat akses public dapat dikenali atau dapat diakses oleh semua kelas yang ada di dalam program, baik kelas yang masih ada hubungan turunan atau tidak ada sama sekali. II.1.2.3. Pewarisan Model pemrograman berorientasi objek juga menerapkan konsep pewarisan, sama halnya seperti yang terjaci di dunia atau kehidupan nyata. Dalam terminology java, kelas induk dinamakan dengan superclass dan kelas turunan disebut dengan subclass.

II - 4

II.1.5. Arsitektur Client Server dari perspektif web Menurut e book Jeni (2007) Aplikasi web adalah jenis aplikasi yang menggunakan arsitektur client-server. Pada jenis arsitektur ini, sebuah program client terhubung pada sebuah server untuk informasi yang dibutuhkan untuk melengkapi tugas-tugas yang telah diset oleh user. II.1.6. Web Server menurut ebook Jeni (2007) Tugas dari web server sendiri ialah server menerima permintaan-permintaan dari para client web browser dan kemudian meresponnya. Beberapa permintaan yang datang dari client disertai nama dan alamat item yang client cari, sebagaimana beberapa data user yang disediakan. Server menerima permintaan tersebut, memprosesnya, dan kemudian merespon data yang dicari oleh client atau sebuah kode error yang mengindikasikan bahwa item tidak terdapat pada server atau jika terjadi beberapa error lain.

Gambar II 1 Tanggung Jawab Server

II.1.7. Web Client Tugas browser adalah menyediakan user sebuah interface dimana akan meminta server dan menampilkan respon dari server. Ketika user meminta server (sebagai contoh, mendapatkan dokumen, atau mungkin mengirim (submit) sebuah form), browserlah yang memformat permintaan tersebut ke dalam sesuatu yang server dapat mengerti.Begitu server telah selesai memproses permintaan dan kemudian mengirim

II - 5

respon, browser mengambil data yang diperlukan dari respon yang diberikan server dan kemudian merendernya untuk ditampilkan ke user.

II.1.8.

HTML Menurut e book Jeni (2007), HTML ialah sebuah singkatan dari Hypertext Markup Language, HTML dapat dimengerti sebagai sebuah kumpulan perintah-perintah untuk web browser tentang bagaimana menampilkan isi ke user. Itu merupakan standar terbuka yang telah di update oleh W3C atau World Wide Web Consortium.

Karena merupakan sebuah standar terbuka,

setiap orang mengaksesnya, berarti

bahwa browsers dikembangkan dengan standar itu di pikiran. Lebih lanjut berarti bahwa semua browsers mengetahui apa yang dilakukan ketika itu memecahkan HTML, meskipun beberapa browsers yang lebih lama mungkin memiliki permasalahan pada perenderan beberapa halaman yang ditulis menggunakan versi HTML yang lebih baru yang telah diupdate setelah pengembangannya.

II.1.9.

Pengertian HTTP Menurut e book Jeni (2007) HTTP singkatan dari HyperText Transfer Protocol. Merupakan sebuah protokol jaringan dengan fiturfitur Web-specific yang berjalan pada bagian teratas dari dua lapisan protokol lain, TCP dan IP. HTTP menggunakan urutan Request/Response: Sebuah HTTP client membuka koneksi dan mengirim sebuah pesan permintaan pada HTTP server; server kemudian mengirimkan pesan respon, biasanya berisikan resource yang diminta. Setelah mengirimkan respon, server menutup koneksi (membuat HTTP menjadi protokol tanpa status, contoh, tidak memelihara beberapa informasi koneksi diantara transaksi).

II.1.10. HTTP Requests Permintaan-permintaan dari client ke server berisikan informasi tentang macammacam ada dua protocol yang digunakan yaitu GET dan POST, GET adalah method HTTP paling sederhana dan digunakan sebagian besar untuk meminta resource tertentu dari server, apakah berupa halaman web, file gambar grafis, atau sebuah dokumen. Sedangkan POST ialah Jenis permintaan ini didesain seperti browser dapat

II - 6

membuat permintaan kompleks dari server.Mereka didesain sehingga user, melalui browser, dapat mengirim banyak data ke server. Form kompleks secara umum dicapai dengan menggunakan permintaan POST, sebagaimana form sederhana yang

memelukan proses upload file ke server. II.1.10.1. GET Menurut e book Jeni (2007) GET adalah method HTTP paling sederhana dan digunakan sebagian besar untuk meminta resource tertentu dari server, apakah berupa halaman web, file gambar grafis, atau sebuah dokumen, dan lain-lain. GET dapat digunakan untuk mengirim data di atas server, walau dengan beberapa batasan-batasan. Salah satunya Jumlah total karakter yang dapat dienkapsulasi ke dalam permintaan GET adalah terbatas, sehingga untuk situasi dimana banyak data perlu dikirimkan ke server, tidak semua pesan dapat disampaikan. Sementara

keuntungan dari penggunaan GET dalam pengiriman data di atas server adalah permintaan URL dari permintaan GET dapat dibookmark oleh browser. II.1.10.2. POST Menurut e book Jeni (2007) Method POST ialah Jenis permintaan yang didesain seperti browser dapat membuat permintaan kompleks dari server. Mereka didesain sehingga user, melalui browser, dapat mengirim banyak data ke server. Form kompleks secara umum dicapai dengan menggunakan permintaan POST, sebagaimana form sederhana yang memelukan proses upload file ke server. Satu perbedaan yang nyata antara method GET dan POST terletak pada cara GET hanya

mengirimkan data ke server. Seperti yang dinyatakan sebelumnya,

menambahkan data ke URL yang akan mengirim. POST, di sisi lain, mengenkapsulasi atau menyembunyikan data di dalam body pesan (message body) yang dikirim. Ketika server menerima permintaan dan menentukan bahwa itu merupakan sebuah permintaan POST, dapat dilihat dari body pesan data tersebut.

II - 7

II.1.11. HTTP Respons HTTP merespon dari server yang berisi headers dan body pesan, seperti yang permintaan HTTP lakukan.Mereka menggunakan kumpulan header yang berbeda, headers berisi informasi tentang protokol HTTP yang digunakan pada server, sebagaimana tipe dari isi yang dienkapsulasi ke dalam body pesan. Nilai dari tipe isi adalah MIME-type. Ini akan memberitahu browser jika pesan berisi HTML, gambar, atau tipe lainnya. II.1.12. Dynamic dan Static pages Menurut e book Jeni 2(2007), Content statis adalah isi yang statis atau tidak dapat dirubah. Content jenis ini biasanya hanya berada pada storage/penyimpanan dimana server dapat mengaksesnya dan akan diambil berdasarkan permintaan. Ketika mereka dikirim sebagai respon dari server, cara mereka dikirim sama persis seperti ketika mereka berada pada server. Contoh dari content statis meliputi kumpulan artikel surat kabar, gambar keluarga dari galeri foto online dan lain sebagainya. Menurut e book Jeni (2007) dynamic pages ialah page yang berubah menurut input dari user dan halaman dinamis mempunyai lebih banyak flexibilitas dan kegunaan dari pada halaman statis. II.1.13. Pengertian J2EE Web Tier Platform Java 2 Enterprise Edition (J2EE) adalah suatu platform yang diperkenalkan untukdevelopment perusahaan aplikasi dalam suatu component-base.Model aplikasi yangdigunakan pada platform ini adalah model aplikasi distibuted multi-tier (Jeni,2007) Aplikasi multi-tier adalah suatu aplikasi web : layer presentasi (client browser), layer bussines logic (program yang berada pada web server), dan layerpenyimpanan (database yang akan menangani data aplikasi tersebut) terpisah dengan jelas, tetapi secara keseluruhan bertujuan untuk menciptakan sebuah aplikasi bagi user.

Salah satu strata dalam platform J2EE ketika sebelumnya berupa web-tier. Strata ini di uraikan sebagai layer yang saling berhubungan dengan browser dalam rangka

II - 8

menciptakan content yang dinamis. Ada dua teknologi pada layer ini : servlet dan JavaServerPage. II.1.14. Container Container adalah pusat dari konsep aplikasi J2EE,semua komponen J2EE mencakup komponen web (servlet,JSPs) bersandar pada keberadaan suatu Container; tanpa container yang sesuai, mereka tidak akan dapat dijalankan (JENI, 2007).

Gambar II-2 : Containers pada platform J2EE Fitur yang diberikan oleh Container 1. Pendukung Komunikasi. Container menangani semua kode yang penting dari servletuntuk berkomunikasi dengan web server. Tanpa container, developer mungkin harus menuliskan code yang akan menciptakan suatu koneksi dari server ke servlet(dan sebaliknya) dan mengatur bagaimana mereka bertemu satu sama yang lain pada tiap satuan waktu. 2. Management Lifescycle. Container menangani segalanya dalam kehidupan pada servlet, mulai loading class, instatiation dan inisialisasi, dan mengoleksisampah. 3. Pendukung Multithreading. Container mengatur tugas dari urutan waktu yang baru setiap kali suatu servlet dibuat 4. Pendukung JSP. Halaman JSP, dalam memperkerjakan, harus mencompile dalam code Java, mengcompilenya, dan memanggil metode yang sesuai dalam code.

II - 9

II.1.15. Servlet Servlet adalah sebuah class dalam bahasa pemrograman Java yang digunakan untuk meningkatkan kepabiltas dari server sebagai host dari aplikasi yang diakses melalui request-response programming model. Servlet adalah sebuah class java yang meng-implement interface Servlet dan menerima request yang berasal dari class java, web client, atau servlet lain yang membangkitkan response. Servlet juga dipanggil sebagai HTTP Servlet. Hal ini disebakan karena servlets biasanya digunakan dengan HTTP, akan tetap servlet bukanlah merupakan salah satu spesifikasi spesifik dari protokol client-server (Jeni, 2007). Servlet memiliki desain tertentu yang dapat mengatasi segala permasalahan yang melekat pada CGI dan memberikan sebuah solusi java kepada developer untuk

membuat sebuah aplikasi berbasis web. Selain menciptakan sebuah proses yang tidak terlalu membebani server pada saat kedatangan setiap request dari client, dengan menggunakan servlet hanya ada satu proses yang akan menangangi SELURUH request: proses tersebut memerlukan servlet container untuk dijalankan. Pada saat kedatangan request yang baru, container akan menciptakan sebuah thread ringan untuk mengeksekusi servlet.

Servlet juga hanya dimasukkan sekali kedalam memori, baik container yang memasukkannya kedalam memori pada saat server mulai bekerja, maupun pada saat pertama servlet dibutuhkan untuk memberikan service kepada client. Sekali servlet dimasukkan kedalam memori, ia akan bertahan didalam memori, dan siap untuk menangani request yang lain dari client. Hal ini tidaklah sama dengan CGI dimana tiap request dari client akan dimasukkan dan dikeluarkan ke dan dari memori.

Object HttpServletRequest memberikan akses bagi segala informasi terhadap client request, termasuk apa saja bentuk parameter value yang dapat diletakkan pada Http request header, Http request method yang telah mereka gunakan, dan sebagainya.

II - 10

Object HttpServletResponse terdiri dari semua method yang dibutuhkan oleh developeruntuk memproduksi sebuah response yang akan dikirimkan kembali kepada client. Meliputi method-method yang harus di-set pada HTTP response header, untuk mendeklarasikan tipe MIME dari response, sebaik method yang digunakan untuk mengambil instance dari class Java I/O yang akan kita gunakan secara langsung untuk memproduksi output.

II.1.16. Servlet Lifecycle Sebuah servlet telah diatur melalui sebuah lifecycle yang telah dideskripsikan dalam spesifikasi servlet. Servlet Lifecyle mendeskripsikan bagaimana servlet di load, di instantiate, di inisialisasi, di-request service-nya didijalankan. Lifecycle dari servlet dikontrol oleh sebuah kontainer yang telah dibangun oleh servlet.(Jeni, 2007). Lifecycle dari servlet akan memberikan kesempatan bagi servlet engineuntuk mengenali permasalahan dalam hal performance dan CGI resource dan untuk mengenali permasalahan dalam hal performance dan CGI resource dan aspek keamanan pada low-level server API program. Sebuah servlet engine mungkin dapat mengeksekusi semua servlet didalam sebuah Java virtual machine(JVM).

Karena pada dasarnya mereka berada didalam JVM yang Sama, servlet secara efisien dapat melakukan sharing data dengan yang lainnya, tetapi Java mengakses private data dari yang lain haruslah dicegah. Servlet juga membuka kemungkinan untuk untuk melakukan persistence diantara request-request sebagai instance dari object, sehingga dapat menghemat memori lebih banyak daripada full-fledged process.

II.1.16.1 Instantiation Menurut e book Jeni (2007), Pada fase ini , sebuah class servlet akan di load ke dalam memory dan instance-nya akan diciptakan oleh servlet container. Container practice disebut lazy loading. Dengan menggunakan method ini, sebuah servlet class akan di-load kedalam memori, di-instantiate, dan diinisialisasi hanya setelah sebuah request telah dibuat untuknya.

II - 11

Hal ini menjadikan waktu startup menjadi lebih cepat bagi aplikasi, tetapi hal ini juga berarti bahwa ada sedikit overhead yang terjadi pada saat pemanggilan pertama sebuah servlet.Apabila kondisi ini tidak diinginkan, maka tiap servlet dapat dikonfigurasikan untuk di-load pada startup server atau aplikasi.

sebuah servlet dapat melewati fase instantiation sekali per lifetime. Hal ini berarti bahwa hubungan overhead dengan loading pendefinisian servlet class kedalam memori hanya terjadi sekali. Hal ini menunjukkan keuntungan servlet dibandingkan teknologi yang lain.

II.1.16.2 Initialization Menurut e book Jeni (2007), Pada fase ini, servlet akan menjalankan sebuah aplikasi, dimana method yang dipanggil pada fase ini adalah method init(), ia adalah sebuah tanda atau method signature yang menggambarkan pemanggilan servlet dapat dengan mudah untuk di panggil kembali. method akan mengambil sebuah parameter sebagai instance dari sebuah bject ServletConfig. Object ini adalah object yang bertanggung jawab terhadap pemenuhan status dari servlet, objek ini memiliki informasi mengenai konfigurasi dari servlet, ia juga menyediakan sebuah cara bagi servlet untuk mengakses informasi secara luas dari aplikasi dan memfasilitasi untuk menggunakan object dari ServletContext.

II.1.16.3 Service Menurut e book Jeni (2007), fase ini adalah fase dimana sebuah servlet berada di dalam lifetime-nya. Pada fase ini, servlet dapat berkali-kali dipanggil oleh container untuk menyediakan fungsionalitas-nya.method yang akan di-invole oleh servlet container pada fase ini: public void service(ServletRequest req, ServletResponse res)

II - 12

object dari servletRequest dan ServletResponse diberikan kepada sebuah method yang menyediakan method bagi developer untuk meng-extract informasi dari user request dan method untuk membangkitkan. II.1.16.3 Destruction Ada waktu-waktu tertentu dimana sebuah servlet container akan berjalan out of memory, atau untuk mendetekasi jumlah dari memori yang tersisa dengan cara menghapus satu atau lebih instance servlet dari memori. Servlet mana yang dikeluarkan dari memori ditentukan oleh servlet container. Sebuah container juga akan membebaskan instance servlet pada saat container tersebutdi shutdown. Pada saat sebuah servlet telah dihilangkan dari memori, hal iniakan disebut sebagai fasedestruction. Method yang akan dipanggil oleh container sebelum ia selesai adalah methoddestroy(). Disini, servlet kita seharusnya mampu untuk secara eksplisit membebaskan resourceyang harus dihandle seperti koneksi ke database dan sebagainya

II.1.17.Java Server Page (JSP) Menurut e book Budi Susanto JSP Java Server Pages (JSP) merupakan perluasan dari spesifikasi Java Servlet, yang bertujuan untuk menyederhanakan dalam pengembangan suatu content yang dinamis. JSP merupakan bagian dari teknologi J2EE, bersama-sama dengan Servet, EJB, JNDI, XML. JSP dan Servlet bekerja dalam suatu lingkungan web container yangmenyediakan koneksi dan service, sedangkan JSP dan Servlet mengontrolpresentasi data yang dihasilkan dari suatu proses untuk dikirimkan ke client.

II - 13

.

Gambar II-3 Kinerja JSP

Server yang menangani permintaan JSP seperti sebuah kompiler halamanyang menggabungkan template HTML dengan kode Java yang dinyatakanpada elemen JSP.Sebuah JSP ketika akan dijalankan, web container akan memeriksa statusclass servlet terakhir, jika belum Ada atau berstatus lama, maka containerakan melakukan kompilasi terhadap file JSP untuk dihasilkan suatu servletyang menerapka interface HttpJspPage berdasar isi dari halaman JSP.Dari Servlet inilah kemudian dijalankan method _jspService untukmenghasilkan response dengan menggunakan class HttpServletRequest dan HttpServletResponse.

Untuk dapat menggunakan JSP, terdapat dua package tambahan lain : package javax.servlet.jsp(berisi kelas-kelas danmethodutamaJSP) package javax.servlet.jsp.tagtest(berisi kelas-kelas dan method untuk custom tag)

II - 14

Tag asli JSP pada dokumen HTML adalah : Fungsi Komentar Ekspresi (sebagai String) Deklarasi Fragmen Kode Program Contoh