JAVA JTABLE 사용 예제

Programming/JAVA,JSP 2013. 3. 3. 11:20 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.util.ArrayList;

 

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JTable;

import javax.swing.table.AbstractTableModel;

import javax.swing.table.DefaultTableCellRenderer;

import javax.swing.table.DefaultTableColumnModel;

import javax.swing.table.TableCellRenderer;

import javax.swing.table.TableColumn;

import javax.swing.table.TableColumnModel;

import javax.swing.table.TableModel;

 

class Info {

    public String name;

    public int money;

    public long contentLength = 0L;

    public Info(String name, int money)

    {

        this.name = name;

        this.money = money;

    }

}

 

class InfoTableModel extends AbstractTableModel{

    private static final long serialVersionUID = 7932826462497464190L;

    public ArrayList<Info> pages;

 

    public InfoTableModel(){

        pages = new ArrayList<Info>();

    }

    public int getColumnCount() {

        return 2;

    }

    public int getRowCount() {

        return pages.size();

    }

    public void addInfo(Info page){

        int idx = pages.size();

        pages.add(page);

        fireTableRowsInserted(idx, idx); // 반드시 호출해야한다.

    }

    public Object getValueAt(int rowIndex, int columnIndex) {

        Info info = pages.get(rowIndex);

        switch (columnIndex) {

        case 0 :

            return info.name;

        case 1 :

            return info.money;

        case 2 :

            return info.contentLength;

        default :

                return "invalid";

        }

    }

}

class myFrame extends JFrame {

    JTable table;

 

    public myFrame() {

        // TODO Auto-generated constructor stub

        setSize(600, 400);

        setVisible(true);

 

        InfoTableModel model = new InfoTableModel();

        TableColumnModel columnModel = new DefaultTableColumnModel();

        TableCellRenderer renderer = new DefaultTableCellRenderer() ; // 기본구현

        model.addInfo(new Info("김종명",50000));

        model.addInfo(new Info("김종명",40000));

        model.addInfo(new Info("김종명",60000));

       

 

        TableColumn column = new TableColumn(0);

        column.setCellRenderer(renderer); // 이렇게 하지 않아도 알아서 제공된다.

        column.setHeaderValue("name");

        columnModel.addColumn(column);

       

        column = new TableColumn(1);

        column.setHeaderValue("money");

        columnModel.addColumn(column);

            

        table = new JTable(model, columnModel);

        add(table);

    }

 

}

 

public class CarTest3 {

 

    public static void main(String args[]) {

        new myFrame();

    }

}

'Programming > JAVA,JSP' 카테고리의 다른 글

JAVA 선택정렬  (0) 2013.03.03
JAVA 삽입 정렬  (0) 2013.03.03
JAVA executeQuery INSERT DELETE  (0) 2013.03.02
JAVA 데이터베이스 실습 예제 UI  (0) 2013.02.24
JAVA JDBC 튜토리얼 예제 사이트  (0) 2013.02.24

JAVA executeQuery INSERT DELETE

Programming/JAVA,JSP 2013. 3. 2. 12:25 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

JAVA 에서

executeQuery 는 SELECT 시 사용됨


INSERT, DELETE 는

executeUpdate 를 사용함 


executeQuery 는 resultSet을 생성

executeUpdate 는 resultSet 대신 0과 1로 성공적으로 수행되었는지를 반환


