전체 글
스프링 컨테이너
스프링 컨테이너스프링 기반 애플리케이션에서는 스프링 컨테이너 안에서 객체가 태어나고, 자라고, 소멸한다. • 객체를 생성하고, 서로 엮어주고, 이들의 전체 생명주기를 관리한다.• DI를 이용해서 애플리케이션을 구성하는 컴포넌트를 관리하며, 협력 컴포넌트 간 연관관계의 형성도 여기에서 이뤄진다. 종류1. 빈 팩토리 (org.springframework.beans.factory.BeanFactory)DI에 대한 기본적인 지원을 제공하는 가장 단순한 컨테이너2. 애플리케이션 컨텍스트 (org.springframework.context.ApplicationContext)빈 팩토리를 확장해 프로퍼티(property) 파일에 텍스트 메시지를 읽고 해당 이벤트 리스너에 대한 애플리케이션 이벤트 발행 같은 애플리케이션..
종속객체 주입 (DI, Dependency Injection)
종속객체 주입 (DI, Dependency Injection)아래와 같은 코드가 있다고 가정해보자. 1234567891011121314public class DamselRescuingKnight implements Knight{ private RescueDamselQuest quest; public DamselRescuingKnight () { this.quest = new RescueDamselQuest (); } public void embarkOnQuest () { quest.embark(); }}Colored by Color Scriptercs 이 코드에서는 DamselRescuingKnight 클래스를 생성했을 때 RescueDamselQuest 객체를 생성한다.이 경우에는 새로운 RescueD..
[PL/SQL] DBMS_JOB
DBMS_JOB잡을 등록하고 관리하는 데 사용되는 시스템 패키지이다. 우선 예제용 테이블을 하나 만든다.12345CREATE TABLE CH15_JOB_TEST( SEQ NUMBER, INSERT_DATE DATE);cs 그리고 이 테이블에 데이터를 INSERT 하는 프로시저를 만든다.1234567891011121314151617CREATE OR REPLACE PROCEDURE CH15_JOB_TEST_PROCIS VN_NEXT_SEQ NUMBER;BEGIN SELECT NVL(MAX(SEQ), 0) + 1 INTO VN_NEXT_SEQ FROM CH15_JOB_TEST; INSERT INTO CH15_JOB_TEST VALUES (VN_NEXT_SEQ, SYSDATE); COMMIT; EXCEPTION..
[PL/SQL] 파이프라인 테이블함수
파이프라인 테이블함수(PIPELINED TABLE FUNCTION) 12345678910111213CREATE OR REPLACE FUNCTION 함수명 (매개변수) RETURN 컬렉션타입 PIPELINEDIS ...BEGIN ... LOOP PIPE ROW(반환데이터); END LOOP; RETURN;END;Colored by Color Scriptercs 예제123456789101112131415CREATE OR REPLACE FUNCTION FN_CH14_PIPE_TABLE (P_N NUMBER) RETURN CH14_NUM_AT PIPELINEDIS VNT_RETURN CH14_NUM_AT := CH14_NUM_AT();BEGIN FOR IDX IN 1..P_N LOOP VNT_RETURN.EXT..
[PL/SQL] 테이블 함수
테이블 함수여러 로우를 가진 컬렉션을 반환하는 함수.컬렉션 타입을 반환하는데, 연관 배열은 반환하지 못하고, 중첩 테이블이나 VARRAY만 반환가능하다. 사용자정의 테이블 함수일반 사용자정의 함수와 다를 것 없으나, 그 대상이 되는 컬렉션 타입이 먼저 만들어져 있어야한다. 아래는 NUMBER만 이용한 간단한 예시이다. 1CREATE OR REPLACE TYPE CH14_NUM_AT IS TABLE OF NUMBER;cs 1234567891011121314CREATE OR REPLACE FUNCTION FN_CH14_TABLE1 (P_N NUMBER) RETURN CH14_NUM_ATIS -- 컬렉션 변수 선언 VNT_RETURN CH14_NUM_AT := CH14_NUM_AT();BEGIN FOR IDX..
@MVC : RequestMapping
@RequestMapping@MVC의 핸들러 매핑은 DefaultAnnotationHandlerMapping을 이용하는데, 이것의 핵심은 매핑 정보로 @RequestMapping 어노테이션을 활용한다는 점이다. DefaultAnnotationHandlerMapping은 디폴트이기 때문에 다른 핸들러 매핑 bean을 명시적으로 등록하지 않았다면 기본적으로 사용할 수 있다. 다만, 다른 핸들러 매핑 빈 등록시 빈으로 등록해줘야한다. 아래 어노테이션을 예시로 하나씩 살펴보자.@RequestMapping(value="/main", method=RequestMethod.GET, params="type=user", headers="content-type=text/html")디폴트 엘리먼트인 value는 String..