import java.awt.*;
import javax.swing.*;
import javax.swing.JTable;
import java.sql.*;
import javax.swing.event.*;
import java.awt.event.*;
import java.util.*;
public class Kei_App extends JFrame {
// 테이블 헤더 데이터
private String[] col_name;
// 테이블에 포함될 데이터
private Object[][] data = new Object[200][2];
// CDID 받을 꺼
JTextField name;
// 생성자
public Kei_App() {
Container cp = getContentPane();
cp.setLayout(new BorderLayout());
name = new JTextField("",10);
name.setCaretColor(Color.blue);
cp.add(new JLabel("그룹코드 : "), BorderLayout.WEST);
cp.add(name, BorderLayout.CENTER);
name.addActionListener( new ActionListener()
{
public void actionPerformed(ActionEvent ae) {
for ( int j = 0 ; j < 200 ; j++ )
{
data[j][0] = "";
data[j][1] = "";
}
//System.out.println("---------");
dataGet(); // 데이터 가져와서
repaint(); // 테이블 리프레쉬
}
}
);
// 테이블 헤더
col_name = new String[] {"CDID","CDNM"};
// 데이터 가꼬 오기
dataGet();
// JTable 객체생성. 이때 인자로 헤더와 데이터를 넘겨준다.
JTable table=new JTable(data,col_name);
// 컬럼 길이 지정, 안 되넝 ;;
table.getColumnModel().getColumn(0).setPreferredWidth(20);
// 테이블을 JScrollPane 에 부착한다.
// JScrollPane은 스크롤바를 가진 pane이다.
JScrollPane scrollPane = new JScrollPane(table);
cp.add(scrollPane, BorderLayout.SOUTH);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void dataGet() {
Connection con=null;
Statement stmt=null;
ResultSet rs=null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
con = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:orcl", "scott", "tiger");
stmt = con.createStatement();
rs = stmt.executeQuery("select cdid,cdnm from table_aa where condi =" + "'" + name.getText().trim().toUpperCase() + "'");
// System.out.println(name.getText().trim());
int i = 0;
while(rs.next()) {
//data[i][0] = rs.getString("cdid");
//data[i][1] = rs.getString("cdnm");
data[i][0] = rs.getString(1);
data[i][1] = rs.getString(2);
// System.out.println(i + " : " + rs.getString("cdid") + ", data[][] : "+ data[i][0]);
i++;
}
}
catch(Exception e) {System.out.println(e);}
finally {
try {
if (con != null)
{
con.close();
}
}
catch (Exception e){}
}
}
// main 메서드
public static void main(String[] args) {
Kei_App Kei_App1 = new Kei_App();
Kei_App1.setSize(500,500);
Kei_App1.setVisible(true);
}
}
에.... 뭐라고 해야 하나.. 뭐.. X 딱 누르면은 커맨드창 까지 다 종료되고..
음.. 뭐라고 해야 하나.. 패널에다가.. .. 좀 바꼈다 ㅋ
댓글