예제 코드

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class JDBCEexecuteExample {
       
public static void main(String[] args) throws SQLException {
               
Connection connection = null; // connection reference variable for
                                                                               
// getting
               
// connection
               
Statement statement = null; // Statement reference variable for query
               
// Execution
               
ResultSet resultSet = null; // ResultSet reference variable for saving
                                                                       
// query
               
// result
               
String conUrl = "jdbc:mysql://localhost:3306/";
               
String driverName = "com.mysql.jdbc.Driver";
               
String databaseName = "student";
               
String usrName = "root";
               
String usrPass = "root";
               
try {
                       
// Loading Driver
                       
Class.forName(driverName);
               
} catch (ClassNotFoundException e) {
                       
System.out.println(e.toString());
               
}
               
try {
                       
// Getting Connection
                        connection
= DriverManager.getConnection(conUrl + databaseName,
                                        usrName
, usrPass);
                       
// setting connection autocommit false
                        connection
.setAutoCommit(false);
                       
// Getting reference to connection object
                        statement
= connection.createStatement();
                       
// creating Query String
                       
String updateQuery = "UPDATE student SET NAME='Rajan' WHERE RollNo=1";
                       
String selectQuery = "SELECT * FROM student";
                       
String insertQuery = "INSERT INTO student values(4,'Rohan','MCA','Mumbai')";
                       
String deleteQuery = "DELETE FROM student WHERE RollNo=4";
                       
// Insert Query
                        statement
.executeUpdate(insertQuery);
                       
// Updating Query
                       
int result = statement.executeUpdate(updateQuery);
                       
if (result == 1) {
                               
System.out.println("Table Updated Successfully.......");
                       
}
                       
// Delete Query
                        statement
.executeUpdate(deleteQuery);
                       
// excecuting query
                        resultSet
= statement.executeQuery(selectQuery);
                       
while (resultSet.next()) {
                               
// Didplaying data of tables
                               
System.out.println("Roll No " + resultSet.getInt("RollNo")
                                               
+ ", Name " + resultSet.getString("Name") + ", Course "
                                               
+ resultSet.getString("Course") + ", Address "
                                               
+ resultSet.getString("Address"));
                       
}
               
} catch (Exception e) {
                       
System.out.println(e.toString());
               
} finally {
                       
// Closing connection
                        resultSet
.close();
                        statement
.close();
                        connection
.close();
               
}
       
}
}

'Programming > JAVA,JSP' 카테고리의 다른 글

JAVA 삽입 정렬  (0) 2013.03.03
JAVA JTABLE 사용 예제  (0) 2013.03.03
JAVA 데이터베이스 실습 예제 UI  (0) 2013.02.24
JAVA JDBC 튜토리얼 예제 사이트  (0) 2013.02.24
JAVA 채팅 프로그램 + GUI  (0) 2013.02.23

JAVA 데이터베이스 실습 예제 UI

Programming/JAVA,JSP 2013. 2. 24. 12:51 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

import java.awt.BorderLayout;

import java.awt.GridLayout;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

 

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JList;

import javax.swing.JPanel;


class UI extends JFrame{

    JPanel panel1;

    JPanel panel2;

    JPanel panel3;

    JPanel panel4;

    JList list1;

    JList list2;

    JList list3;

    JList list4;

    JButton updateButton;

   

    public UI()

    {

        JLabel label1 = new JLabel("book_id");

        JLabel label2 = new JLabel("title");

        JLabel label3 = new JLabel("publi");

        JLabel label4 = new JLabel("price");

        String[] listItem1 = { "green", "red", "orange", "dark blue" };

        String[] listItem2 = { "green", "red", "orange", "dark blue" };

        String[] listItem3 = { "green", "red", "orange", "dark blue" };

        String[] listItem4 = { "green", "red", "orange", "dark blue" };

        list1 = new JList(listItem1);

        list2 = new JList(listItem2);

        list3 = new JList(listItem3);

        list4 = new JList(listItem4);

        updateButton = new JButton("Update");

        panel1 = new JPanel(new BorderLayout());

        panel2 = new JPanel(new BorderLayout());

        panel3 = new JPanel(new BorderLayout());

        panel4 = new JPanel(new BorderLayout());

       

        setSize(600,400);

        setVisible(true);

        setLayout(new GridLayout(0, 5));

        add(panel1);

        add(panel2);

        add(panel3);

        add(panel4);

        add(updateButton);

        panel1.add(label1,BorderLayout.NORTH);

        panel2.add(label2,BorderLayout.NORTH);

        panel3.add(label3,BorderLayout.NORTH);

        panel4.add(label4,BorderLayout.NORTH);

        panel1.add(list1,BorderLayout.CENTER);

        panel2.add(list2,BorderLayout.CENTER);

        panel3.add(list3,BorderLayout.CENTER);

        panel4.add(list4,BorderLayout.CENTER);

    }

   

}

