Konfigurasi Java Persistence API 2 Tanpa Menggunakan XML


Java Programming

Java Programming

Tadi ada yang bertanya, gimana caranya setting koneksi database secara dinamis di JPA, biasanya kan pake XML, dan setelah dibuild projectnya, maka gak bisa diubah lagi secara dinamis. Dia ingin menggunakan koneksi secara dinamis, jadi pengguna bisa menginputkan koneksi manual melalui form.

Ketika JPA versi 1, hal ini tidak dapat dilakukan. JPA 1 masih menggunakan XML untuk melakukan konfigurasinya. Namun sejak versi JPA 2, kita dapat melakukan konfigurasi secara dinamis tanpa menggunakan XML, Caranya?

Pertama biasanya kita Membuat persistence.xml seperti dibawah ini :

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
  <persistence-unit name="DynamicJPAPU" transaction-type="RESOURCE_LOCAL">
    <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
    <properties>
      <property name="javax.persistence.jdbc.url" value="jdbc:derby://localhost:1527/sample"/>
      <property name="javax.persistence.jdbc.password" value="app"/>
      <property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.ClientDriver"/>
      <property name="javax.persistence.jdbc.user" value="app"/>
      <property name="eclipselink.ddl-generation" value="create-tables"/>
    </properties>
  </persistence-unit>
</persistence>

Sekarang hapus bagian konfigurasi koneksi ke database, sehingga menjadi seperti dibawah ini :

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
  <persistence-unit name="DynamicJPAPU" transaction-type="RESOURCE_LOCAL">
    <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
    <properties>
      <property name="eclipselink.ddl-generation" value="create-tables"/>
    </properties>
  </persistence-unit>
</persistence>

Sekarang, untuk membuat EntityManagerFactory-nya, maka kita perlu menggunakan parameter untuk melakukan koneksi, contohnya dibawah ini :

Map<String, String> map = new HashMap<String, String>();
map.put("javax.persistence.jdbc.url", "jdbc:derby://localhost:1527/sample");
map.put("javax.persistence.jdbc.password", "rahasia");
map.put("javax.persistence.jdbc.driver", "org.apache.derby.jdbc.ClientDriver");
map.put("javax.persistence.jdbc.user", "ekoganteng");

EntityManagerFactory factory = Persistence.createEntityManagerFactory("SamplePU", map);

Dan parameter-parameter tersebut bisa diisi melalui form atau apapun. Selamat mencoba 😀

Iklan

Screencast SwingMVC, Teknik Membangun Aplikasi Java Menggunakan Konsep Model-View-Controller


Screencast ini membahas tentang konsep MVC (Model View Controller), dan implementasinya pada aplikasi Java Swing (Java Desktop). Pada screencat ini saya membahas tentang cara pembuatan aplikasi menggunakan konsep MVC dari aplikasi yang sederhana sampai aplikasi CRUD (Create Read Update Delete). Konsep MVC digunakan agar program yang kita buat dapat dibedakan antara Model (Data), View (Tampilan) dan Controller (Pemroses), hal ini dilakukan agar program yang kita bangun dapat lebih mudah dimengerti dan dapat lebih mudah dikembangkan.

SwingMVCSwingMVCSwingMVCSwingMVC

Silahkan download seluruh screencastnya disini :

https://www.mediafire.com/folder/3ai3zluopj8mq/Swing_MVC

Selamat belajar 😀

Screencast SwingMakeOver, Extreme Java GUI Programming


SwingMakeOver merupakan teknik memanipulasi tampilan User Interfaces (Java Swing). Teknik ini dilakukan dengan menggunakan penggambaran agar tampilan komponen-komponen Java Swing seperti TextField, Button dan lain-lain menjadi lebih cantik kelihatannya. Pada Video Tutorial ini saya menjelaskan cara memanipulasi tampilan dari mulai komponen sederhana seperti JButton, JTextField, sampai komponen-komponen kompleks seperti JTable, JList dan JTree. Salah satu contoh hasil dari teknik SwingMakeOver ini adalah, aplikasi yang pernah saya buat, yaitu eMovieRental, eBookLibrary dan ePhoneBook.

