Sebelumnya kita pernah membahas tentang bagaimana instalasi java pada linux. Kali ini penulis akan menjelaskan bagaimana instalasi ruby pada linux.
Ruby adalah bahasa pemrograman dinamis berbasis skrip yang berorientasi obyek. Tujuan dari ruby adalah menggabungkan kelebihan dari semua bahasa-bahasa pemrograman skrip yang ada di dunia. Ruby ditulis dengan bahasa pemrograman C dengan kemampuan dasar seperti Perl dan Python.
Ruby juga memiliki berbagai framework diantaranya adalah
Ruby On Rails (ROR)
Sinatra
Lotus
Padrino
Nyny
Grape
Nancy
dan lain - lain
Baiklah untuk melakukan instalasi ruby pada linux, kita menggunakan RVM (ruby version manager). Berikut adalah tahapan untuk melakukan instalasi ruby pada linux.
Sebelum melakukan install public key dengan gpg2, kita harus melakukan instalasi gpg2 dengan perintah
Kemudian lakukan path pada linux, buka file environment dengan sintak sudo gedit /etc/environment. kemudian masukkan sintak RVM_HOME=/home/rizki/.rvm dan pada bagian PATH masukkan /home/rizki/.rvm/bin, jangan lupa sesuaikan dengan folder anda.
Restart komputer dan cek versi rvm, ruby dan gem dengan perintah
rvm --version
ruby --version
gem --version
Jika anda ingin mengubah versi ruby menjadi versi yang lain, silahkan lakukan perintah berikut untuk mengahapus default ruby yang digunakan.
rvm reset
Kemudian silahkan jalankan perintah berikut untuk memilih ruby yang akan anda gunakan.
rvm alias create default {versi ruby}
berikut adalah contohnya
rvm alias create default 2.3.0
Jika sudah, maka tahap selanjutnya adalah install bundler. Bundler ini sendiri berfungsi untuk mendownload dependency library yang dibutuhkan oleh project kita nantinya. Bedanya bundler dengan gem yaitu gem hanya sebagai penentu dari versi library yang akan kita gunakan sedangkan bundler akan mendownload semua kepentingan dari project dan akan memeriksa apakah sebuah library mempunyai missing dengan library yang lainnya. install bundler dengan perintah.
gem install bundler
kemudian cek versi bundler dengan perintah
bundler --version
Untuk melihat versi ruby yang telah diinstall di pc maka perintahnya
rvm list
jika ingin mengetahui versi release ruby dengan perintah
rvm list known
Untuk menggunakan interpreter ruby dapat dengan menggunakan perintah irb pada terminal. Selanjutnya untuk IDE ruby, penulis menggunakan ruby mine dari produknya jetbrains. Anda dapat menggunakan IDE selain dar ruby mine tapi penulis menyarankan menggunakan ruby mine dikarenakan karena kelangkapan dari fitur ruby mine seperti auto complete, support framework ruby on rails. Download terlebih dahulu di ruby mine. ekstrak pada folder tertentu, beri akses eksekusi pada file rubymine.sh pada folder bin, kemudian jalankan dengan perintah ./rubymine.sh. Secara otomatis IDE tersebut akan membuat shortcut pada linux anda.
Sekian tutorial kali ini dan selamat coding ruby. Terima kasih :).
Setelah melakukan banyak konfigurasi untuk coding java, selanjutnya kita akan belajar tentang framework hibernate. Sebelum kita belajar hibernate, alangkah baiknya kita mengenal terlebih dahulu konsep dari hibernate itu sendiri.
Object Relational Mapping (ORM)
Object Relational Mapping atau lebih sering disebut ORM adalah sebuah konsep dimana sebuah object merupakan representasi dari basis data yang berbasis relational.
Mungkin sedikit bingung dengan pengertian diatas, untuk mempermudah pemahaman, penulis akan memberi contoh berikut.
di dalam basis data yang relational kita mengenal adanya tabel seperti dibawah ini.
Id Barang
Nama Barang
Jenis Barang
Tanggal Kadaluarsa
A001
Rinso
Cair
1 Januari 2016
A002
Tango
Padat
12 September 2015
dengan menggunakan sintak SQL maka querynya adalah sebagai berikut
diatas adalah contoh dengan menggunakan basis data relational, maka berikutnya bagaimana kita menghubungkan dengan pemrograman berorientasi objek. Berikut adalah contoh jika kita membuatnya ke dalam pemrograman berorientasi objek.
Dapat disimpulkan bahwa sebuah class adalah representasi dari sebuah tabel dan sebuah property atau variabel adanya representasi dari kolom pada basis data. Banyak framework dari berbagai bahasa pemrograman yang telah melakukan implementasi dari konsep ORM ini, diantaranya adalah
Hibernate (Java)
Spring Data JPA (Java)
MyBatis (Java)
JPA (Java)
Ebean (Java)
Waterline (Node jS / Javascript)
Ruby On Rails (Ruby)
dan lain - lain
Setelah mengenal konsep ORM, selanjutnya kita akan menggunakan framework hibernate.
Generate Project Hibernate
Untuk membuat project hibernate, kita menggunakan maven. Buka terminal lalu jalankan perintah berikut untuk membuat project dengan maven
Buka project tersebut dengan menggunakan Intellij IDEA dengan cara melakukan import terhadap project, Penulis menggunakan Intellij IDEA versi 14.1.4. Kemudian buka file pom.xml. File ini berisi konfigurasi project maven. Karena kita membutuhkan library hibernate, maka kita akan mendeklarasikannya di dalam file pom.xml ini, berikut adalah konfigurasinya.
Database yang akan kita gunakan adalah hsqldb, database tersebut bersifat embedded artinya dapat dipindahkan ke komputer lain tanpa perlu melakukan banyak konfigurasi. Buatlah sebuah package baru dengan nama domain, pada package ini kita akan memasukkan sebuah class yang berisikan domain - domain yang nantikan akan di mapping oleh hibernate. Pada tutorial kali ini, penulis membuat sebuah class dengan nama Mahasiswa. Jangan lupa untuk membuat getter dan setter dari setiap property.
Berikut penjelasan singkat tentang annotation tersebut
@Entity berfungsi mendeklarasikan bahwa class ini merupakan sebuah class entity yang akan di mapping oleh hibernate.
@Table berfungsi untuk mendeklarasikan nama tabel.
@Id berfungsi untuk mendeklarasikan bahwa property tersebut merupakan primary key.
@Column berfungsi untuk mendeklarasikan definisi dari sebuah kolom.
@Enumerated berfungsi untuk mendeklarasikan bahwa field tersebut adalah berisi value yang hanya dapat dipilih.
@Temporal berfungsi untuk mendeklarasikan tanggal.
Untuk jenis kelamin, buat sebuah class enum seperti berikut
publicenumJenisKelamin{PRIA,WANITA}
Tahap selanjutnya adalah membuat konfigurasi hibernate, buatlah sebuah file hibernate.cfg.xml pada folder resources. Kemudian masukkan konfigurasi seperti dibawah ini
<?xml version='1.0' encoding='utf-8'?><!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"><hibernate-configuration><session-factory><propertyname="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property><propertyname="hibernate.connection.driver_class">org.hsqldb.jdbcDriver</property><propertyname="hibernate.connection.url">jdbc:hsqldb:databaseHSQLDB/BelajarHibernate</property><propertyname="hibernate.hbm2ddl.auto">update</property><propertyname="hibernate.show_sql">true</property><propertyname="hibernate.format_sql">true</property><mappingclass="com.rizki.mufrizal.belajarHibernate.domain.Mahasiswa"/></session-factory></hibernate-configuration>
berikut penjelasan tentang konfigurasi diatas
hibernate.dialect berfungsi untuk mendeklarasikan dialect apa yang akan digunakan, sesuaikan dengan type basis data yang digunakan.
hibernate.connection.driver_class berfungsi untuk mendeklarasikan driver yang akan digunakan.
hibernate.connection.url berfungsi untuk mendeklarasikan url ke sebuah basis data, nama databasenya adalah BelajarHibernate yang nanti akan dibuat sebuah folder BelajarHibernate pada root project.
hibernate.hbm2ddl.auto terdapat beberapa fungsi diantaranya adalah
Create : Jika table sudah ada maka semua akan di drop dan dibuat ulang.
Update : jika table belum ada maka akan dibuat, jika tabel sudah ada maka hanya dilakukan update.
hibernate.show_sql berfungsi untuk menampilkan sintak sql yang dilakukan oleh hibernate.
hibernate.format_sql berfungsi untuk melakukan format sql sehingga mudah dibaca.
mapping berfungsi untuk melakukan mapping terhadap class yang dituju, class disini berasal dari package entiry yang tadinya kita buat.
Langkah selanjutnya buatlah sebuah package repository dan buat sebuah interface di dalamnya dengan nama MahasiswaRepository. Fungsi repository adalah untuk melakukan query terhadap basis data. Berikut adalah codingan dari interface MahasiswaRepository.
Kemudian buat sebuah class dengan nama MahasiswaRepositoryImpl di dalam package repository untuk melakukan implementasi interface tersebut. Berikut kodingan untuk class tersebut.
Pada class diatas terdapat beberapa method CRUD diantaranya adalah save, update, delete, get objek dan get semua data. Masing - masing method mempunyai transaction dan juga dilengkapi dengan try catch. Jika kita menggunakan spring maka fungsi transaction tersebut akan dihandle oleh spring. Selanjutnya agar konfigurasi hibernate dapat di load maka buat sebuah class HibernateUtil, berikut adalah konfigurasinya.
publicclassHibernateUtil{privatestaticfinalSessionFactorysessionFactory;privatestaticfinalMahasiswaRepositoryMAHASISWA_REPOSITORY;static{try{// Create the SessionFactory from standard (hibernate.cfg.xml)// config file.sessionFactory=newAnnotationConfiguration().configure().buildSessionFactory();MAHASISWA_REPOSITORY=newMahasiswaRepositoryImpl(sessionFactory);}catch(Throwableex){// Log the exception.System.err.println("Initial SessionFactory creation failed."+ex);thrownewExceptionInInitializerError(ex);}}publicstaticSessionFactorygetSessionFactory(){returnsessionFactory;}publicstaticMahasiswaRepositorygetMahasiswaRepository(){returnMAHASISWA_REPOSITORY;}}
Dan yang terakhir adalah membuat sebuah main class yang akan berfungsi untuk menjalankan project. Dari generate project maven terdapat sebuah class yaitu App. Gunakan class tersebut untuk main class, dan masukkan codingan berikut ini.
akhirnya selesai juga :D . Untuk mempermudah logging aplikasi maka kita menggunakan bantuan SLF4J, buat sebuah file properties dengan nama log4j pada folder resources dengan konfigurasi berikut.
log4j.rootLogger=DEBUG, file, stdoutlog4j.logger.org.hibernate=DEBUGlog4j.logger.org.hibernate.type=ALL# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppenderlog4j.appender.file.File=logs/LogFile.loglog4j.appender.file.MaxFileSize=5MBlog4j.appender.file.MaxBackupIndex=10log4j.appender.file.layout=org.apache.log4j.PatternLayoutlog4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss:SSS} %C:%L %-5p - %m%n# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.Target=System.outlog4j.appender.stdout.layout=org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss:SSS} %C:%L %-5p - %m%n
Oke untuk logging aplikasi akan dijelaskan pada postingan sekanjutnya :) . Jika sudah maka jalankan aplikasinya dengan perintah berikut.
Jangan lupa sesuaikan dengan package project anda. Sekian tutorial belajar hibernate dan Terima kasih :). Untuk source code lengkap, penulis publish di Belajar Hibernate.
Untuk melakukan coding java, ada beberapa hal yang harus kita lakukan dintaranya adalah
Instalasi JDK (Java Development Kit)
Instalasi build tool java
Instalasi IDE java
Pada tutorial ini, penulis hanya menjelaskan bagaimana instalasi pada sistem operasi linux, penulis mengunakan salah distro linux yaitu ubuntu.
Instalasi OpenJDK
JDK dan JRE yang akan kita gunakan adalah OpenJDK. Beberapa developer sedikit kebingungan untuk menggunakan OpenJDK dikarenakan font yang digunakan pada OpenJDK masih acak - acakan. Untuk mengatasi masalah tersebut, pada artikel ini akan dibahas sedikit bagaimana cara mengatasi masalah font OpenJDK pada ubuntu. Silahkan tambahkan PPA berikut untuk kebutuhan font infinality.
sudo add-apt-repository ppa:no1wantdthisname/ppa
Kemudian lakukan update seperti berikut.
sudo apt update
kemudian lakukan instalasi font infinality seperti berikut.
Pada tutorial kali ini, kita hanya menggunakan maven sebagai build toolnya, silahkan anda download di Maven dan ekstrak pada sebuah folder.
Instalasi JDK dan build tool telah dilakukan, tahap selanjutnya adalah menambahkan environment variabel sehingga variabel tersebut terbaca pada saat kita menggunakan terminal. buka file environment dengan perintah berikut
Download NetBeans pada NetBeans, lalu beri akses eksekusi dengan perintah chmod a+x netbeans.sh. jalankan dengan perintah ./netbeans maka akan muncul GUI instalasi netbeans.
Instalasi Eclipse
Silahkan download pada Eclipse, ekstrak folder tersebut lalu beri akses eksekusi dengan perintah chmod a+x eclipse.sh. dan jalankan eclipse dengan perintah ./eclipse. Untuk memudahkan, maka buatlah shortcut untuk IDE tersebut.
Instalasi IntelliJ IDEA
Download IDE tersebut pada IntelliJ IDEA, lalu ekstrak pada folder tertentu. Di dalam folder tersebut terdapat folder bin yang di dalamnya terdapat file idea.sh, beri akses eksekusi dengan perintah chmod a+x idea.sh lalu jalankan file tersebut dengan perintah ./idea.sh Secara otomatis IDE tersebut akan membuat shortcut pada linux anda.
Sekian tutorial kali ini dan selamat coding java. Terima kasih :).