public class Test {

       public static Connection makeConnection()

       {

             String url = "jdbc:mysql://localhost/book_db";

             String id = "root";

             String password = "green";

             Connection con = null;

             try {

                    Class.forName("com.mysql.jdbc.Driver");

                    System.out.println("드라이버 적재 성공");

                    con = DriverManager.getConnection(url, id, password);

                    System.out.println("데이터베이스 연결 성공");

             } catch (ClassNotFoundException e) {

                    System.out.println("드라이버를 찾을 없습니다.");

             } catch (SQLException e) {

                    System.out.println("연결에 실패하였습니다.");

             }

             return con;

       }

       public static void main(String arg[]) throws SQLException {

           UI ui = new UI();

           Connection con = makeConnection();

           Statement stmt = con.createStatement();

           ResultSet rs = stmt.executeQuery("SELECT * FROM books");

           while (rs.next()) {

                  int id = rs.getInt("book_id");

                  String title = rs.getString("title");

                  System.out.println(id + " " + title);

           }

       }

}

'Programming > JAVA,JSP' 카테고리의 다른 글

JAVA JTABLE 사용 예제  (0) 2013.03.03
JAVA executeQuery INSERT DELETE  (0) 2013.03.02
JAVA JDBC 튜토리얼 예제 사이트  (0) 2013.02.24
JAVA 채팅 프로그램 + GUI  (0) 2013.02.23
RadioButton exam  (0) 2013.02.03

JAVA JDBC 튜토리얼 예제 사이트

Programming/JAVA,JSP 2013. 2. 24. 10:05 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

JAVA JDBC 튜토리얼 예제 사이트

http://docs.oracle.com/javase/tutorial/jdbc/basics/index.html

http://www.oracle.com/technetwork/java/javase/jdbc/index.html


'Programming > JAVA,JSP' 카테고리의 다른 글

JAVA executeQuery INSERT DELETE  (0) 2013.03.02
JAVA 데이터베이스 실습 예제 UI  (0) 2013.02.24
JAVA 채팅 프로그램 + GUI  (0) 2013.02.23
RadioButton exam  (0) 2013.02.03
[IT]자바의 위기, 한국 IT의 시금석  (0) 2013.02.02

JAVA 채팅 프로그램 + GUI

Programming/JAVA,JSP 2013. 2. 23. 12:11 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

Chat 실습.zip

JAVA 채팅 프로그램 + GUI

 

 

'Programming > JAVA,JSP' 카테고리의 다른 글

JAVA 데이터베이스 실습 예제 UI  (0) 2013.02.24
JAVA JDBC 튜토리얼 예제 사이트  (0) 2013.02.24
RadioButton exam  (0) 2013.02.03
[IT]자바의 위기, 한국 IT의 시금석  (0) 2013.02.02
JAVA 비행기게임  (0) 2013.01.09

RadioButton exam

Programming/JAVA,JSP 2013. 2. 3. 12:23 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

import javax.swing.*;

import javax.swing.border.Border;

 

import java.awt.event.*;

import java.awt.*;

 

class MyFrame extends JFrame implements ActionListener {

 

    private JRadioButton small, medium, large;

    private JRadioButton ane, cafela, cafemo;

    private JLabel text;

    private JPanel topPanel, sizePanel, resultPanel, itemPanel;

 

    private JPanel centerPanel;

   

