Upload
kang-asep
View
225
Download
0
Embed Size (px)
Citation preview
8/4/2019 Petemuan 13(Load Data to JTabel)
1/10
Load data to Jtabel
1. Buatlah database dengan nama sekolah.
2. Buatlah tabel Siswa
ketentuannya adalah sbb:
isilah atribut table:
8/4/2019 Petemuan 13(Load Data to JTabel)
2/10
2. Buatlah sebuah projek baru dengan nama Bebas:
buatlah sebuah paket baru dengan nama bebas juga:
bautlah sebuah main class pada paket yang barusaja di buat dengan nama Loaddata.
8/4/2019 Petemuan 13(Load Data to JTabel)
3/10
selanjutnya add liraries
isilah Main celass loaddata dengan kode sbb:
package asep.ViewFulcoding;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;import java.sql.ResultSetMetaData;
import java.sql.SQLException;import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JFrame;import javax.swing.JScrollPane;import javax.swing.JTable;
import javax.swing.SwingUtilities;
import javax.swing.table.DefaultTableModel;
/***
* @author asep
*/public class View {
String url="jdbc:mysql://localhost:3306/sekolah";String username="root";
String password="root";
8/4/2019 Petemuan 13(Load Data to JTabel)
4/10
public View() {
try {
//kode ini digunakan untuk meload mysql driverClass.forName("com.mysql.jdbc.Driver");
//melakukan koneksi ke local host databaseConnection con=DriverManager.getConnection(url,username, password);
Statement statement=con.createStatement();ResultSet rs=statement.executeQuery("select * from sekolah.Siswa");//proses meload query
//mendapatkan meta data dari databaseResultSetMetaData rsmd=rs.getMetaData();
int nomor=rsmd.getColumnCount();//mengitung jumlah kolom
//membuat nama kolom tabelString kolom []={"nama depan","nama belakang","alamat"};
//memformat tabel beserta isinyaDefaultTableModel model=new DefaultTableModel();
model.setColumnIdentifiers(kolom);//meneset header kolom
while(rs.next()){//lakukan perulangan sampai akhir dataString data[]=new String[nomor];
for(int i=0;i
8/4/2019 Petemuan 13(Load Data to JTabel)
5/10
public void run() {
new View();//tampilakn program}
});}
}
Keluarannya adalah abb:
Selanjutnya buatlah paket baru lagi dengan nama Load data dengan abstract tabel model.
Buatlah class pojo dengan nama Siswa.
package asep.loadData.dgnTabelModel;
/**
** @author asep
*/
public class Siswa {private String namaDepan;
private String namaBelakang;private String alamat;
public String getAlamat() {
return alamat;}
8/4/2019 Petemuan 13(Load Data to JTabel)
6/10
public void setAlamat(String alamat) {
this.alamat = alamat;
}
public String getNamaBelakang() {return namaBelakang;
}
public void setNamaBelakang(String namaBelakang) {
this.namaBelakang = namaBelakang;}
public String getNamaDepan() {return namaDepan;
}
public void setNamaDepan(String namaDepan) {
this.namaDepan = namaDepan;}
@Override
public boolean equals(Object obj) {
if (obj == null) {return false;
}if (getClass() != obj.getClass()) {
return false;
}final Siswa other = (Siswa) obj;
if ((this.namaDepan == null) ? (other.namaDepan != null) : !this.namaDepan.equals(other.namaDepan)) {
return false;
}if ((this.namaBelakang == null) ? (other.namaBelakang != null) : !
this.namaBelakang.equals(other.namaBelakang)) {return false;
}
if ((this.alamat == null) ? (other.alamat != null) : !this.alamat.equals(other.alamat)) {
return false;}return true;
}
@Override
public int hashCode() {int hash = 7;
hash = 17 * hash + (this.namaDepan != null ? this.namaDepan.hashCode() : 0);
hash = 17 * hash + (this.namaBelakang != null ? this.namaBelakang.hashCode() : 0);hash = 17 * hash + (this.alamat != null ? this.alamat.hashCode() : 0);
return hash;}
8/4/2019 Petemuan 13(Load Data to JTabel)
7/10
}
Buatlaha sebauh kelas baru dengan nama TabelModelSiswa.
isilah class tadi dengan kode:
package asep.loadData.dgnTabelModel;
import java.util.List;
import javax.swing.table.AbstractTableModel;
/**
*
* @author asep*/
public class TabelModelSiswa extends AbstractTableModel{private List list;
public TabelModelSiswa(List list) {
this.list = list;
}
public int getRowCount() {return list.size();
}
public int getColumnCount() {
8/4/2019 Petemuan 13(Load Data to JTabel)
8/10
return 3;
}
public Object getValueAt(int i, int i1) {
switch(i1){case 0:return list.get(i).getNamaDepan();
case 1:return list.get(i).getNamaBelakang();case 2:return list.get(i).getAlamat();default:return null;
}}
@Overridepublic String getColumnName(int column) {
switch(column){case 0:return "nama Depan";
case 1:return "nama Belakang";
case 2:return "Alamat";default:return null;
}}
}
Kemusdian buatlah sebuah main kelas:
dan isilah kode seperti berikut:
package asep.loadData.dgnTabelModel;
import java.sql.Connection;
import java.sql.DriverManager;import java.sql.ResultSet;
import java.sql.SQLException;import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;import java.util.logging.Level;
import java.util.logging.Logger;
8/4/2019 Petemuan 13(Load Data to JTabel)
9/10
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;import javax.swing.table.TableModel;
/**
** @author asep*/
public class tampilTabel {private JTable table=new JTable();
private String url="jdbc:mysql://localhost:3306/sekolah";
private String username="root";private String password="root";
public tampilTabel() {try {
Class.forName("com.mysql.jdbc.Driver");
Connection connection=DriverManager.getConnection(url, username, password);Statement statement=connection.createStatement();
ResultSet rs=statement.executeQuery("select * from sekolah.Siswa");List list=new ArrayList();
while(rs.next()){
Siswa s=new Siswa();s.setNamaDepan(rs.getString("namaDepan"));
s.setNamaBelakang(rs.getString("namaBelakang"));s.setAlamat(rs.getString("alamat"));
list.add(s);
TableModel model=new TabelModelSiswa(list);table.setModel(model);
}
} catch (SQLException ex) {Logger.getLogger(tampilTabel.class.getName()).log(Level.SEVERE, null, ex);
} catch (ClassNotFoundException ex) {Logger.getLogger(tampilTabel.class.getName()).log(Level.SEVERE, null, ex);
}
JFrame frame=new JFrame("contoh dengan tabel model");
frame.add(new JScrollPane(table));frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setSize(300, 200);
frame.setLocationRelativeTo(null);
frame.setVisible(true);}
/**
* @param args the command line arguments*/
public static void main(String[] args) {// TODO code application logic here
new tampilTabel();
8/4/2019 Petemuan 13(Load Data to JTabel)
10/10
}
}
Jika berhasil keluarannya adalah sbb;