• Tidak ada hasil yang ditemukan

Web Aplikasi JSP Operasi CRUD

N/A
N/A
Protected

Academic year: 2018

Membagikan "Web Aplikasi JSP Operasi CRUD"

Copied!
11
0
0

Teks penuh

(1)

Web Aplikasi JSP Operasi CRUD

June 23, 2013RenLeave a commentGo to comments

Pada post kali ini tentang membuat web aplikasi sederhana menggunakan JSP. Web aplikasi mempunyai fungsi create, read, update dan delete 1 table.

 Buat satu table dengan nama tbl_buku terdiri dari 5 kolom yaitu ( id_buku int, judul_buku varchar(25), pengarang varchar(25), penerbit varchar(25), jumlah int )

 Buat project Web App dengan NetBeans. New Project -> Java Web

 Pada Sources Package buat empat Java Packages yaitu Bean, DAO, myServlet, myUtil.

 Pada package Bean buat satu kelas Buku. Berikut ini kode javanya.

Nama file : Buku.java

package Bean; /**

*

* @author Kukuh Utama */

public class Buku {

private int bukuID; private String judul; private String pengarang; private String penerbit; private int jumlah; /**

* @return the bukuID */

public int getBukuID() { return bukuID;

} /**

* @param bukuID the bukuID to set */

public void setBukuID(int bukuID) { this.bukuID = bukuID;

} /**

* @return the judul */

public String getJudul() { return judul;

} /**

* @param judul the judul to set */

public void setJudul(String judul) { this.judul = judul;

(2)

/**

* @return the pengarang */

public String getPengarang() { return pengarang;

} /**

* @param pengarang the pengarang to set */

public void setPengarang(String pengarang) { this.pengarang = pengarang;

} /**

* @return the penerbit */

public String getPenerbit() { return penerbit;

} /**

* @param penerbit the penerbit to set */

public void setPenerbit(String penerbit) { this.penerbit = penerbit;

} /**

* @return the jumlah */

public int getJumlah() { return jumlah;

} /**

* @param jumlah the jumlah to set */

public void setJumlah(int jumlah) { this.jumlah = jumlah;

} }

Pada package

myUtil buat satu kelas ConnectionDB. Berikut ini kode javanya. Nama file : ConnectionDB.java

package myUtil;

import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException;

/** *

* @author Kukuh Utama */

(3)

private static Connection connection=null;

public static Connection getConnectionDB(){ if (connection != null)

return connection; else {

try {

String driver = "com.mysql.jdbc.Driver"; String url =

"jdbc:mysql://localhost:3306/db_perpustakaan"; String user = "root";

String password = ""; Class.forName(driver);

connection = DriverManager.getConnection(url, user, password);

} catch (ClassNotFoundException ex) { System.out.println(ex);

} catch (SQLException ex) { System.out.println(ex); }

return connection; }

} }

 Pada package DAObuat satu kelas BukuDao. Berikut ini kode javanya.

Nama file : BukuDao.java

package DAO;

import java.sql.Connection; import java.sql.Statement;

import java.sql.PreparedStatement; import java.sql.ResultSet;

import java.sql.SQLException; import java.util.List;

import java.util.ArrayList; import Bean.Buku;

import java.util.logging.Level; import java.util.logging.Logger; import myUtil.ConnectionDB; /**

*

* @author Kukuh Utama */

public class BukuDao {

private Connection conn;

(4)

conn = ConnectionDB.getConnectionDB(); }

public void addBuku(Buku buku){

try {

String insertQuery="insert into tbl_buku(id_buku, judul_buku, pengarang, penerbit, jumlah) values(?,?,?,?,?)";

PreparedStatement prSt = conn.prepareStatement(insertQuery); prSt.setInt(1, buku.getBukuID());

prSt.setString(2, buku.getJudul()); prSt.setString(3, buku.getPengarang()); prSt.setString(4, buku.getPenerbit()); prSt.setInt(5, buku.getJumlah());

prSt.executeUpdate(); } catch (SQLException ex) {

System.out.println(ex.getMessage()); }

}

public void deleteBukuById(int bukuID){ try {

String deleteQuery="delete from tbl_buku where id_buku=?";

PreparedStatement prSt = conn.prepareStatement(deleteQuery); prSt.setInt(1, bukuID);

prSt.executeUpdate();

} catch (SQLException ex) {

System.out.println(ex.getMessage()); }

}

