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
namaun disini tampilan tambah,edit dan hupus itu belum dapat berfungsi karena ini hanya tampilan data yg di imputkan melalui database tadi, untuk membuat tampilan tambah,edit dan hapus dapat berfungsi maka kita harus membuat form tambah,edit dan hapus.
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