(JavaEE) JSF (Java Server Faces) Intro

JavaServer Faces (JSF) is a user interface (UI) framework for Java web applications. It is designed to significantly ease the burden of writing and maintaining applications that run on a Java application server and render their UIs back to a target client. JSF provides ease-of-use in the following ways(Netbeans Site)

Create Project Web Applicetion

30-01-2014 22-42-56

Pilih Framework Java Server Faces

30-01-2014 22-43-26

30-01-2014 22-43-49

30-01-2014 22-45-21

(JavaEE)Konsep JSF (Java Server Faces)

JavaServer Faces (JSF) is a user interface (UI) framework for Java web applications. It is designed to significantly ease the burden of writing and maintaining applications that run on a Java application server and render their UIs back to a target client. JSF provides ease-of-use in the following ways(Netbeans Site)

JSF dapat didefinisikan sebagai sebuah web application framework untuk platform Java Enterprise Edition (Java EE) yang dibuat oleh Apache Software Foundation. JSF adalah sebuah framework yang berfungsi untuk membangun suatu user interface pada suatu aplikasi web. JSF ini dibangun berdasarkan konsep-konsep yang diperkenalkan oleh framework Struts, dan memiliki keuntungan berupa sebuah arsitektur yang benar-benar memisahkan antara bagian business logic dan bagian standard komponen user interface yang dibentuk dengan cara yang hampir sama dengan widget Swing.
Alur Kerja JSF memiliki 3 komponen utama yang terpisah secara jelas, yaitu Model, View dan Controller.
JSF memiliki sebuah controller servlet bagian depan yaitu FacesServlet yang bertanggung jawab untuk menerima request dari client dan menjalankan operasi yang diperlukan untuk menghasilkan response. Operasi ini termasuk menyiapkan komponen-komponen UI yang dibutuhkan untuk request, meng-update status komponen, memanggil action handler yang dibutuhkan (jika ada), dan komponen-komponen UI hasil render yang merupakan bagian dari response dengan struktur framework yang telah dibuat.
Faces menyediakan set sendiri dari komponen-komponen beserta sebuah set library-library untuk memperlihatkan komponen-komponen ini sebagai tag-tag dan sebuah komponen hasil render yang menterjemahkan komponen UI menjadi HTML.
Dibawah ini adalah gambaran detail bagaimana framework JSF bekerja :
JSF

(JavaEE) Implementasi Java Bean dengan JSP 2

Setelah saya membaca beberapa kutipan dari oracle dan beberapa website mas eko, java Bean sangat banyak digunakan pada pemograman java yang berbasis PBO, kenapa kita harus menggunakan java bean? karena dengan menggunakan konsep bean kita dengan mudah membuat entitas yang akan kita panggil.

Edit File HTML seperti dibawah ini untuk menampung data inputan kita

 <%-- 
    Document   : index
    Created on : Jan 29, 2014, 3:27:48 PM
    Author     : Jarod United
--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <form method="post" action="SaveName.jsp">
            Nama : <input type="text" name="username" size="20"> <br />
            Email : <input type="text" name="email" size="20"> <br />
            Usia : <input type="text" name="age" size="20"> <br />
            <p> <input type="submit">
        </form>
        </body>
</html>

Create File JSP dengan nama NextPage.jsp

<%-- 
    Document   : NextPage
    Created on : Jan 29, 2014, 3:36:03 PM
    Author     : Jarod United
--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<jsp:useBean id="user" class="user.UserData" scope="session" />
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
      Nama Anda =  <%= user.getUsername() %> <br />
      Email Anda = <%= user.getEmai()%> <br />
      Usia Anda =  <%= user.getAge()%> <br />
        
    </body>
</html>
 

Create File JSP dengan nama SaveName.jsp

 <%-- 
    Document   : SaveName
    Created on : Jan 29, 2014, 3:34:22 PM
    Author     : Jarod United
--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<jsp:useBean id="user" class="user.UserData" scope="session" />
<jsp:setProperty name="user" property="*" />
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <h1>Data Save Name</h1>
        <a href="NextPage.jsp">  Lanjutkan </a>
    </body>
</html>

