본문 바로가기

04번. IT 힌트얻기/▶ 자바

JSP에서 JSTL과 EL사용하기 목표 : JSTL과 EL을 사용함으로써 와 같은 스크립팅을 없앨 수 있다. JSP페이지 상에 자바 소스는 이제 안녕~ Expression Language는 JSP에서 기본으로 지원한다. 세팅을 해야 하는 것은 JSTL(JavaServer Pages Standard Tag Library)이다. 1. 다운로드 http://www.apache.org - Jakarta - Taglibs - Standard - JSTL 1.1 다운로드 (jakarta-taglibs-standard-1.1.2.zip) JSTL 매뉴얼 : http://pds17.egloos.com/pds/201002/12/66/JSTL-Reference-11.pdf 2. 설치 다운로드 받은 파일에 압축을 풀고 lib 폴더의 jstl.jar와 sta.. 더보기
디자인 패턴 ◆ Intercepting Filter 패턴 - 요청 타입에 따라 다른 처리를 하기 위한 패턴 ◆ Front Controller 패턴 - 요청 전후에 처리하기 위한 컨트롤러를 지정하는 패턴 ◆ View Helper 패턴 - 프레젠테이션 로직과 상관없는 비즈니스 로직을 헬퍼로 지정하는 패턴 ◆ Composite View 패턴 - 최소 단위의 하위 컴포넌트를 분리하여 화면을 구성하는 패턴 ◆ Service to Worker 패턴 - Front Controller와 View Helper 사이에 디스패처를 두어 조합하는 패턴 ◆ Dispatcher View 패턴 - Front Controller와 View Helper로 디스패처 컴포넌트를 형성한다. 뷰 처리가 종료될 때까지 다른 활동을 지연한다는 점이 Serv.. 더보기
JRE/JDK JRE (java runtime environment) 자바 실행 환경 JVM(Java Virtual Machine) + Java API (클래스라이브러리) JDK (java development kit) 자바개발도구 JRE(JVM + Java API) + 개발에 필요한 실행 파일 (javac.exe 등) 개발에 필요한 실행 파일 javac.exe : 자바 컴파일러 - 자바소스코드를 바이트코드(클래스파일)로 컴파일한다. java.exe : 자바 인터프리터(jvm) - 컴파일러가 생성한 바이트코드(클래스파일)을 해석하고 기계어로 바꿔 실행한다. javap.exe : 역어셈블러 - 컴파일된 바이트코드(클래스파일)을 원래 자바소스로 변환한다. appletviewer.exe : 애플릿 뷰어 - HTML문서에 삽.. 더보기
Java Memory 구조 자바 프로그램은 이렇게 실행이 된다. 우리가 작성을 한 Java source 코드는 Java Compiler에 의해 Byte Code로 compile되어 진다. 이렇게 compile 되어진 Byte Code는 JVM에 의해서 구동되어 OS,H/W에 해당 명령을 지시하고 우리가 원하는 결과를 얻을 수 있다. Java Virtual Machine 구조 JVM은 시스템으로부터 프로그램을 수행하는데 필요한 메모리를 할당받고 이 메모리를 용도에 따라 여러 용도로 나누어서 관리한다. 메서드 영역 : 프로그램 실행 중 어떤 클래스가 사용되면, JVM은 해당 클래스의 클래스 파일(*.class)을 읽어서 분석하여 클래스에 대한 정보(클래스 데이터)를 이곳에 저장한다. 힙 : 인스턴스가 생성되는 공간, 프로그램 실행 중.. 더보기
CLASSPATH/JAVA PATH CLASSPATH = CLASS + PATH 그러므로 CLASSPATH를 이해하기 위해서는 CLASS와 PATH 두 가지에 대해서 먼저 이해를 해야 한다. CLASS 란? 자바로 코딩을 할 때 보통 AboutJsp.java와 같이 만들게 된다. 그리고 그것을 javac를 이용해서 컴파일을 하면 자바 바이너리 파일 즉, class 파일이 생성된다. 이러한 class파일은 직접 실행할수도 있고, 다른 프로그램에서 그 class파일을 가져다가(상속이나 특정 목적에 의해 import하여) 사용할 수도 있습니다. 어쨌든 ~.java 파일을 컴파일한 것이 class 파일이다. PATH 란? PATH는 경로(위치)를 뜻한다. 예전 도스를 사용해 보신 분들이 무엇인지 아실 것입니다. 유닉스(리눅스)에서도 현재까지 쓰이.. 더보기
[Java] 자바 JDBC JDBC (Java DataBase Conectivity) '자바 표준 데이터베이스 인터페이스'라고 할 수 있다. 어떠한 프로그램 언어라 하더라도 데이터베이스 표준 인터페이스는 필요하다. 프로그램적으로 데이터베이스에 접근하기 위한 표준적인 방법이 존재하지 않는다면, 여러분들은 다양한 데이터베이스에 접근하기 위해서 각 회사에 맞는 데이터베이스 사용법을 배워야 한다. 하지만 이러한 문제는 표준 인터페이스라는 단 한마디로 해결할 수 있다. JDBC 기본 클래스 Connection DriverManager를 통해서 데이터베이스에 접속할 수 있는 Connection 객체를 생성할 수 있으며, Connection 객체가 성공적으로 생성되었다면 데이터베이스로 쿼리를 전송한 후 처리할 수 있다. 그리고 작업이 모두 끝.. 더보기
[Java] 자바 Stream 입출력을 위한 공통된 방법 다양한 장소에 존재하는 데이터들을 핸들하기 위해서는 입출력 데이터를 처리하는 공통된 방법이 있어야 함 임출력을 위한 공통된 방법이 없으면? 각각의 하드웨어 장치를 잘 알고 있다는 가정하에, 각각의 하드웨어 장치에 직접 접근해야 함 스트림(Stream)은 자료의 입출력을 도와주는 중간 매개체 입출력장치는 파일, 키보드, 모니터, 마우스, 메모리 네트워크 등이 있음 입출력 장치의 일반적인 특징 일반적인 입출력 장치는 대부분 데이터를 읽고 기록한다는 특징이 있음 스트림의 역할 스트림은 데이터를 읽고 쓰기 위한 공통된 방법을 제공 장치(Device)와 스트림(Stream) 장치마다 연결할 수 있는 각각의 스트림이 존재 스트림의 내부 동작원리는 몰라도 됨, 사용할 줄만 알면 OK 사용자.. 더보기
[Java] Exception (2/2) 1. 사용자 필요에 의한 에러 처리 - 사용자가 필요하다고 생각해서 에러처리 구문을 사용하는 경우 - 사용자가 직접 에러 이벤트를 발생시키는 경우(throw) - 다단계 catch - 반드시 에러처리를 해주어야 하는 경우 - 에러처리 미루기(throws) 2. throw 보통의 경우 try에서 에러가 감지되었을 때 자동으로 이벤트가 발생한다. 이와 반대로 사용자가 직접 에러 이벤트를 생성한 후 이 이벤트를 발생시킬 수도 있다. 이때 사용하는 키워드가 throw이다. 3. 다단계 catch 에러 이벤트는 에러의 종류에 따라 상당히 많은 종류의 이벤트가 존재한다. 하지만 모든 에러 이벤트는 Exception 클래스를 상속받아 만들어지기 때문에 에러 이벤트를 Exception류라고 생각하면 된다. 4. 의무적.. 더보기
[Java] Exception (1/2) 예외처리(Exception Handling) 1. 개요 자바에서 에러는 크게 두 종류로 나뉘어진다. 컴파일할 때 발생하는 컴파일 타임 에러(Compile-Time Error)와 프로그램이 실행되는 동안 발생하는 실행 타임 에러(Run-Time Error)가 그것이다. 컴파일 타임의 에러는 자바의 문법적인 에러이기 때문에 아주 쉽게 처리할 수있다. 하지만 실행 타임의 에러는 이것과는 차원이 다르다. 실행 타임의 에러는 디버깅의 절차를 거치지 않으면 거의 잡을 수 없는 심각한 버그가 많다. 그리고 실행 타임의 잘못된 에러는 프로그램 자체를 멈추게 하는 원인이 될 수도 있다. 2. 에러 이벤트(Error Event) 일반적으로 많이 발생하는 에러 # NullPointerException - 메모리가 없는 객체.. 더보기
[Java] Enumeration 과 Iterator 컬렉션 내의 데이터에 접근하기 위한 가장 일반적인 방법은 Enumeration과 Iterator를 사용하는 것이다. Enumeration과 Iterator의 모든 데이터를 마지막에 상관하지 않고 접근할 수 있다는 특징이 있다. 1. Vector에서의 Enumeration 2. Hashtable에서의 Enumeration 3. Iterator 4. For Each Statement 더보기