1. HelloApplet만들기
- HTML문서가 반드시 있어야 한다.
- 항상 public class로 선언되어야 한다.
- java.applet.Applet 을 상속해야 한다.
- paint()메소들 추가한다.
- 초기화 메소드로 init()을 제공한다.==> 애플릿에서 가장 먼저 호출되는 메소드임.
(application에서 생성자에서 행했던 일은 한다.
ex)배경색지정, 이벤트처리 객체 등록 - repaint() 메소드 : AWT에서 컴포넌트를 다시 그리도록 요청한다.==> paint()을 호출한다.
- 애플릿은 반드시 HTML문서를 사용하여 실행한다.
<applet></applet>
실행 : appletviewer ****.html
2. 웝 브라우저와 애플릿의 기본 메소드
메소드 원형
|
설명
|
public void init()
|
애플릿을 초기화 한다. 애플릿이 처음 시스템에 적재될 때 한 번만 브라우저에 의해서 자동으로 호출된다.애플릿에 사용되는 여러 가지 초기화를 수행하기에 좋은 메소드 이다.
|
public void start()
|
애플릿이 시작될 때 호출된다. init()메소드가 호출된 후에 호출되며 ,브라우저가 애플릿이 포함되어 있는 문서를 방문할 때마다 호출된다. 따라서 웝 페이지 방문할 때 마다 수행해야 할일들을 이 메소드 안에서 시작시켰다가 stop()메소드에서 중지시키면된다.
|
public void stop()
|
애플릿 실행을 중지할 때 호출한다. 웹 브라우저가 애플릿이 있는 페이지에서 다른 페이지로 이동 할 때 그리고 destory()메소드가 호출되기 직전에도 호출된다. 웹페이지를 벗어날 때마다 중지시킬 일들을 이 메소드에서 수행한다.
|
public void destory()
|
애플릿을 위해 할당했던 리소스를 환수해야 할 때 브라우저에 의해 호출 된다. 애플릿이 열였던 리소스들을 청소한다. 이 메소드가 호출되기 직전에 항상 stop() 메소드가 호출된다.
|
# 브라우저가 웝 페이지를 호출할때 메소드의 수행과정
- URL을 입력하여 HTML문서를 요청한다.
- HTML문서를 읽고 applet태그를 찾는다.
- applet태그를 발견 하면 태그에서 지정한 applet byte code를 읽는다.(class file)
- 애플릿을 브라우저의 JVM에 넘긴다.
- 안전성을 검사한다. JVM은 class를 메모리에 적재한다.
- 브라우저가 init()을 실행한다.
Applet클래스의 init(),start(),stop(),destory()은 아무런 일도 수행하지 않는다. - 브라우저는 Html문서를 번역하여 display하기 시작한다.그 다음 브라우저는 start()메소드 실행함.
- 다른 사이트로 이동하면 stop()를 실행한다. 모든 활성화된 쓰레드를 중지시키는 일을 한다.
- stop()이 종료한 후에 브라우저에 필요에 따라 destory()메소드를 호출함으로써 브라우저의 실행 환경에게 애플릿이 종료할 것을 요청한다.
3. HTML문서와 <APPLET> tag
⑴ <APPLET> tag
- <PARAM NAME ="HELLO" VALUE="JAVA APPLET"> tag을(여러 개) 가질수 있다.
- <PARAM>tag이 외에는 tag와 text는 모두 무시 하게 된다.
- NAME 속성은 대소문자를 구분 하지 않는다.public String getParameter(String "HELLO");
String = "JAVA APPLET";
⑵ <APPLET> tag의 속성
속성이름
|
설명
|
CODE
|
애플릿 클래스 파일 이름을 지정한다.(필수 속성)
직렬화된 applet을 사용할 경우 CODE속성 대신에 OBJECT속성을 사용함
|
WIDTH, HEIGHT
|
HTML문서안에서 차지할 애플릿의 폭와 넓이를 픽셀단위로 지정.(필수 속성)
|
CODEBASE
|
애플릿 클래스 파일과 문서 위치가 틀린 경우 클래스 파일 위치를 URL로 입력한다.
|
ARCHIVE
|
애플릿 클래스 파일이 압축 파일 일 때 지정, 여러개 일 때 "," 을 사용.
|
OBJECT
|
직렬화된 화일 ".ser"일 때 브라우저는 init()을 실 행하지 않고 start()을 실행 한다.
|
NAME
|
브라우저에서 applet을 식별하기 위해서 사용
|
ALIGN
|
텍스트와 정렬 시키기 위해서
|
ALT
|
<IMG>와 동일한 속성
|
VSPACE,HSPACE
|
<IMG>와 동일한 속성
|
4. 애플릿 보안
자바 보안 시스템에 따른 일반적인 애플릿의 금지 행위
- 라이브러리를 적재하거난 Native 메소드를 사용
- 애플릿 실행 컴퓨터의 파일을 읽거나 쓰기
- 애플릿 바이트코드가 있는 호스트 이외의 호스트와의 네트워크 접속
- 애플릿 실행 컴퓨터와 다른 프로그램 실행
- 시스템 등록 정보(일부만 가능함)
5. 이미지와 오디오 사용하기
Image getImage(URL url); //여기서 url은 절대 경로
Image getImage(URL url,String name); //url은 절대 경로, name 상대경로를 사용
AudioClip getAudioClip(URL url);
AudioClip getAudioClip(URL url,String name);
public void play();
public void loop();
public void stop();
댓글 없음:
댓글 쓰기