Create Java Class Dengan nama UserData.java

 /*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package user;

/**
 *
 * @author Jarod United
 */
public class UserData {
    String username;
    String email;
    int age;
    
    public void setUsername(String value){
        this.username = value;
    }
    public void setEmail(String value){
        this.email = value;
    }
    public void setAge(int value){
        this.age = value;
    }
    
    public String getUsername(){
        return username;
    }
    public String getEmai(){
        return email;
    }
    public int getAge(){
        return age;
    }
}

Sehingga File pada Explorer Seperti ini

30-01-2014 8-12-44

jalankan Dan Hasil output seperti dibawah ini

29-01-2014 15-42-37

29-01-2014 15-42-47

29-01-2014 15-42-54

(JavaEE)Implementasi JavaBeans pada JSP (Java Server Pages)

Setelah saya membaca beberapa kutipan dari oracle dan beberapa website mas eko, java Bean sangat banyak digunakan pada pemograman java yang berbasis PBO, kenapa kita harus menggunakan java bean? karena dengan menggunakan konsep bean kita dengan mudah membuat entitas yang akan kita panggil.

Kita langsung ke Lembar contoh

Create Project – Pilih Java Web

29-01-2014 15-09-06

Pilih server Apache Tomcat agar lebih mudah untuk menjalankannya

29-01-2014 15-09-19

Buat Package Pada Java Package dengan nama terseah agan dan create class

 /*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package dede;

import java.util.Date;

/**
 *
 * @author Jarod United
 */
public class HelloBean implements java.io.Serializable {
         private String Param1;
    private Date param2 = new Date();
    
    public String getParam1(){
        return Param1;
    }
    public void setParam1(String param1){
        this.Param1 = param1;
    }
    
    public Date getParam2(){
        return param2;
    }
    
    public void setParam2(Date param2){
        this.param2 = param2;
    }
    
    public String toString(){
        return "SampleBean [param1=" + Param1 + ", param2=" + param2 + "]"; // tempat menampung data dari jsp

    }
}

Create File JSP

 <%-- 
    Document   : newjsp
    Created on : Jan 29, 2014, 3:00:24 PM
    Author     : Jarod United
--%>

<%@page language="java" contentType="text/html;charset=UTF-8" %>

<%@page import="dede.HelloBean"%>

<html>

<head>

    <title>Java Code Geeks Snippets - Use a Bean in JSP Page</title>

</head>

<body>

    <jsp:useBean id="sampleBean" class="dede.HelloBean" scope="session">

        <%-- intialize bean properties --%>

        <jsp:setProperty name="sampleBean" property="param1" value="value1" />

    </jsp:useBean>

    Sample Bean: <%= sampleBean %>

    <jsp:getProperty name="sampleBean" property="param1" />

    <jsp:getProperty name="sampleBean" property="param2" />

</body>
</html>

Maka Bentuk dari Project properties agan seperti ini

29-01-2014 15-16-44

Coba Dijalankan

29-01-2014 15-04-05

(JAVAEE)Pengenalan Java Bean

Java Beans adalah kelas POJO yang serializable (implements java.io.Serializable), kelas Java Beans memiliki default contructor (constructor tanpa parameter), atribut yang ada di Java Beans harus private dan diakses oleh metode getter dan setter. http://khannedy.com/category/java/

 /*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package dede;

import java.util.Date;

/**
 *
 * @author Jarod United
 */
public class HelloBean implements java.io.Serializable {
         private String Param1;
    private Date param2 = new Date();
    
    public String getParam1(){
        return Param1;
    }
    public void setParam1(String param1){
        this.Param1 = param1;
    }
    
    public Date getParam2(){
        return param2;
    }
    
    public void setParam2(Date param2){
        this.param2 = param2;
    }
    
    public String toString(){
        return "SampleBean [param1=" + Param1 + ", param2=" + param2 + "]";

    }
}

(JavaEE) Quartz Framework _ scheduling service

Screenshot - 07072013 - 09:45:19 AM

What is Quartz?
Enterprise Job Scheduler

