반응형
썸네일 스프링 [Spirng] AOP(Aspect Oriented Programming) 개념 정리 및 주요 용어 Aspect Oriented Programming = AOP AOP는 문제를 바라보는 관점을 기준으로 프로그래밍하는 기법이다. AOP는 문제를 해결하기 위한 핵심 관심 사항과 전체에 적용되는 공통 관심 사항을 기준으로 프로그래밍 함으로써 공통 모듈을 여러 코드에 쉽게 적용할 수 있게 도와준다 AOP를 구현하는 다양한 방법이 존재하지만, 기본적인 개념은 공통 관심 사항을 구현한 코드를 핵심 로직을 구현한 코드 안에 삽입하는것이다. AOP란 쉽게 말해 핵심 로직을 구현할때 계속 반복적으로 쓰는 공통 코드를 조금더 쉽게 줄여서 가져다 쓰기위해 만들어 진 기능이다. AOP 기법에서는 핵심 로직을 구현한 코드에서 공통 기능을 직접적으로 호출하지 않는다. 핵심 로직을 구현한 코드를 컴파일 하거나 , 컴파일 된 클래..
스프링 [Spirng] Environment를 이용한 프로퍼티 란 Environment를 이용한 프로퍼티 어플리케이션을 개발하다보면 동일한 코드를 사용하면서 일부 정보만 변경하고 싶은경우가 흔히 발생하는데, 이러한 경우 프로그램 코드를 바꾸기보단 별도 파일을 이용해 설정 정보를 변경하도록 만든다. ex) 톰캣 서버는 server.xml이라는 파일에 사용할 포트 번호를 설정하며, 아파치 웹 서버는 httpd.conf파일에 포트 번호화 디렉토리 경로를 설정한다. 스프링도 비슷하게 스프링에 설정 변경 없이 외부에서 입력한 정보를 이용해 설정 값을 변경하는 방법들을 제공하고 있고, 그중 한 가지 방법이 Environment이다. 프로퍼티 통합 관리 프로필을 이용해서 선택적으로 설정 정보를 사용할 수 있는 방법을 제공 Environment는 시스템 환경 변수, JVM(자바 가상..
썸네일 스프링 [Spirng] 빈 생명주기 (빈 라이프사이클, 빈 범위)란 빈 객체의 라이프사이클(웹을 다만들고나서 이후에 추가를더 하고싶을때 보통 사용함.) 생성, 할당, 초기화, 사용, 소멸의 과정을 관리한다. 스프링 컨테이너는 두 가지 방식을 이용해서 빈의 라이프사이클을 관리할 수 있다. 스프링이 제공하는 특정 인터페이스를 상속받아 빈을 구현한다. 스프링 설정에서 특정 메서드를 호출하라고 지정한다. 빈 라이프사이클 개요 스프링 컨테이너는 빈 객체를 생성하고 초기화하고 소멸할 때 아래 순서로 빈 객체의 메서드를 실행한다. 개요 빈의 초기화와 소멸 방법은 각각 세 가지가 존재한다. 각 방식이 한쌍을 이루어 함께 사용되곤한다. PostConstruce메서드로 초기화, PreDestroy메서드로 소멸 InitializingBean.afterPropertiesSet()메서드로 초기..
썸네일 스프링 [Spirng] DI(Dependency Injection) 의존성 주입이란 DI (Dependency Injection) - 의존 주입 스프링은 기본적으로 DI를 기반으로 동작한다. 의존하는 타입의 객체를 직접 생성하는것과, 1. public void print(String filePath) throws IOException { try(BufferedReader br = new BufferedReader(new FileReader(filePath))){ .... 2. public class FileEncryptor { private Encryptor encryptor = new Encryptor(); .... 또는 외부에서 전달 받을수도있다. 1. public class FileEncryptor { private Encryptor encryptor; public FileEncr..
썸네일 스프링 툴 [Spirng Toos Suite] SPRING4.0 이란 spring.io 사이트에서 SpringToosSuite4 다운로드, 마켓 Install Spring Tools 3 Add-On for Spring Tools 4 3.9.20.RELEASE Eclipse Enterprise Java and Web Developer Tools 3.24 스프링 프레임 워크 주요 모듈 스프링 프레임워크 주요 모듈 간 의존 관계 Spring-context 모듈은 Spring-beans 모듈을 필요로 하고 Spring-beans 모듈은 Spring-core 모듈을 필요로 하는데, 결과적으로 Spring-context모듈을 사용하려면 Spring-beans 모듈 이외에 Spring-core 모듈도 필요하다. 다수의 모듈들이 Spring-context 모듈을 직/간접적으로 의존하고 ..
썸네일 스프링 [Spirng] iBatis - 리스트, 글보기, 댓글, 추천, 조회수, 글삭제 , 댓글삭제 쿼리 및 기능 구현 sql 작성 board란 이름으로 getboardlist 등 사용하기위해 이름을 걸어주고 OO.OO.OO를 계속사용하지 않고 BoardModel이란 단어만으로 쉽게 사용하기위해 typeAlias를 잡아주고 게시판 리스트를뽑는 sql문 select b.idx, b.writer, b.subject, b.content, b.hitcount, b.recommendcount, to_char(b.writedate, 'YYYY-MM-DD HH:MI:SS') writeDate, count(c.idx) as "comment", b.writerId, b.fileName, b.rnum from (select ------- a.idx, a.writer, a.subject, a.idx로 잡힌 a.content, a.hitcou..