*
2 * To change this license header, choose License Headers in Project Properties.
3 * To change this template file, choose Tools | Templates
4 * and open the template in the editor.
5 */
6 package biodata;
7 /////ketik koding di bawah ini
8 import java.sql.Connection;
9 import java.sql.Statement;
10 import java.sql.DriverManager;
11 import java.sql.ResultSet;
12 import javax.swing.JOptionPane;
13 import javax.swing.table.DefaultTableModel;
14 ////sampe sini
15 /**
16 *
17 * @author Fajar
18 */
19 public class form_crud extends javax.swing.JFrame {
20 /////ketik koding di bawah ini
21 Connection con;
22 Statement stat;
23 ResultSet res;
24 String kode;
25 ////sampe sini
26 /**
27 * Creates new form form_crud
28 */
29 public form_crud() {
30 initComponents();
31 /////ketik koding di bawah ini
32 tampilkan_data();
33 ////sampe sini
34 }
35
36 /**
37 * This method is called from within the constructor to initialize the form.
38 * WARNING: Do NOT modify this code. The content of this method is always
39 * regenerated by the Form Editor.
40 */
41 @SuppressWarnings("unchecked")
42 // <editor-fold defaultstate="collapsed" desc="Generated Code">
43 private void initComponents() {
44
45 jPanel1 = new javax.swing.JPanel();
46 jLabel1 = new javax.swing.JLabel();
47 jLabel2 = new javax.swing.JLabel();
48 jLabel3 = new javax.swing.JLabel();
49 jLabel4 = new javax.swing.JLabel();
50 jLabel5 = new javax.swing.JLabel();
51 tkode = new javax.swing.JTextField();
52 tnama = new javax.swing.JTextField();
53 talamat = new javax.swing.JTextField();
54 tnotel = new javax.swing.JTextField();
55 jScrollPane1 = new javax.swing.JScrollPane();
56 jTable1 = new javax.swing.JTable();
57 jButton1 = new javax.swing.JButton();
58 jButton2 = new javax.swing.JButton();
59 jButton3 = new javax.swing.JButton();
60
61 setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
62 getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());
63
64 jPanel1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());
65
66 jLabel1.setFont(new java.awt.Font("Tahoma", 1, 24)); // NOI18N
67 jLabel1.setText("Biodata");
68 jPanel1.add(jLabel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(200, 0, 100,
69
70 jLabel2.setText("Kode");
71 jPanel1.add(jLabel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 50, -1, -
72
73 jLabel3.setText("Nama");
74 jPanel1.add(jLabel3, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 80, -1, -
75
76 jLabel4.setText("Alamat");
77 jPanel1.add(jLabel4, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 110, -1,
78
79 jLabel5.setText("No Telepon");
80 jPanel1.add(jLabel5, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 140, -1,
81 jPanel1.add(tkode, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 50, 250, -
82 jPanel1.add(tnama, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 80, 250, -
83 jPanel1.add(talamat, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 110, 250
84 jPanel1.add(tnotel, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 140, 250,
85
86 jTable1.setModel(new javax.swing.table.DefaultTableModel(
87 new Object [][] {
88 {null, null, null, null},
89 {null, null, null, null},
90 {null, null, null, null},
91 {null, null, null, null}
92 },
93 new String [] {
94 "Title 1", "Title 2", "Title 3", "Title 4"
95 }
96 ));
97 jTable1.addMouseListener(new java.awt.event.MouseAdapter() {
98 public void mouseClicked(java.awt.event.MouseEvent evt) {
99 jTable1MouseClicked(evt);
100 }
101 });
102 jScrollPane1.setViewportView(jTable1);
103
104 jPanel1.add(jScrollPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 200,
105
106 jButton1.setText("Simpan");
107 jButton1.addActionListener(new java.awt.event.ActionListener() {
108 public void actionPerformed(java.awt.event.ActionEvent evt) {
109 jButton1ActionPerformed(evt);
110 }
111 });
112 jPanel1.add(jButton1, new org.netbeans.lib.awtextra.AbsoluteConstraints(110, 170, -1
113
114 jButton2.setText("Ubah");
115 jButton2.addActionListener(new java.awt.event.ActionListener() {
116 public void actionPerformed(java.awt.event.ActionEvent evt) {
117 jButton2ActionPerformed(evt);
118 }
119 });
120 jPanel1.add(jButton2, new org.netbeans.lib.awtextra.AbsoluteConstraints(200, 170, 70
121
122 jButton3.setText("Hapus");
123 jButton3.addActionListener(new java.awt.event.ActionListener() {
124 public void actionPerformed(java.awt.event.ActionEvent evt) {
125 jButton3ActionPerformed(evt);
126 }
127 });
128 jPanel1.add(jButton3, new org.netbeans.lib.awtextra.AbsoluteConstraints(290, 170, -1
129
130 getContentPane().add(jPanel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0
131
132 pack();
133 }// </editor-fold>
134
135 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
136 simpan_data();
137 tampilkan_data();
138 reset();// TODO add your handling code here:
139 }
140
141 private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
142 ubah_data();
143 tampilkan_data();
144 reset();// TODO add your handling code here:
145 }
146
147 private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
148 hapus_data();
149 tampilkan_data();
150 reset();// TODO add your handling code here:
151 }
152
153 private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {
154 try{
155 int row = jTable1.getSelectedRow();
156 tkode.setText(jTable1.getValueAt(row, 0).toString());
157 tnama.setText(jTable1.getValueAt(row, 1).toString());
158 talamat.setText(jTable1.getValueAt(row, 2).toString());
159 tnotel.setText(jTable1.getValueAt(row, 3).toString());
160 }catch(Exception e){
161 JOptionPane.showMessageDialog(null, e);
162 }
163 }
164 ////ketik koding di bawah ini
165 private void koneksi(){
166 try{
167 Class.forName("com.mysql.jdbc.Driver");
168 con = DriverManager.getConnection("jdbc:mysql://localhost/db_biodata","root","")
169 stat = con.createStatement();
170 }catch(Exception e){
171 JOptionPane.showMessageDialog(null, e);
172 }
173 }
174 private void simpan_data(){
175 koneksi();
176 try{
177 stat.executeUpdate("INSERT INTO tb_biodata values("
178 + "'" + tkode.getText() + "',"
179 + "'" + tnama.getText() + "',"
180 + "'" + talamat.getText()+ "',"
181 + "'" + tnotel.getText()+"')");
182 stat.close();
183 reset();
184 }catch(Exception e){
185 JOptionPane.showMessageDialog(null, e);
186 }
187 }
188 private void ubah_data(){
189 koneksi();
190 try{
191 stat.executeUpdate("UPDATE tb_biodata SET "
192 + "kode ='"+tkode.getText()+ "',"
193 + "nama ='"+tnama.getText()+"',"
194 + "alamat ='"+talamat.getText()+ "',"
195 + "telepon ='"+tnotel.getText()+"' "
196 + "Where "
197 + "kode ='"+tkode.getText()+"'");
198 stat.close();
199 reset();
200 }catch(Exception e){
201 JOptionPane.showMessageDialog(null, e);
202 }
203 }
204 private void hapus_data(){
205 koneksi();
206 try{
207 stat.executeUpdate("DELETE FROM tb_biodata Where kode ='"+tkode.getText()+"'");
208 stat.close();
209 reset();
210 }catch(Exception e){
211 JOptionPane.showMessageDialog(null, e);
212 }
213 }
214 private void tampilkan_data(){
215 DefaultTableModel dtm = new DefaultTableModel();
216 dtm.addColumn("Kode");
217 dtm.addColumn("Nama");
218 dtm.addColumn("Alamat");
219 dtm.addColumn("Telepon");
220 try{
221 koneksi();
222 ResultSet res = stat.executeQuery("select * from tb_biodata");
223 while(res.next()){
224 dtm.addRow(new Object[]{
225 res.getString(1),
226 res.getString(2),
227 res.getString(3),
228 res.getString(4)
229 });
230 }
231 jTable1.setModel(dtm);
232 }catch(Exception e){
233 JOptionPane.showMessageDialog(null, e);
234 }
235 }
236 private void reset(){
237 try{
238 tkode.setText("");
239 tnama.setText("");
240 talamat.setText("");
241 tnotel.setText("");
242 }catch(Exception e){
243 JOptionPane.showMessageDialog(null, e);
244 }
245 }
246 ////////sampe sini
247 /**
248 * @param args the command line arguments
249 */
250 public static void main(String args[]) {
251 /* Set the Nimbus look and feel */
252 //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
253 /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel
254 * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/pl
255 */
256 try {
257 for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndF
258 if ("Nimbus".equals(info.getName())) {
259 javax.swing.UIManager.setLookAndFeel(info.getClassName());
260 break;
261 }
262 }
263 } catch (ClassNotFoundException ex) {
264 java.util.logging.Logger.getLogger(form_crud.class.getName()).log(java.util.logging.Level.SE
265 } catch (InstantiationException ex) {
266 java.util.logging.Logger.getLogger(form_crud.class.getName()).log(java.util.logging.Level.SE
267 } catch (IllegalAccessException ex) {
268 java.util.logging.Logger.getLogger(form_crud.class.getName()).log(java.util.logging.Level.SE
269 } catch (javax.swing.UnsupportedLookAndFeelException ex) {
270 java.util.logging.Logger.getLogger(form_crud.class.getName()).log(java.util.logging.Level.SE
271 }
272 //</editor-fold>
273
274 /* Create and display the form */
275 java.awt.EventQueue.invokeLater(new Runnable() {
276 public void run() {
277 new form_crud().setVisible(true);
278 }
279 });
280 }
281
282 // Variables declaration - do not modify
283 private javax.swing.JButton jButton1;
284 private javax.swing.JButton jButton2;
285 private javax.swing.JButton jButton3;
286 private javax.swing.JLabel jLabel1;
287 private javax.swing.JLabel jLabel2;
288 private javax.swing.JLabel jLabel3;
289 private javax.swing.JLabel jLabel4;
290 private javax.swing.JLabel jLabel5;
291 private javax.swing.JPanel jPanel1;
292 private javax.swing.JScrollPane jScrollPane1;
293 private javax.swing.JTable jTable1;
294 private javax.swing.JTextField talamat;
295 private javax.swing.JTextField tkode;
296 private javax.swing.JTextField tnama;
297 private javax.swing.JTextField tnotel;
298 // End of variables declaration
299 }