Quartz is a full-featured, open source job scheduling service that can be integrated with, or used along side virtually any Java application – from the smallest stand-alone application to the largest e-commerce system. Quartz can be used to create simple or complex schedules for executing tens, hundreds, or even tens-of-thousands of jobs; jobs whose tasks are defined as standard Java components that may execute virtually anything you may program them to do. The Quartz Scheduler includes many enterprise-class features, such as support for JTA transactions and clustering.

Quartz is freely usable, licensed under the Apache 2.0 license.

Please read our overview for more quick information.

Referensi : http://www.quartz-scheduler.org/

(JavaFX)Pallate for JavaFX (Scene Builder)

Salam semangat, wah wah gak jauh beda dengan kesemangatan yang di berikan. hari ini ane full di depan laptop karena ane gak ada jadwal di kampus jadi ane sempatkan untuk menambah referensi, karena ilmu itu nyata dan tak ada batasnya, semua yang ada di dunia ini tidak akan pernah merasa ilmu itu cukup, apa lagi kita yang mengambil bidang di dunia yang tidak nyata, mari sempatkan lah untuk bermain dengan dunia yang tidak nyata sepuas puas agan.

Tampilan di java sebenarnya banyak yang mengembangkan, dari beberapa macam itu menurut ane gak ada yang sesempurna, karena tampilan yang baik itu memberikan tampilan yang dapat mengubah usernya, dalam keadaan duka maka mereka akan menjadi ceria, Tampilan Swing,AWT dan JavaFX, nah kali ini kita akan membahas tampilan javaFX, karena menurut ane tampilan yang di berikan oleh javaFX lebih menarik dan simple. banyak yang mengeluh katanya membuat tampilan di javaFX secara code, ternyata tidak. ada Pallate yang di gunakan untuk memudahkan membuat sebuah tampilan. Scene Builder nah langsung aja agan download link di bawah ini.

Screenshot - 06242013 - 03:53:48 PM

http://www.oracle.com/technetwork/java/javafx/overview/index.html

Terus install seperti biasa

(JavaEE)Hibernate Validator _ Membuat Validasi pada sebuah entitas

Salam semangat, sudah lama kita tidak bersue(berjumpa)di blog ini, ane lagi banyak buanget kesibukan dengan kuliah dan tugas, tapi ane selalu menyempatkan kan untuk mencari sesuatu yang baru untuk di pahami dan di pelajari, satu minggu ane di gembleng dengan tugas dan tugas itu ane kerjakan dengan teman teman yang bukan satu kelompok, tapi tidak salah nya kalo kita membagi apa yang kita bisa. saya ingatkan kepada semua agan-agan agar membagi ilmunya kepada yang membutuhkan, karena ilmu kalo tidak di bagi maka ilmu itu akan hilang dengan bagaimananya.

Hibernate Validator 5.x is the reference implementation for JSR 349 – Bean Validation 1.1 of which Red Hat is the specification lead.

JSR 349 – Bean Validation defines a metadata model and API for JavaBean validation as well as method validation. The default metadata source are annotations, with the ability to override and extend the meta-data through the use of XML validation descriptors. The API is not tied to a specific application tier or programming model. It is specifically not tied to either the web tier or the persistence tier, and is available for both server-side application programming, as well as rich client Swing application developer.

Together with the reference implementation, Hibernate provides also the Bean Validation TCK. You can find more information about the TCK here.

For more information regarding the specification itself refer to beanvalidation.org.

All artifacts described here, namely Hibernate Validator 5 as well as Bean Validation API and TCK are provided and distributed by JBoss (Red Hat) under the Apache Software License 2.0.http://www.hibernate.org/subprojects/validator.html

Jadi kalo menurut ane, hibernate validator merupakan framework yang dibuat untuk kemudahan dalam membuat validasi dengan entitas yang di tentukan, banyak sekali bentuk yang di buat oleh team hibernate validator seperti validasi email, pass, ukuran dan sebagainya, agan bisa ke http://docs.oracle.com/javaee/6/tutorial/doc/gircz.html untuk memahami itu semua.

Example hibernate Validator pada entitas

 /*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package hibernate2.entitas;

import javax.persistence.Version;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;


/**
 *
 * @author aerdy
 */
public class Person {
     private int id;
    private String nama;
    private String penyakit;
    private String alamat;

