BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01-...

20
BS603 PENGEMBANGAN APLIKASI ENTERPRISE © 2017 - Niko Ibrahim, S.Kom, MIT

Transcript of BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01-...

Page 1: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

BS603

PENGEMBANGAN APLIKASI

ENTERPRISE

© 2017 - Niko Ibrahim, S.Kom, MIT

Page 2: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Silabus BS603

Aturan dan tata cara kuliah

Tujuan Perkuliahan

Materi kuliah

Buku referensi

Tugas dan Quiz

Ujian Tengah dan Akhir Semester

Jadwal Kuliah

Page 3: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Tujuan Perkuliahan

Tujuan Umum:

Mahasiswa mampu memahami pentingnya aplikasi

enterprise di dunia bisnis

Mahasiswa mampu membangun suatu aplikasi berskala

enterprise

Tujuan Khusus:

Mahasiswa memahami teknologi/platform J2EE

Mahasiswa mampu mengimplementasikan Web Component

(JSF) dan Business Component (EJB)

Page 4: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Buku Referensi Wajib Dibaca

Beginning EJB 3

Beginning Java EE 7

Java EE 7 Essensials

Page 5: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Softwares, JDK & Tools

Java JDK 7-8

NetBeans 8 Full Version

(Bundled with GlassFish Server)

MySQL Database

Page 6: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Latar Belakang Aplikasi Enterprise

Dunia bisnis yang semakin kompetitif

Kebutuhan bisnis yang semakin kompleks

Globalisasi: perusahaan terdistribusi antar lokasi (bahkan antar benua)

Bisnis 24x7 melalui Internet, antar negara, Internasionalisasi (perbedaan bahasa, mata uang, dan timezone)

Perlu pengurangan biaya, peningkatan response time

Penyimpanan data yang aman dan reliable

Penyediaan GUI pada customer, staff, supplier, dll.

APLIKASI ENTERPRISEMampu menghadapi perubahan,

kompleksitas, dan dapat diandalkan

(robust)

Page 7: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

The Java Platform (3 parts)

Page 8: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Java Enterprise Edition (Java EE)

Java EE merupakan sekumpulan perangkat (spesifikasi) standar yang khususditujukan untuk membuat aplikasi dan web berskala enterprise.

Java EE dapat dilihat sebagai ‘ekstensi’ dari Java Standard Edition (Java SE)

Ekstensi ini dibutuhkan dalam pengembangan aplikasi yang bersifat:

Terdistribusi

Handal (robust)

Powerful

Highly available

Java EE digunakan untuk membuat dan memanajemen aplikasi-aplikasi berbasisenterprise yang bersifat:

N-tier

Web-enabled

Server-centric

Java EE menyediakan cara yang standar untuk menangani transaksi (menggunakanJTA), pengiriman pesan (menggunakan JMS), dan melakukan penyimpanan data (menggunakan JPA)

Page 9: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Enterprise Application Multitier

Aplikasi enterprise biasanya dirancang sebagai

aplikasi ‘multitier’ yang terdiri dari:

Frontend tier: terdiri dari web framework (eg. JSF)

Middle tier: menyediakan security dan transaction

(proses bisnis)

Backend tier: menyediakan koneksi ke database dan

legacy system (sistem ‘lama’)

Page 10: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

N-Tier di dalam Aplikasi Enterprise

System Services(Security, Transaction, Connector, etc.)

Data Access Logic (Backend tier)

Java EE: Entity Beans

Business Logic (Middle tier)

Java EE: EJB Session Beans

Presentation Logic (Frontend tier)

Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Page 11: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Application Architecture

Page 12: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Layanan CONTAINER pada Java EE

Java EE platform menyediakan API untuk berbagai komponen di setiap tier, dan juga menyediakan layan tambahan seperti naming, injection dan resource management.

Komponen-komponen ini di-deploy di dalam sebuah CONTAINER yang menyediakan layanan runtime.

Dengak kata lain, CONTAINER ini-lah yang bertanggung jawab dalammenyediakan layanan yang dibutuhkan oleh komponen aplikasi pada saat aplikasi tsb dijalankan/diakses oleh user.

Layanan tersebut seperti: menyediakan API, security, akses database, penanganantransaction, penamaan direktori server, pencarian resources server

Contoh Container yang populer:

GlassFish Application Server

JBoss Application Server

Oracle Application Server

IBM Websphere

BEA Weblogic

Page 13: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Statistik Penggunaan Container

Page 14: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Perkembangan Java EE

Page 15: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Java EE 7 – MAIN GOALS

1. Embracing HTML5 JSON & JSF 2.2

2. Higher Productivity JMS API, Client API, CDI, Bean Validation

3. Enterprise Demands Batch Applications, Concurrency Utilities,

Page 16: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Java EE 7 Specification

1. Context & Dependency Injection

2. Bean Validation

3. Java Persistence API (JPA)

4. Object Relational Mapping (ORM)

5. Enterprise JavaBeans (EJB)

6. Callbacks, Timer Service, Authorization

7. Transactions

8. Java Server Faces (JSF)

9. XML & JSon Processing

10. Messaging

11. SOAP Web Services

12. RESTful Web Services

Page 17: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Java EE 7 Architecture

JAVA EE 7 Spec was released in June 2013

Harap baca penjelasan setiap komponen arsitektur tsb di “Java EE 7

Essentials, Chapter 1)

Page 18: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Revisit Pemrograman Web Lanjut

JSF Tags

JSF Managed Bean

Converter dan Validator

Event Handling

Data Tables

Java Persistence API (JPA)

Java Persistence Query Language (JPQL)

Object Relational Mapping (ORM)

Page 19: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Yang harus Anda baca

Beginning Java EE 7: Chapter 1 – Java EE 7 at a

Glance

Java EE 7 Essentials: Chapter 1 – Java Platform,

Enterprise Edition

Page 20: BS603 PENGEMBANGAN APLIKASI ENTERPRISEsi.itmaranatha.org/v2/attachments/article/329/Materi 01- Pengenalan... · NetBeans 8 Full Version ... Java EE: Servlet, JSP, JSF (web), JavaSwing(desktop)

Tugas Mandiri / Kelompok

Silahkan mengerjakan tugas yang diberikan

Untuk info lanjut, hubungi saya via email:

[email protected]

Selamat Belajar!