TUTORIAL 7
1. Bismillah,
hari ini kita akan membuat sebuah project web service (Server & Client),
untuk project Server = Siakad dan untuk Client = ClientSiakad, project yang
akan kita buat memiliki kemampuan CRUD (Create, Read, Update, Delete). Sebelum
membuat project langkah pertama kita buat sebuah database dengan ketentuan
sebagai berikut :
Database name : siakad
Table name : mahasiswa
|
Field
|
Type
|
Panjang
|
|
nim
|
int
|
15
|
|
nama
|
varchar
|
30
|
|
jurusan
|
varchar
|
30
|
|
email
|
varchar
|
20
|
|
alamat
|
varchar
|
50
|
2. Buka
Netbeans 8.2, lalu buat project untuk server, caranya : klik File à
New Project à
Java Web à
Application, lalu beri nama Siakad. Lalu klik Next à
Pilih Server Glassfish 4.1.1, lalu klik Finish.
3. Selanjutnya
buat web service didalam project. Caranya klik kanan pada project Siakad à
New à
Web Service à
Masukkan nama : Mahasiswa dan Package : siakad.mahasiswa
4. Lalu
kita buat koneksi, caranya klik kanan pada Package siakad.mahasiswa à
New à
Java class lalu beri nama koneksiMySQL.
5. Kemudian
untuk script koneksi MySQL dapat menggunakan script berikut :
package
siakad.mahasiswa;
import
java.sql.Connection;
import
java.sql.DriverManager;
import
java.sql.PreparedStatement;
import
java.sql.ResultSet;
/**
*
*
@author Muqorobin, S.Kom
*/
public
class koneksiMySQL {
String
driver = "com.mysql.jdbc.Driver";
String
url = "jdbc:mysql://localhost:3306/siakad";
String
usern = "root";
String
passw = "";
Connection
con;
PreparedStatement
ps;
ResultSet
rs;
public
Connection getCon(){
try{
Class.forName(driver);
con
= DriverManager.getConnection(url, usern, passw);
}catch(Exception
ex) {
System.out.println(ex.getMessage());
}
return
con;
}
}
6. Selanjutnya
setting Library, caranya klik kanan pada project siakad, lalu pilih properties à
Libraries à
Add Library à
MySQL JDBC Driver à Lalu klik Add, terus klik OK.
7. Selanjutnya
kita cek didalam directory Library sudah ada MySQL JDBC Driver apa belum
8. Agar
data MySQL dapat di panggil di Web Service, maka di butuhkan Getter and Setter
Masing-masing data. Caranya klik kanan pada Package siakad.mahasiswa à
New à
Java Class, beri nama mhs
9. Kemudian
masuk script sebagai berikut :
package
siakad.mahasiswa;
/**
*
*
@author Muqorobin, S.Kom
*/
public
class mhs {
private
int nim;
private
String nama, jurusan, email, alamat;
public
int getNim() {
return
nim;
}
public
void setNim(int nim) {
this.nim
= nim;
}
public
String getNama() {
return
nama;
}
public
String getJurusan() {
return
jurusan;
}
public
void setJurusan(String jurusan) {
this.jurusan
= jurusan;
}
public
String getEmail() {
return
email;
}
public
void setEmail(String email) {
this.email
= email;
}
public
String getAlamat() {
return
alamat;
}
public
void setAlamat(String alamat) {
this.alamat
= alamat;
}
}
10. Setelah
itu kita akan membuat method CRUD(Create, Read, Update, Delete) didalam class :
Mahasiswa.java
11. Masukan
script pada halaman class Mahasiswa.java sebagai berikut
package
siakad.mahasiswa;
import
java.sql.Connection;
import
java.sql.DriverManager;
import
java.sql.PreparedStatement;
import
java.sql.ResultSet;
import
java.sql.Statement;
import
java.util.ArrayList;
import
java.util.List;
import
javax.jws.WebService;
import
javax.jws.WebMethod;
import
javax.jws.WebParam;
/**
*
*
@author Muqorobin, S.Kom
*/
@WebService(serviceName
= "Mahasiswa")
public
class Mahasiswa {
/*Panggil
Koneksi MySQL*/
koneksiMySQL
kon = new koneksiMySQL();
Connection
con;
PreparedStatement
ps;
ResultSet
rs;
/*Selesai
Panggil Koneksi MySQL*/
/*Get
Mahasiswa*/
@WebMethod(operationName
= "getMahasiswa")
public
List getMahasiswa(
@WebParam(name
= "nim") int nim) {
List
mahasiswa = new ArrayList();
try
{
Class.forName("com.mysql.jdbc.Driver");
Connection
conn =
DriverManager.getConnection("jdbc:mysql://localhost:3306/siakad",
"root", "");
Statement
st = conn.createStatement();
con
= kon.getCon();
ps
= con.prepareStatement("select * from mahasiswa where nim=?");
ps.setInt(1,
nim);
ResultSet
rst = ps.executeQuery();
while
(rst.next()) {
mahasiswa.add("<div
class=\"form-group\">\n" +
"
<label class=\"control-label
col-sm-1\">NIM</label>\n" +
"
<div class=\"col-sm-2\">\n" +
"
<input type=\"text\" class=\"form-control\"
name=\"nim\"
value=\""+rst.getInt("nim")+"\"
readonly=\"true\">\n" +
"
</div>\n" +
"
</div>\n" +
"
\n" +
"
<div class=\"form-group\">\n" +
"
<label class=\"control-label col-sm-1\">Nama</label>\n"
+
"
<div class=\"col-sm-2\">\n" +
"
<input type=\"text\" class=\"form-control\"
name=\"nama\"
value=\""+rst.getString("nama")+"\">\n" +
"
</div>\n" +
"
</div>\n" +
"
\n" +
"
<div class=\"form-group\">\n" +
"
<label class=\"control-label col-sm-1\">Jurusan</label>\n"
+
"
<div class=\"col-sm-2\">\n" +
"
<input type=\"text\" class=\"form-control\"
name=\"jurusan\"
value=\""+rst.getString("jurusan")+"\">\n"
+
"
</div>\n" +
"
</div>\n" +
"
\n" +
"
<div class=\"form-group\">\n" +
"
<label class=\"control-label
col-sm-1\">Email</label>\n" +
"
<div class=\"col-sm-2\">\n" +
"
<input type=\"text\" class=\"form-control\"
name=\"email\"
value=\""+rst.getString("email")+"\">\n"
+
"
</div>\n" +
"
</div>\n" +
"
\n" +
"
<div class=\"form-group\">\n" +
"
<label class=\"control-label
col-sm-1\">Alamat</label>\n" +
"
<div class=\"col-sm-2\">\n" +
"
<input type=\"text\" class=\"form-control\"
name=\"alamat\"
value=\""+rst.getString("alamat")+"\">\n"
+
"
</div>\n" +
"
</div>");
}
}
catch (Exception ex) {
System.out.println(ex.getMessage());
}
return
mahasiswa;
}
/*Selesai
Get Mahasiswa*/
/*Selesai
Tambah Mahasiswa*/
@WebMethod(operationName
= "addMahasiswa")
public
void addDosen(
@WebParam(name
= "nim") int nim,
@WebParam(name
= "nama") String nama,
@WebParam(name
= "jurusan") String jurusan,
@WebParam(name
= "email") String email,
@WebParam(name
= "alamat") String alamat
)
{
try
{
con
= kon.getCon();
ps
= con.prepareStatement("insert into mahasiswa value (?,?,?,?,?)");
ps.setInt(1,
nim);
ps.setString(2,
nama);
ps.setString(3,
jurusan);
ps.setString(4,
email);
ps.setString(5,
alamat);
ps.executeUpdate();
}
catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
/*Selesai
Tambah Mahasiswa*/
/*Hapus
Mahasiswa*/
@WebMethod(operationName
= "delMahasiswa")
public
void delMahasiswa(
@WebParam(name
= "nim") int nim) {
try
{
con
= kon.getCon();
ps
= con.prepareStatement("delete from mahasiswa where nim = ?");
ps.setInt(1,
nim);
ps.executeUpdate();
}
catch (Exception e) {
System.out.println("Failed
to remove student because " + e.toString());
}
}
/*Selesai
Hapus Mahasiswa*/
/*Edit
Mahasiswa*/
@WebMethod(operationName
= "editMahasiswa")
public
void editMahasiswa(
@WebParam(name
= "nim") int nim,
@WebParam(name
= "nama") String nama,
@WebParam(name
= "jurusan") String jurusan,
@WebParam(name
= "email") String email,
@WebParam(name
= "alamat") String alamat){
try
{
con
= kon.getCon();
ps
= con.prepareStatement("update mahasiswa set
nama=?,jurusan=?,email=?,alamat=? where nim=?");
ps.setString(1,
nama);
ps.setString(2,
jurusan);
ps.setString(3,
email);
ps.setString(4,
alamat);
ps.setInt(5,
nim);
ps.executeUpdate();
}
catch (Exception e) {
System.out.println("Failed
to edit student because " + e.toString());
}
}
/*Selesai
Edit Mahasiswa*/
@WebMethod(operationName
= "tampilMahasiswa")
public
List tampilMahasiswa() {
List
daftar = new ArrayList();
String
sql_daftar = "select * from mahasiswa";
try
{
Class.forName("com.mysql.jdbc.Driver");
Connection
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/siakad",
"root", "");
Statement
stmt = con.createStatement();
ResultSet
rs = stmt.executeQuery(sql_daftar);
while
(rs.next()) {
daftar.add("<td>"
+ rs.getInt("nim") + "</td><td>" +
rs.getString("nama") + "</td><td>" +
rs.getString("jurusan") + "</td><td>" +
rs.getString("email") + "</td><td>" +
rs.getString("alamat") + "</td><td><a
href=\"edit-mhs.jsp?nim=" + rs.getInt("nim") +
"\"><span class=\"glyphicon
glyphicon-edit\"></span></a><br><a
href=\"hapus-mhs.jsp?nim=" + rs.getInt("nim") +
"\"><span class=\"glyphicon
glyphicon-remove\"></span></a></td><tr></tr>");
}
con.close();
}
catch (Exception ex) {
System.out.println(ex.getMessage());
}
return
daftar;
}
}
12. Setelah
seluruh script method CRUD telah siap, maka kita akan membuat Client, Caranya
klik File à
New Project à
Java Web à
Application, lalu beri nama project : ClientSiakad
13. Selanjutnya
koneksikan ClientSiakad dengan Server Siakad, Caranya klik kanan pada project
ClientSiakad à
Lalu pilih New à Pilih Web Service Client, lalu pilih
project à
Browse à
Pilih Siakad – Mahasiswa – klik OK, lalu isi package : client.siakad lalu klik
Finish.
14. Maka
akan muncul Web Service References sebagai berikut










Komentar
Posting Komentar