    public Person() {
    }
    @NotNull
    @Size(min = 1,max = 20)
    public String getAlamat() {
        return alamat;
    }
   
    public void setAlamat(String alamat) {
        this.alamat = alamat;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getNama() {
        return nama;
    }

    public void setNama(String nama) {
        this.nama = nama;
    }

    public String getPenyakit() {
        return penyakit;
    }

    public void setPenyakit(String penyakit) {
        this.penyakit = penyakit;
    }
}

(Java)ASCII Seni Desain Annabe dengan java AWT

Kode Standar Amerika untuk Pertukaran Informasi atau ASCII (American Standard Code for Information Interchange) merupakan suatu standar internasional dalam kode huruf dan simbol seperti Hex dan Unicode tetapi ASCII lebih bersifat universal, contohnya 124 adalah untuk karakter “|”. Ia selalu digunakan oleh komputer dan alat komunikasi lain untuk menunjukkan teks. Kode ASCII sebenarnya memiliki komposisi bilangan biner sebanyak 7 bit. Namun, ASCII disimpan sebagai sandi 8 bit dengan menambakan satu angka 0 sebagai bit significant paling tinggi. Bit tambahan ini sering digunakan untuk uji prioritas. Karakter control pada ASCII dibedakan menjadi 5 kelompok sesuai dengan penggunaan yaitu berturut-turut meliputi logical communication, Device control, Information separator, Code extention, dan physical communication. Code ASCII ini banyak dijumpai pada papan ketik (keyboard) computer atau instrument-instrument digital.
Jumlah kode ASCII adalah 255 kode. Kode ASCII 0..127 merupakan kode ASCII untuk manipulasi teks; sedangkan kode ASCII 128..255 merupakan kode ASCII untuk manipulasi grafik. Kode ASCII sendiri dapat dikelompokkan lagi kedalam beberapa bagian:
Kode yang tidak terlihat simbolnya seperti Kode 10(Line Feed), 13(Carriage Return), 8(Tab), 32(Space)
Kode yang terlihat simbolnya seperti abjad (A..Z), numerik (0..9), karakter khusus (~!@#$%^&*()_+?:”{})
Kode yang tidak ada di keyboard namun dapat ditampilkan. Kode ini umumnya untuk kode-kode grafik.
Dalam pengkodean kode ASCII memanfaatkan 8 bit. Pada saat ini kode ASCII telah tergantikan oleh kode UNICODE (Universal Code). UNICODE dalam pengkodeannya memanfaatkan 16 bit sehingga memungkinkan untuk menyimpan kode-kode lainnya seperti kode bahasa Jepang, Cina, Thailand dan sebagainya.
Pada papan keyboard, aktifkan numlock (tidak terdapat pada laptop), tekan tombol ALT secara bersamaan dengan kode karakter maka akan dihasilkan karakter tertentu. Misalnya: ALT + 44 maka akan muncul karakter koma (,). Mengetahui kode-kode ASCII sangat bermanfaat misalnya untuk membuat karakter-karakter tertentu yang tidak ada di keyboard.(http://id.wikipedia.org/wiki/ASCII)

Kalo menurut ane ASCII merupakan grafik yang beberbentuk text dengan semacam terminal yang dibuat menggunakan text dengan tampilan yang menarik, disini ane cuma membuat tampilan ASCII dengan nama yang kita inginkan. banyak teknik yang dapat digunakan yaitu hanya menggunakan teknik 2D dan library yang sudah ada, disini ane mengguakan AWT sebagai bentuk untuk membuat tampilan nama.

 /*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package asciiexample;

import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;

/**
 *
 * @author victor
 */
public class ASCIIExample {

   public static void main(String[] args) throws IOException {
 
	int width = 200;//lebar yang  di inginkan
	int height = 30;//tinggi yang di inginkan
 
        //BufferedImage image = ImageIO.read(new File("/home/victor/Desktop/logo.jpg"));
	BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
	Graphics g = image.getGraphics();
	g.setFont(new Font("SansSerif", Font.BOLD, 24));
 
	Graphics2D graphics = (Graphics2D) g;
	graphics.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING,
				RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
	graphics.drawString("ANNABE", 10, 20);//nama yang diinginkan
 
	//save this image
	ImageIO.write(image, "png", new File("/home/victor/ascii-art.png"));
 
	for (int y = 0; y < height; y++) {
		StringBuilder sb = new StringBuilder();
		for (int x = 0; x < width; x++) {
 
			sb.append(image.getRGB(x, y) == -16777216 ? " " : "A");
 
		}
 
		if (sb.toString().trim().isEmpty()) {
			continue;
		}
 
		System.out.println(sb);
	}
 
  }
 
}

Screenshot - 06232013 - 10:38:23 AM

(JavaEE)Data Pasein Menggunakan Konsep JPA Hibernate Framework Part2

PENDIDIKAN MERUPAKAN INFESTASI MASA DEPAN

Salam super, ane lanjutkan postingan yang sebelumnya tertunda dengan adanya kegiatan di kampus, ane break postingan ini sudah 1 minggu, karena ane merasa ada hutang dengan blog ini jadi ane sempat – sempatkan untuk posting, banyak cerita yang harus ane sampaikan di blog ini.

tema ini sebenarnya sama dengan tema hibernate yang ane buat sebelumnya, karena menurut ane banyak dapat referensi untuk penggunaan JPA di berbagai framework, sehingga ane lanjutkan aja project itu, tapi sebelumnya ane sampaikan untuk belajar mengenai apa itu hibernate dan apa itu JPA, jangan lupa bahwa semua itu harus memahami sebuah konsep.

Capture

Create project dengan nama Hibernate dan JPA Rumah sakit

Create data base dengan nama hibernaterumahsakit

Create Hibernate Hibernate Configuration Wizard

nama : hibernate
Link Data base : dapat menggunakan server dari netbeans atau setting secara langsung
Capture

Create Mapping Hibernate

Nama : hibernate
Configurasion File : arahkan ke hibernate.cfg.xml
Capture

Create View JFrame dan gunakan komponen seperti di bawah ini

Capture

Create Class Person.java dan tuliskan code dibawah ini

digunakan untuk membuat sebuah entitas atau data yang akan digunakan.

 /*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package hibernate2.entitas;

/**
 *
 * @author aerdy
 */
public class Person {
     private int id;
    private String nama;
    private String penyakit;
    private String alamat;

    public Person() {
    }

    public String getAlamat() {
        return alamat;
    }

    public void setAlamat(String alamat) {
        this.alamat = alamat;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getNama() {
        return nama;
    }

    public void setNama(String nama) {
        this.nama = nama;
    }

    public String getPenyakit() {
        return penyakit;
    }

    public void setPenyakit(String penyakit) {
        this.penyakit = penyakit;
    }
}

Craete class dengan nama HibernateUtil

digunakan untuk menghubungkan session yang ada pada hibernate yang kita buat, karena dengan adanya pembuatan hibernate semua itu tidak dapat di gunakan tanpa data yang sesuai.

 /*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package hibernate2.entitas;

import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;

/**
 *
 * @author aerdy
 */
public class HibernateUtil {
      private static final SessionFactory sessionFactory;
    private static final PersonDAO personDao;

    static {
        try {
            sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory();
            personDao = new PersonDAOImpl(sessionFactory);
        } catch (Throwable e) {
            System.err.println("Inisialisasi sessionFactory gagal "+e);
            throw new ExceptionInInitializerError(e);
        }
    }

    public static PersonDAO getPersonDao() {
        return personDao;
    }

    public static SessionFactory getSessionFactory() {
        return sessionFactory;
    }
}

Create Interface class dengan nama PersonDAO.java dan tuliskan scrip di bawah ini

digunakan untuk membuat deklarasi method dengan konsep interface class, agar memudahkan memanagamnet aplikasi yang kita buat. disini kita membuat aktifitas input,edit,hapus.

 /*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package hibernate2.entitas;

import java.util.List;
import org.hibernate.HibernateException;

/**
 *
 * @author aerdy
 */
public interface PersonDAO {
      public void insert(Person person) throws HibernateException;

    public void update(Person person) throws HibernateException;

    public void delete(Person person) throws HibernateException;

    List  SelectAll() throws HibernateException;

    List GetByName(String nama) throws HibernateException;
}

Create class dengan nama HibernateDAOImp

 /*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package hibernate2.entitas;

import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.criterion.MatchMode;
import org.hibernate.criterion.Restrictions;

/**
 *
 * @author aerdy
 */
public class PersonDAOImpl implements PersonDAO{
     Session session;
    SessionFactory factory;
    Criteria criteria;

    public PersonDAOImpl(SessionFactory factory) {
        this.factory = factory;
    }

    public void insert(Person person) throws HibernateException {
        session = factory.openSession();
        try {
            session.beginTransaction();
            session.save(person);
            session.getTransaction().commit();
            System.out.println("Sukses kang!!!");
        } catch (Exception e) {
            session.getTransaction().rollback();
            e.printStackTrace();
        } finally{
            session.close();
            factory.close();
        }
    }

    public void update(Person person) throws HibernateException {
        session = factory.openSession();
        try {
            session.beginTransaction();
            session.update(person);
            session.getTransaction().commit();
            System.out.println("Sukses kang!!");
        } catch (Exception e) {
            session.getTransaction().rollback();
            e.printStackTrace();
        } finally {
            session.close();
            factory.close();
        }
    }

    public void delete(Person person) throws HibernateException {
        session = factory.openSession();
        try {
            session.beginTransaction();
            session.delete(person);
            session.getTransaction().commit();
        } catch (Exception e) {
            session.getTransaction().rollback();
            e.printStackTrace();
        } finally {
            session.close();
            factory.close();
        }
    }

    public List SelectAll() throws HibernateException {
        session = factory.openSession();
        try {
            criteria = session.createCriteria(Person.class);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            
        }
        return criteria.list();
    }

    public List GetByName(String nama) throws HibernateException {
        session = factory.openSession();
        try {
            criteria = session.createCriteria(Person.class).add(Restrictions.like("nama", nama, MatchMode.ANYWHERE));
            System.out.println("Sukses kang!!");
        } catch (HibernateException e) {
            e.printStackTrace();
        }
        return criteria.list();
    }
}

Create class dengan nama PersonConntrol

digunakan untuk menghubungkan entitas yang digunakan dengan class implement yang kita buat, karena dengan adanya sebuah kontrol ini aplikasi di kontrol dalam class ini, konsep ini sering di sebut dengan MVC.

 /*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package hibernate2.entitas;

import java.util.List;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;

/**
 *
 * @author aerdy
 */
public class PersonController {
   Person person = new Person();
   PersonDAO personDAO = HibernateUtil.getPersonDao();
   String header[] = {"Id", "Nama", "Penyakit", "Alamat"};

    public void insert(String nama, String penyakit, String alamat){
        person.setNama(nama);
        person.setPenyakit(penyakit);
        person.setAlamat(alamat);
        personDAO.insert(person);
    }

    public void update(String id, String nama, String penyakit, String alamat){
        person.setId(Integer.parseInt(id));
        person.setNama(nama);
        person.setPenyakit(penyakit);
        person.setAlamat(alamat);
        personDAO.update(person);
    }

    public void delete(String id, String nama, String penyakit, String alamat){
        person.setId(Integer.parseInt(id));
        person.setNama(nama);
        person.setPenyakit(penyakit);
        person.setAlamat(alamat);
        personDAO.delete(person);
    }

    public void SelectAll(JTable table){
        List list = personDAO.SelectAll();
        Object data[][] = new Object[list.size()][4];
        int i = 0;
        for(Person manusia : list){
            data[i][0] = manusia.getId();
            data[i][1] = manusia.getNama();
            data[i][2] = manusia.getPenyakit();
            data[i][3] = manusia.getAlamat();
            ++i;
        }
        table.setModel(new DefaultTableModel(data, header));
    }

    public void GetByName(String nama, JTable table){
        List list = personDAO.GetByName(nama);
        Object data[][] = new Object[list.size()][4];
        int i = 0;
        for(Person manusia : list){
            data[i][0] = manusia.getId();
            data[i][1] = manusia.getNama();
            data[i][2] = manusia.getPenyakit();
            data[i][3] = manusia.getAlamat();
            ++i;
        }
        table.setModel(new DefaultTableModel(data, header));
    }  
}

Save and Run Program