Kali ini saya akan coba memberikan contoh aplikasi CRUD sederhana, yang saya bangun menggunakan JSP dan digabung dengan MySQL sebagai databasenya. Yang ingin mengetahui bagaimana membuat CRUD dengan JSP.
Pertama-tama yang harus dibuat adalah database, buka aplikasi MySQL atau bisa menggunakan tool-tool DBMS seperti Apache Tomcat, XAMPP, phpmyadmin atau mysql workbench,
CREATE TABLE IF NOT EXISTS `biodata` (
kode varchar(5) NOT NULL,
nama varchar(45) NOT NULL,
kelamin varchar(20) NOT NULL,
alamat varchar(100) NOT NULL,
ortu varchar(45) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO biodata (`kode`, `nama`, `kelamin`, `alamat`, `ortu`) VALUES
(‘11111’, ‘Ghazali’, ‘Laki-laki’, ‘Sigli’, ‘Zulkifli’),
(‘11112’, ‘Julinda’, ‘Perempuan’, ‘Ulim’, ‘Yusuf’),
(‘11113’, ‘Monicha’, ‘Perempuan’, ‘Bambi’, ‘Rahman’),
(‘11113’, ‘Andrian’, ‘Laki-laki’, ‘Bambi’, ‘Ramli’),
(‘11115’, ‘Andrian’, ‘Laki-laki’, ‘Krung’, ‘Ramli’),
(‘12345’, ‘Reza’, ‘Laki-laki’, ‘Desa’, ‘Kure’);
Buatlah sebuah project dengan nama apa saja terserah anda namun disini penulis menggunakan nama “jsp” dan buatlah file jspnya seperti syntax dan filenya dibawah ini: index.jsp
<%@page import=”java.sql.DriverManager”%>
<%@page import=”java.sql.ResultSet”%>
<%@page import=”java.sql.Statement”%>
<%@page import=”java.sql.Connection”%>
<%@page contentType=”text/html” pageEncoding=”UTF-8″%>
<!DOCTYPE html>
<html>
<head>
Pertama-tama yang harus dibuat adalah database, buka aplikasi MySQL atau bisa menggunakan tool-tool DBMS seperti Apache Tomcat, XAMPP, phpmyadmin atau mysql workbench,
CREATE TABLE IF NOT EXISTS `biodata` (
kode varchar(5) NOT NULL,
nama varchar(45) NOT NULL,
kelamin varchar(20) NOT NULL,
alamat varchar(100) NOT NULL,
ortu varchar(45) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO biodata (`kode`, `nama`, `kelamin`, `alamat`, `ortu`) VALUES
(‘11111’, ‘Ghazali’, ‘Laki-laki’, ‘Sigli’, ‘Zulkifli’),
(‘11112’, ‘Julinda’, ‘Perempuan’, ‘Ulim’, ‘Yusuf’),
(‘11113’, ‘Monicha’, ‘Perempuan’, ‘Bambi’, ‘Rahman’),
(‘11113’, ‘Andrian’, ‘Laki-laki’, ‘Bambi’, ‘Ramli’),
(‘11115’, ‘Andrian’, ‘Laki-laki’, ‘Krung’, ‘Ramli’),
(‘12345’, ‘Reza’, ‘Laki-laki’, ‘Desa’, ‘Kure’);
Buatlah sebuah project dengan nama apa saja terserah anda namun disini penulis menggunakan nama “jsp” dan buatlah file jspnya seperti syntax dan filenya dibawah ini: index.jsp
<%@page import=”java.sql.DriverManager”%>
<%@page import=”java.sql.ResultSet”%>
<%@page import=”java.sql.Statement”%>
<%@page import=”java.sql.Connection”%>
<%@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>
<title>JSP Page</title>
</head>
<body>
Aplikasi Crud JSP dan MySQL
DriverManager.getConnection(Host, “root”, “”);
statement = connection.createStatement();
String Data = “select * from biodata”;
rs = statement.executeQuery(Data);
%>while (rs.next()) {%>
KODE | NAMA | NAMA ORTU | JENIS KELAMIN | ALAMAT | AKSI |
---|---|---|---|---|---|
” >edit / href=”delete.jsp?d=” > hapus |
rs.close();
statement.close();
connection.close();
} catch (Exception ex) {
out.println(“Can’t connect to database.”);
}
%>
</body>
</html>
jika di jalankan maka akan tampil seperti gambar dibawah ini

berikut adalah script untuk membuat form tambah dapat berfungsi
terlebih dahulu buat file tambah.jsp
<%@page import=”javax.swing.JOptionPane”%>
<%@page import=”java.sql.DriverManager”%>
<%@page import=”java.sql.PreparedStatement”%>
<%@page import=”java.sql.Connection”%>
<%@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>
<style type=”text/css”>
*{margin:auto;padding:0;}
#con2{width:500px;padding:30px;}
p{margin-bottom:10px;}
label{display:inline-block;width:150px;}
</style>
</head>
<body>
<%@page import=”javax.swing.JOptionPane”%>
<%@page import=”java.sql.DriverManager”%>
<%@page import=”java.sql.PreparedStatement”%>
<%@page import=”java.sql.Connection”%>
<%@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>
<style type=”text/css”>
*{margin:auto;padding:0;}
#con2{width:500px;padding:30px;}
p{margin-bottom:10px;}
label{display:inline-block;width:150px;}
</style>
</head>
<body>
</body>
</html>
<%
String a=request.getParameter(“kode”);
String b=request.getParameter(“nama”);
String d=request.getParameter(“kelamin”);
String c=request.getParameter(“ortu”);
String e=request.getParameter(“alamat”);
//membuat variabel untuk nampung alamat untuk akses database nantinya.
String url=”jdbc:mysql://localhost:8080/jsp”;
//membuat koneksi ke database dengan jdbc
Connection conn=null;
PreparedStatement ps=null;
Class.forName(“com.mysql.jdbc.Driver”).newInstance();
int updateQuery=0;
//untuk mengecek textbox name, city, dan phone tidak kosong
if(a!=null && b!=null && c!=null && d!=null && e!=null){
if(a!=”” && b!=”” && c!=”” && d!=”” && e!=””){
try{
conn=DriverManager.getConnection(url,”root”,””);
String query=”insert into biodata(kode,nama,kelamin,alamat,ortu)
values(?,?,?,?,?)”;
ps=conn.prepareStatement(query);
ps.setString(1,a);
ps.setString(2,b);
ps.setString(3,c);
ps.setString(4,d);
ps.setString(5,e);
updateQuery=ps.executeUpdate();
if(updateQuery!=0){
JOptionPane.showMessageDialog(null, “Berhasil Tambah Data”);
response.sendRedirect(“index.jsp”);
}
String url=”jdbc:mysql://localhost:8080/jsp”;
//membuat koneksi ke database dengan jdbc
Connection conn=null;
PreparedStatement ps=null;
Class.forName(“com.mysql.jdbc.Driver”).newInstance();
int updateQuery=0;
//untuk mengecek textbox name, city, dan phone tidak kosong
if(a!=null && b!=null && c!=null && d!=null && e!=null){
if(a!=”” && b!=”” && c!=”” && d!=”” && e!=””){
try{
conn=DriverManager.getConnection(url,”root”,””);
String query=”insert into biodata(kode,nama,kelamin,alamat,ortu)
values(?,?,?,?,?)”;
ps=conn.prepareStatement(query);
ps.setString(1,a);
ps.setString(2,b);
ps.setString(3,c);
ps.setString(4,d);
ps.setString(5,e);
updateQuery=ps.executeUpdate();
if(updateQuery!=0){
JOptionPane.showMessageDialog(null, “Berhasil Tambah Data”);
response.sendRedirect(“index.jsp”);
}
}catch(Exception ex){
out.println(“Koneksi bermasalah”);
}finally{
ps.close();
conn.close();
}
}
}
%>
out.println(“Koneksi bermasalah”);
}finally{
ps.close();
conn.close();
}
}
}
%>

jika kita mengklik tambah maka tampilanya seperti gambar di atas
kemudiann membuat form edit atau update
update.jsp
<%@page import=”java.sql.ResultSet”%>
<%@page import=”java.sql.Statement”%>
<%@page import=”javax.swing.JOptionPane”%>
<%@page import=”java.sql.DriverManager”%>
<%@page import=”java.sql.PreparedStatement”%>
<%@page import=”java.sql.Connection”%>
<%@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>
<style type=”text/css”>
*{margin:auto;padding:0;}
#con2{width:500px;padding:30px;}
p{margin-bottom:10px;}
label{display:inline-block;width:150px;}
</style>
</head>
<body>
<%@page import=”java.sql.ResultSet”%>
<%@page import=”java.sql.Statement”%>
<%@page import=”javax.swing.JOptionPane”%>
<%@page import=”java.sql.DriverManager”%>
<%@page import=”java.sql.PreparedStatement”%>
<%@page import=”java.sql.Connection”%>
<%@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>
<style type=”text/css”>
*{margin:auto;padding:0;}
#con2{width:500px;padding:30px;}
p{margin-bottom:10px;}
label{display:inline-block;width:150px;}
</style>
</head>
<body>
Update Data
try {
String Host = “jdbc:mysql://localhost:8080/jsp”;
Connection connection = null;
Statement statement = null;
ResultSet rs = null;
Class.forName(“com.mysql.jdbc.Driver”);
connection = DriverManager.getConnection(Host, “root”, “”);
statement = connection.createStatement();
String u=request.getParameter(“u”);
int num=Integer.parseInt(u);
String Data = “select * from biodata where kode='”+num+”‘”;
rs = statement.executeQuery(Data);
while (rs.next()) {
%>
value=”/>
Nama
value=”/>
Nama Ortu
value=”/>
Jenis Kelamin
Laki-laki
Perempuan
Alamat
value=”/>
rs.close();
statement.close();
connection.close();
} catch (Exception ex) {
out.println(“Can’t connect to database.”);
}
%>
</body>
</html>
<%
String a=request.getParameter(“kode”);
String b=request.getParameter(“nama”);
String c=request.getParameter(“ortu”);
String d=request.getParameter(“kelamin”);
String e=request.getParameter(“alamat”);
//membuat variabel untuk nampung alamat untuk akses database nantinya.
String url=”jdbc:mysql://localhost:8080/jsp”;
//membuat koneksi ke database dengan jdbc
Connection conn=null;
PreparedStatement ps=null;
Class.forName(“com.mysql.jdbc.Driver”).newInstance();
int updateQuery=0;
//untuk mengecek textbox name, city, dan phone tidak kosong
if(a!=null && b!=null && c!=null && d!=null && e!=null){
if(a!=”” && b!=”” && c!=”” && d!=”” && e!=””){
try{
conn=DriverManager.getConnection(url,”root”,””);
String query=”update biodata set nama=?,ortu=?,kelamin=?,alamat=? where
kode='”+a+”‘”;
ps=conn.prepareStatement(query);
ps.setString(1,b);
ps.setString(2,c);
ps.setString(3,d);
ps.setString(4,e);
updateQuery=ps.executeUpdate();
if(updateQuery!=0){
JOptionPane.showMessageDialog(null, “Berhasil Update Data”);
response.sendRedirect(“index.jsp”);
}
}catch(Exception ex){
out.println(“Koneksi bermasalah”);
}finally{
ps.close();
conn.close();
}
}
}
%>
maka tampilan edit atau pdate jika di jalankan akan seperti berikut

kemudian yang terakhir kita akan membuat form delete, untuk script dari form delete hanyalah sedikit, berikut scripnya
delete.jsp
<%@page import=”java.sql.Statement”%>
<%@page import=”java.sql.DriverManager”%>
<%@page import=”java.sql.Connection”%>
<%@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>
<%
String id=request.getParameter(“d”);
int no=Integer.parseInt(id);
try {
Class.forName(“com.mysql.jdbc.Driver”).newInstance();
Connection conn =
DriverManager.getConnection(“jdbc:mysql://localhost:8080/jsp”, “root”, “”);
Statement st = conn.createStatement();
st.executeUpdate(“DELETE FROM biodata WHERE kode = ‘”+no+”‘”);
response.sendRedirect(“index.jsp”);
} catch(Exception e){}
%>
</body>
</html>
<%@page import=”java.sql.Statement”%>
<%@page import=”java.sql.DriverManager”%>
<%@page import=”java.sql.Connection”%>
<%@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>
<%
String id=request.getParameter(“d”);
int no=Integer.parseInt(id);
try {
Class.forName(“com.mysql.jdbc.Driver”).newInstance();
Connection conn =
DriverManager.getConnection(“jdbc:mysql://localhost:8080/jsp”, “root”, “”);
Statement st = conn.createStatement();
st.executeUpdate(“DELETE FROM biodata WHERE kode = ‘”+no+”‘”);
response.sendRedirect(“index.jsp”);
} catch(Exception e){}
%>
</body>
</html>
Tidak ada komentar:
Posting Komentar