public Buku findBukuById(int bukuID){

Buku buku = new Buku(); try {

String deleteQuery="select * from tbl_buku where id_buku=?";

PreparedStatement prSt = conn.prepareStatement(deleteQuery); prSt.setInt(1, bukuID);

ResultSet rs = prSt.executeQuery(); while(rs.next()){

buku.setBukuID(bukuID);

(5)

buku.setPengarang(rs.getString(3)); buku.setPenerbit(rs.getString(4)); buku.setJumlah(rs.getInt(5));

}

} catch (SQLException ex) {

System.out.println(ex.getMessage()); }

return buku; }

public void editBuku(Buku buku){ try {

String editQuery="update tbl_buku set judul_buku=?, pengarang=?, penerbit=?, jumlah=? where id_buku=?";

PreparedStatement prSt = conn.prepareStatement(editQuery); prSt.setString(1, buku.getJudul());

prSt.setString(2, buku.getPengarang()); prSt.setString(3, buku.getPenerbit()); prSt.setInt(4, buku.getJumlah()); prSt.setInt(5, buku.getBukuID());

prSt.executeUpdate(); } catch (SQLException ex) {

System.out.println(ex.getMessage()); }

}

public List retrieveBuku(){

List sbuku = new ArrayList(); try {

String retrieveQuery = "select * from tbl_buku"; Statement st = conn.createStatement();

ResultSet rs = st.executeQuery(retrieveQuery); while(rs.next()){

Buku buku = new Buku();

buku.setBukuID(rs.getInt(1)); buku.setJudul(rs.getString(2)); buku.setPengarang(rs.getString(3)); buku.setPenerbit(rs.getString(4)); buku.setJumlah(rs.getInt(5)); sbuku.add(buku);

}

} catch (SQLException ex) {

(6)

ex); }

return sbuku; }

}

 Pada package myServletbuat satu servlet ( New -> Servlet ) dengan nama ServletCRUD. Berikut ini kode javanya.

Nama file : ServletCRUD.java

package myServlet;

import java.io.IOException; import java.io.PrintWriter;

import javax.servlet.ServletException; import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import DAO.BukuDao;

import Bean.Buku;

import javax.servlet.RequestDispatcher; /**

*

* @author Kukuh Utama */

public class ServletCRUD extends HttpServlet { private static String Insert = "/buku.jsp"; private static String Edit = "/edit.jsp";

private static String ListBuku = "/listBuku.jsp";

private BukuDao bukuDao; public ServletCRUD (){ super();

bukuDao = new BukuDao(); }

protected void processRequest(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

String redirectURL="";

String id_buku = request.getParameter("id_buku"); System.out.println("ID Buku"+id_buku);

String act=request.getParameter("action");

if(id_buku != null && act.equalsIgnoreCase("insert")){ int id = Integer.parseInt(id_buku);

Buku buku = new Buku(); buku.setBukuID(id);

buku.setJudul(request.getParameter("judul"));

(7)

buku.setPenerbit(request.getParameter("penerbit"));

buku.setJumlah(Integer.parseInt(request.getParameter("jumlah")));

bukuDao.addBuku(buku); redirectURL = ListBuku;

request.setAttribute("bukus", bukuDao.retrieveBuku()); System.out.println("Record Added Successfully");

} else if(act.equalsIgnoreCase("delete")) { int id = Integer.parseInt(id_buku); bukuDao.deleteBukuById(id);

redirectURL = ListBuku;

request.setAttribute("bukus", bukuDao.retrieveBuku()); System.out.println("Record Deleted Successfully");

} else if(act.equalsIgnoreCase("retrieve")){ redirectURL = ListBuku;

request.setAttribute("bukus", bukuDao.retrieveBuku()); }else if (act.equalsIgnoreCase("editform")){ redirectURL = Edit;

} else if(act.equalsIgnoreCase("update")){

System.out.println("Im Here" +id_buku); int id = Integer.parseInt(id_buku); Buku buku = new Buku();

buku.setBukuID(id);

buku.setJudul(request.getParameter("judul"));

buku.setPengarang(request.getParameter("pengarang")); buku.setPenerbit(request.getParameter("penerbit"));

buku.setJumlah(Integer.parseInt(request.getParameter("jumlah")));

bukuDao.editBuku(buku);

request.setAttribute("buku", buku); redirectURL = ListBuku;

System.out.println("Record updated Successfully"); } else {

redirectURL= Insert; }

RequestDispatcher rd = request.getRequestDispatcher(redirectURL); rd.forward(request, response);

}

// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">

/**

* Handles the HTTP

(8)

* @param request servlet request * @param response servlet response

* @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs

*/

@Override

protected void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException { processRequest(request, response);

} /**

* Handles the HTTP

* <code>POST</code> method. *

* @param request servlet request * @param response servlet response

* @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs

*/

@Override

protected void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException { processRequest(request, response);

} /**

* Returns a short description of the servlet. *

* @return a String containing servlet description */

@Override

public String getServletInfo() { return "Short description"; }// </editor-fold>

}

 Pada folder Web Pages buat tiga file .jsp yaitu buku.jsp, edit.jsp, listBuku.jsp