Swing Make OverSwing Make OverSwing Make OverSwing Make Over

Silahkan download seluruh video tutorialnya disini :

https://www.mediafire.com/folder/27yde64s117qw/Swing_Make_Over

Selamat Belajar

Custom Validator dalam Java Server Faces 2


Java

Java

Salah satu hal yang sangat memudahkan untuk para pengguna Java Server Faces adalah kemudahan ketika melakukan proses validasi terhadap input yang dimasukkan oleh pengguna website. JSF mendukung pembuatan custom validator, dimana kita dapat membuat validator yang sesuai dengan yang kita inginkan.

Secara default, JSF memiliki validator untuk melakukan validasi seperti angka, tanggal, panjang input, dan lain-lain. Namun JSF tidak memiliki validator untuk melakukan proses validasi terhadap hal yang spesifik, misal validator untuk memvalidasi bahwa input masuk NIM harus sesuai dengan ketentuan Universitas 😀 Oleh karena itu, mau tidak mau, kita harus membuatnya secara manual. Namun pembuatan validator di Java Server Faces sangatlah mudah.

Membuat Kelas Validator

Validator dalam JSF direpresentasikan oleh sebuah interface Validator (javax.faces.validator.Validator), sehingga jika kita akan membuat Validator baru, maka kita harus membuat kelas yang mengimplementasi interface Validator tersebut. Misal saya akan membuat Validator untuk melakukan validasi Nim : Baca lebih lanjut

Instalasi Apache CouchDB di Ubuntu


Apache CouchDB

Apache CouchDB

Apa itu Apache CouchDB? Apache CouchDB Merupakan salah satu database NoSQL yang berbasis dokumen. Apache CouchDB hampir sama dengan MongoDB, namun hal yang menjadikan Apache CouchDB setingkat dibawah MongoDB adalah Apache CouchDB tidak memiliki fasilitas Auto-Sharding seperti MongDB (saat ditulisnya artikel ini).

Pada artikel ini saya akan menjelaskan tentang tahapan instalasi Apache CouchDB pada sistem operasi Ubuntu? Kenapa Ubuntu? Karena saya menggunakan Ubuntu 😀 Dan sampai saat ini saya masih merasa puas menggunakan Ubuntu 😀

Menginstall Dependensi

Sebelum menginstall Apache CouchDB, hal pertama yang diperlukan adalah menginstall seluruh software-software yang diperlukan untuk melakukan proses kompilasi source Apache CouchDB. Ubuntu memberi kemudahan jika kita akan menginstall seluruh software dependensi Apache CouchDB, kita hanya perlu menggunakan perintah : Baca lebih lanjut

Custom Converter dalam Java Server Faces 2


Java

Java

Salah satu kelebihan JSF (Java Server Faces) dibandingkan JSP (Java Server Pages) adalah, JSF memiliki custom converter, yaitu merupakan mekanisme untuk melakukan conversi tipe data secara otomatis. Dalam web, seluruh input data form itu berupa String, sedangkan kenyataannya tidak demikian, misal ada tipe data Integer, Boolean atau ada yang lebih kompleks seperti URL dan lain-lain. Pada artikel ini saya akan bahas tentang cara membuat Custom Converter untuk melakukan proses konversi nilai dari input form html (String) menjadi URL (java.net.URL).

Membuat Kelas Converter

Hal pertama yang perlu kita lakukan untuk melakukan proses konversi adalah membuat kelas converter, dimana pada artikel ini saya membuat sebuah kelas converter untuk melakukan konversi dari String ke URL. Baca lebih lanjut

Nomber XL Baru Saya :D


Karena ditempat saya sekarang ada gangguan telkomsel, jadi nomor AS saya mungkin akan sulit dihubungi, jika ada yang mau menghubungi saya, silahkan hubungi nomor xl saya di 087823298646