    public MyFrame() {

        setTitle("라디오 버튼 테스트");

        setSize(300, 150);

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

 

        topPanel = new JPanel();

        JLabel label = new JLabel("어떤 크기의 커피를 주문하시겠습니까?");

        topPanel.add(label);

        add(topPanel, BorderLayout.NORTH);

 

        // centerPanel

        centerPanel = new JPanel();

        add(centerPanel, BorderLayout.CENTER);

        centerPanel.setLayout(new GridLayout(2,1));

       

        // sizePanel

        sizePanel = new JPanel();

        small = new JRadioButton("Small Size");

        medium = new JRadioButton("Medium Size");

        large = new JRadioButton("Large Size");

 

        ButtonGroup size = new ButtonGroup();

        size.add(small);

        size.add(medium);

        size.add(large);

        small.addActionListener(this);

        medium.addActionListener(this);

        large.addActionListener(this);

        sizePanel.add(small);

        sizePanel.add(medium);

        sizePanel.add(large);

        centerPanel.add(sizePanel);

 

        // itemPanel

        itemPanel = new JPanel();

        ane = new JRadioButton("아메리카노");

        cafela = new JRadioButton("카페라떼");

        cafemo = new JRadioButton("카페모카");

 

        ButtonGroup item = new ButtonGroup();

        item.add(ane);

        item.add(cafela);

        item.add(cafemo);

        ane.addActionListener(this);

        cafela.addActionListener(this);

        cafemo.addActionListener(this);

        itemPanel.add(ane);

        itemPanel.add(cafela);

        itemPanel.add(cafemo);

        centerPanel.add(itemPanel);

 

        // resultPanel

        resultPanel = new JPanel();

        text = new JLabel("크기가 선택되지 않았습니다.");

        text.setForeground(Color.red);

        resultPanel.add(text);

        add(resultPanel, BorderLayout.SOUTH);

        setVisible(true);

    }

 

    public void actionPerformed(ActionEvent e) {

        String itemString = null;

        String sizeString = null;

       

       

        if (ane.isSelected()) {

           itemString = "아메리카노";

        }

        else if (cafela.isSelected()) {

           itemString = "카페라떼";

        }

        else if (cafemo.isSelected()) {

           itemString = "카페모카";

        }

 

        if (small.isSelected()) {

           sizeString = "small";

        }

        else if (medium.isSelected()) {

           sizeString = "medium";

        }

        else if (large.isSelected()) {

           sizeString = "large";

        }

        text.setText(itemString + sizeString

               + " 주문하셨습니다.");

       

    }

}

 

public class RadioButtonTest extends JFrame {

    public static void main(String[] args) {

        new MyFrame();

    }

}

 

'Programming > JAVA,JSP' 카테고리의 다른 글

JAVA JDBC 튜토리얼 예제 사이트  (0) 2013.02.24
JAVA 채팅 프로그램 + GUI  (0) 2013.02.23
[IT]자바의 위기, 한국 IT의 시금석  (0) 2013.02.02
JAVA 비행기게임  (0) 2013.01.09
JAVA 오목 게임 #1  (0) 2012.11.23
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

http://www.ddanzi.com/blog/archives/119097


'Programming > JAVA,JSP' 카테고리의 다른 글

JAVA 채팅 프로그램 + GUI  (0) 2013.02.23
RadioButton exam  (0) 2013.02.03
JAVA 비행기게임  (0) 2013.01.09
JAVA 오목 게임 #1  (0) 2012.11.23
JAVA 프레임 안에 프레임  (1) 2012.11.18

JAVA 비행기게임

Programming/JAVA,JSP 2013. 1. 9. 18:15 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

JAVA 비행기게임

Test1013.zip

'Programming > JAVA,JSP' 카테고리의 다른 글

RadioButton exam  (0) 2013.02.03
[IT]자바의 위기, 한국 IT의 시금석  (0) 2013.02.02
JAVA 오목 게임 #1  (0) 2012.11.23
JAVA 프레임 안에 프레임  (1) 2012.11.18
JAVA 다중 계산 계산기  (0) 2012.11.17

JAVA 오목 게임 #1

Programming/JAVA,JSP 2012. 11. 23. 22:07 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

'Programming > JAVA,JSP' 카테고리의 다른 글

[IT]자바의 위기, 한국 IT의 시금석  (0) 2013.02.02
JAVA 비행기게임  (0) 2013.01.09
JAVA 프레임 안에 프레임  (1) 2012.11.18
JAVA 다중 계산 계산기  (0) 2012.11.17
JAVA TCP 통신 예제  (0) 2012.11.17

JAVA 프레임 안에 프레임

