개발 등 214

JDBC의 기본 클래스들

1. Connection Interface : 데이터베이스에 접속하기 위한 인터페이스. Connection 객체를 얻기 위해서는 DriverManager 클래스의 getConnection()를 호출해야 한다. 예) Class.forName("oralce.jdbc.driver.OracleDriver"); // 데이터베이스 드라이버를 메모리에 로딩String url="jdbc:oracle:thin:@localhost:1521:orcl"; //데이터베이스의 위치 String id="scott"; String pw="tiger"; //유저 아이디와 비밀번호 Connection conn=DriverManager.getConnection(url,id,pw); 2. Statement Interface : SQL문을 ..

개발 등/중급 2008.09.23

List 의 makeVisible(int index) 와 select(int index), deselect(int index) 메서드

import java.awt.*; import java.awt.event.*; class Test extends Frame{ List li; TextField tf; Button b; Test(){ li=new List(); tf=new TextField(); b=new Button("ADD"); tf.requestFocus(); tf.addFocusListener( new FocusAdapter(){ public void focusGained(FocusEvent e){ tf.requestFocus(); } } ); tf.addActionListener(new ActPer(this)); b.addActionListener(new ActPer(this)); add(li,"North"); add(tf,"Ce..

개발 등/중급 2008.09.16

컬렉션에서 객체 비교하는 방법

Hash 가 구현된 컬렉션들은 다음의 조건으로 수행된다. 1. 객체의 hashCode() 를 먼저 호출한 후, 리턴 값을 저장한다. 2. 이후 추가되는 객체의 hashCode()를 호출한 후 리턴값이 동일하면 해당 객체의 equals()를 호출해서 값을 비교한다. 3. 두 메서드가 모두 동일하면 같은 객체로 취급한다. 예외) String Class는 equals()와 hashCode() 모두 '문자열의 내용이 동일하면 같은 값을 리턴하도록 오버라이딩되어 있음. class A{ int m; String name; public A(int m, String name){ this.m=m; this.name=name; } public int hashCode(){ System.out.println(name + " ..

개발 등/중급 2008.09.08

이벤트 클래스 생성방법과 정의

여기서는 버튼에 이벤트 클래스를 연동해서 버튼에 이벤트를 주는 방법을 설명합니다.- Event Handler 클래스 생성법 4가지Listener 클래스를 구현하는 방법Adapter 클래스를 상속받는 방법Frame 클래스에 Listener를 구현하는 방법익명 중첩 클래스를 사용하는 방법- Event 작성법처리하고자 하는 종류의 Event 클래스 생성컴포넌트에 대해 관련 Event를 추가-> 익명 중첩 클래스를 사용하는 방법 // 익명 중첩 클래스를 사용하는 방법    import java.awt.*;   import java.awt.event.*;   class Exam_01_Sub extends Frame       private Button bt = new Button("확인");       priva..

개발 등/중급 2008.09.03

Graphic을 처리하는 paint 메서드

4.3 그래픽을 처리하는 자바 애플릿 (1) 4.3.1 그래픽 출력 이벤트 그래픽 출력 이벤트 : 애플릿에 그림을 그리려 할 때 발생하는 이벤트 이 그래픽 이벤트가 발생하였을 때 호출하는 메소드가 있는데 그것이 바로 paint()메소드 이때 실제 그림을 그리는 것은 paint() 메소드의 매개변수를 통해 전달되는 Grphics 객체 그래픽 출력을 위한 메소드로 update()와 repaint()있다 update() 메소드 : 이미지 출력 작업(화면)을 갱신하고 싶을 때 사용 (시스템에 의해 자동으로 호출되는 메소드이기 때문에 주로 화면의 깜빡거림을 막기 위해 사용) repaint() 메소드 : 강제로 paint() 메소드를 한 번 더 호출하고 싶을 때 사용 (방금 처리한 작업을 화면에 바로 보여주고 싶으..

개발 등/중급 2008.09.03

JNI : Java Native Interface

2008/03/18 10:03 ★ 자바 네이티브 인터페이스를 이용한 C/C++ 코드와 결합보통 서로 다른 장, 단점을 갖고 있는 JAVA와 C++, 이 두 언어를 결합할 수만 있으면 큰 시너지를 발휘할 수 있다고 생각한다. 뭐, 어느 정도의 범위에서는 그렇긴 하지만...그러나 왠만하면, 정말 어쩔 수 없는 경우를 제외하고는 이 JNI 기술은 활용하지 않는 것이 최상이라고 난 생각한다. -_-;;이제 마소에서 두 언어를 결합하는 방법을 전격 공개한다. 먼저 자바의 JNI를 이용해 C로 작성된 Win32 DLL을 호출하는방법을 알아볼 텐데, 자바 코드에서 만든 데이터를 C 코드로 전달하거나 혹은 C 코드에서 생성된 데이터를 자바로 전달하는 방법,한글 문제를 해결..

개발 등/중급 2008.09.03

Object 클래스 : clone()

자바에서 인스턴스를 참조할 때는 대부분 주소값을 복사하는 차원에서 이루어졌다. 즉 Test t1 = new Test(); Test t2 = t1; 따라서 t1.hashCode() == t2.hashCode(); 의 결과는 True 가 된다. 하지만 주소값의 복사가 아닌 메모리 차원에서 복사를 하려면 어떻게 해야 할 것인가? 그럴 때 필요한 것이 바로 clone 메서드이다. clone 메서드는 Object 클래스에 정의되어 있는 메서드이다. protected native Object clone(); Creates and returns a copy of this object. 즉 API에서 정의된 대로 해당 객체를 생성한 후 리턴하는 역할을 한다. 만일 clone() 을 오버라이딩 하겠다면 반드시 super..

개발 등/중급 2008.09.03

Layout Manager

(1) 개요 -FlowLayout Manager - 컴포넌트의 기본크기대로 (화면 정중앙기준) -GridLayout Manager -그리드(2,3)처럼 화면을 나누어서 모든 영역을 다 사용 -BorderLayout Manager - 화면을 다섯개의 방향으로 나눔 -CardLayout Manager -카드게임처럼 여러 개의 카드를 겹쳐놓은듯하게 구성 -GridBagLayout Manager - 적절한 위치에 마음대로 배치하도록 함 (2) 예제 FlowLayout import java.awt.*; class Exam_04_Sub extends Frame { private Button bt1 = new Button("1"); private Button bt2 = new Button("2"); private B..

개발 등/중급 2008.09.02