Nama file : buku.jsp

<%--

Document : buku

Created on : Jun 23, 2013, 2:42:33 PM Author : Administrator

--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%> <!DOCTYPE html>

<html> <head>

(9)

<title>Insert Buku</title> </head>

<body>

<form method="POST" action='ServletCRUD' name="frmAddUser"> <input type="hidden" name="action" value="insert" />

<p><b>Add New Record</b></p> <table>

<tr>

<td>ID Buku</td>

<td><input type="text" name="id_buku" /></td> </tr>

<tr>

<td>Judul Buku</td>

<td><input type="text" name="judul" /></td> </tr>

<tr>

<td>Pengarang</td>

<td><input type="text" name="pengarang" /></td> </tr>

<tr>

<td>Penerbit</td>

<td><input type="text" name="penerbit" /></td> </tr>

<tr>

<td>Jumlah</td>

<td><input type="text" name="jumlah" /></td> </tr>

<tr>

<td></td>

<td><input type="submit" value="Submit" /></td> </tr>

</table> </form>

<p><a href="ServletCRUD?action=retrieve">View-All-Records</a></p> </body>

</html>

Nama file : edit.jsp

Nama file : listBuku.jsp

<%--

Document : listBuku

Created on : Jun 23, 2013, 4:30:16 PM Author : Kukuh Utama

--%>

<%@page import="java.util.List"%>

(10)

<%@page import="Bean.Buku"%> <%@page import="DAO.BukuDao"%> <!DOCTYPE html>

<html> <head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>List Buku</title>

</head> <body> <%

BukuDao bukuDao = new BukuDao();

List <Buku> listBuku = bukuDao.retrieveBuku(); %>

<table border="1"> <tr>

<th>ID Buku</th> <th>Judul Buku</th> <th>Pengarang Buku</th> <th>Penerbit</th>

<th>Jumlah Buku</th>

<th colspan="2"> Action </th> </tr>

<tr> <%

for (Buku buku : listBuku) { %>

<td><%=buku.getBukuID() %></td> <td><%=buku.getJudul() %></td> <td><%= buku.getPengarang() %></td> <td><%= buku.getPenerbit() %></td> <td><%= buku.getJumlah()%></td>

<td><a href="ServletCRUD?action=editform&id_buku=<%=buku.getBukuID() %>">Update</a></td>

<td><a href="ServletCRUD?action=delete&id_buku=<%=buku.getBukuID() %>">Delete</a></td>

</tr> <% } %>

</table>

<p><a href="ServletCRUD?action=insert">Add Buku</a></p> </body>

</html>

 Edit file web.xml yang terletak di folder Configuration File sebagai berikut : Nama file : web.xml

<?xml version="1.0" encoding="UTF-8"?>

(11)

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ ns/javaee/web-app_2_5.xsd">

<servlet>

<servlet-name>ServletCRUD</servlet-name>

<servlet-class>myServlet.ServletCRUD</servlet-class> </servlet>

<servlet-mapping>

<servlet-name>ServletCRUD</servlet-name> <url-pattern>/ServletCRUD</url-pattern> </servlet-mapping>

<session-config> <session-timeout> 30

</session-timeout> </session-config> <welcome-file-list>

<welcome-file>buku.jsp</welcome-file> </welcome-file-list>

Referensi

Dokumen terkait