-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathStudentLeaveDetails.java
132 lines (110 loc) · 4.2 KB
/
StudentLeaveDetails.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
package university.management.system;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.awt.*;
import java.sql.*;
//import net.proteanit.sql.DbUtils;
import java.awt.event.*;
public class StudentLeaveDetails extends JFrame implements ActionListener {
Choice crollno;
JTable table;
JButton search, print, update, add, cancel;
StudentLeaveDetails() {
getContentPane().setBackground(Color.WHITE);
setLayout(null);
JLabel heading = new JLabel("Search by Roll Number");
heading.setBounds(20, 20, 150, 20);
add(heading);
crollno = new Choice();
crollno.setBounds(180, 20, 150, 20);
add(crollno);
try {
Conn c = new Conn();
ResultSet rs = c.s.executeQuery("select * from student");
while(rs.next()) {
crollno.add(rs.getString("rollno"));
}
} catch (Exception e) {
e.printStackTrace();
}
table = new JTable();
try {
Conn c = new Conn();
ResultSet rs = c.s.executeQuery("select * from studentleave");
ResultSetMetaData metaData = rs.getMetaData();
int columnCount = metaData.getColumnCount();
String[] columnNames = new String[columnCount];
for (int i = 1; i <= columnCount; i++) {
columnNames[i - 1] = metaData.getColumnName(i);
}
DefaultTableModel model = new DefaultTableModel(columnNames, 0);
while (rs.next()) {
String[] rowData = new String[columnCount];
for (int i = 1; i <= columnCount; i++) {
rowData[i - 1] = rs.getString(i);
}
model.addRow(rowData);
}
table.setModel(model);
// table.setModel(DbUtils.resultSetToTableModel(rs));
} catch (Exception e) {
e.printStackTrace();
}
JScrollPane jsp = new JScrollPane(table);
jsp.setBounds(0, 100, 900, 600);
add(jsp);
search = new JButton("Search");
search.setBounds(20, 70, 80, 20);
search.addActionListener(this);
add(search);
print = new JButton("Print");
print.setBounds(120, 70, 80, 20);
print.addActionListener(this);
add(print);
cancel = new JButton("Cancel");
cancel.setBounds(220, 70, 80, 20);
cancel.addActionListener(this);
add(cancel);
setSize(900, 700);
setLocation(300, 100);
setVisible(true);
}
public void actionPerformed(ActionEvent ae) {
if (ae.getSource() == search) {
String query = "select * from studentleave where rollno = '"+crollno.getSelectedItem()+"'";
try {
Conn c = new Conn();
ResultSet rs = c.s.executeQuery(query);
ResultSetMetaData metaData = rs.getMetaData();
int columnCount = metaData.getColumnCount();
String[] columnNames = new String[columnCount];
for (int i = 1; i <= columnCount; i++) {
columnNames[i - 1] = metaData.getColumnName(i);
}
DefaultTableModel model = new DefaultTableModel(columnNames, 0);
while (rs.next()) {
String[] rowData = new String[columnCount];
for (int i = 1; i <= columnCount; i++) {
rowData[i - 1] = rs.getString(i); // Adjust getString for other data types
}
model.addRow(rowData);
}
table.setModel(model);
// table.setModel(DbUtils.resultSetToTableModel(rs));
} catch (Exception e) {
e.printStackTrace();
}
} else if (ae.getSource() == print) {
try {
table.print();
} catch (Exception e) {
e.printStackTrace();
}
} else {
setVisible(false);
}
}
public static void main(String[] args) {
new StudentLeaveDetails();
}
}