Programming/JAVA,JSP 2012. 11. 18. 15:14 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

import java.awt.BorderLayout;

import java.awt.Container;

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;


import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JDesktopPane;

import javax.swing.JFrame;

import javax.swing.JInternalFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;



public class ExJInternalFrame extends JFrame{

    JDesktopPane xDesktop;        //JDesktopPane을 정의한다.

    ToolListener xToolListener = new ToolListener();


    public ExJInternalFrame(String title){

        super(title);

        

        /* 프레임을 닫으면 프로그램을 종료시키도록 설정한다. */

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        

        /* 내용 패널을 BorderLayot으로 정한다. */

        Container cp = getContentPane();

        cp.setLayout(new BorderLayout());


        /* 툴바를 만든다 */

        JPanel tool_bar = new JPanel(new BorderLayout());

        JPanel tool_pnl = new JPanel(new GridLayout(1, 0));

        JButton btn;

        btn = new JButton("Maximize");

        btn.addActionListener(xToolListener);        //액션 이벤트..

        tool_pnl.add(btn);


        btn = new JButton("Minimize");

        btn.addActionListener(xToolListener);

        tool_pnl.add(btn);


        btn = new JButton("Iconify");

        btn.addActionListener(xToolListener);

        tool_pnl.add(btn);


        btn = new JButton("Close");

        btn.addActionListener(xToolListener);

        tool_pnl.add(btn);


        tool_bar.add(tool_pnl, BorderLayout.WEST);

        cp.add(tool_bar, BorderLayout.NORTH);

        

        /* 데스크탑 패널을 만든다. */

        

        xDesktop = new JDesktopPane();

        cp.add(xDesktop, BorderLayout.CENTER);

        

        /* 기본 설정의 내부 프레임을 만든다. */

        JInternalFrame fr = new JInternalFrame("Internal Frame 1");

        fr.getContentPane().add(

            new JLabel(new ImageIcon("/root/Download/ICON/jeehaa1004_10.gif"))

            , BorderLayout.CENTER

        );

        fr.setBounds(20, 20, 200, 100);

        fr.setVisible(true);


        xDesktop.add(fr); 


        

        /* 모든 옵션이 켜져있는 내부 프레임을 만든다. */

        fr = new JInternalFrame("Internal Frame 2", true, true, true, true);

        fr.getContentPane().add(

            new JLabel(new ImageIcon("/root/Download/ICON/jeehaa1004_6.gif"))

            , BorderLayout.CENTER

        );

        fr.setBounds(100, 100, 200, 100);

        fr.setVisible(true);


        xDesktop.add(fr);

    }

    

    class ToolListener implements ActionListener {

        public void actionPerformed(ActionEvent ev){

            String cmd = ev.getActionCommand();

            JInternalFrame fr = xDesktop.getSelectedFrame();     //선택된 프레임을 가져온다.           

            /* 버튼에 따라 최대화, 최소화, 닫기 등의 작업을 한다. */

            try{

            if (cmd.equals("Maximize")) {

                fr.setMaximum(true);            //최대화 복원

            } else if (cmd.equals("Minimize")) {

                fr.setMaximum(false);            //최대화 취소

            } else if (cmd.equals("Iconify")) {

                fr.setIcon(true);                //내부프레임의 아이콘화 유무

            } else if (cmd.equals("Close")) {

                fr.setClosed(true);                //내부프레임 닫기

            }   

            }catch(Exception e){}         

        }

    }


    public static void main(String args[]){

        /* 프레임을 만든다. */

        ExJInternalFrame mf = new ExJInternalFrame("JInternalFrame 예제");


        mf.setSize(400, 300);

        mf.setVisible(true);

    }

}

  


'Programming > JAVA,JSP' 카테고리의 다른 글

JAVA 비행기게임  (0) 2013.01.09
JAVA 오목 게임 #1  (0) 2012.11.23
JAVA 다중 계산 계산기  (0) 2012.11.17
JAVA TCP 통신 예제  (0) 2012.11.17
Java 계산기 레이아웃  (0) 2012.11.17