Development

개발 지식을 정리합니다.

제어의 역전

제어의 역전이란 객체의 생성, 실행 그리고 객체간 의존 관계를 맺어주는 제어 권한이 역전되는 것을 뜻한다.

Spring AOP

AOP(Aspect-Oriented Progarmming, 관점 지향 프로그래밍) AOP란 애플리케이션 전체에 걸쳐 사용되는 기능을 재사용하도록 지원하는 것 이다. 관점 지향 프로그래밍이란 프로젝트 구조를 바라보는 관점을 바꿔보자는 의미다. 핵심 기능 관점과 부가 기능...

Servlet(서블릿)

자바 웹 애플리케이션 자바 웹 애플리케이션은 WAS에 설치(deploy)되어 동작한다. 자바 웹 어플리케이션에는 HTML, CSS, 이미지, 자바로 작성된 클래스(Servlet도 포함됨, package, 인터페이스 등), 각종 설정 파일 등이 포함 된다.

컨테이너와 IoC/DI

컨테이너(Container) 프레임워크 기반의 프로그램은 프레임워크 자신이 프로그램 실행 흐름을 제어하는 주체가 되어, 필요할 때마다 애플리케이션 코드를 호출하여 사용한다. 프레임워크에서 이 제어권을 가지는 것을 컨테이너라고 부른다. 객체에 대한 제어권이 개발자로부터 ...

Spring 메세지 컨버터

@RequestBody와 @ResponseBody를 사용하면, HTTP 요청 본문과 HTTP 응답 본문을 통째로 다룰 수 있다. 이때 HTTP 요청, 응답간에 데이터 변환을 담당하는 것이 메세지 컨버터다.

Enum

@RequestBody와 @ResponseBody를 사용하면, HTTP 요청 본문과 HTTP 응답 본문을 통째로 다룰 수 있다. 이때 HTTP 요청, 응답간에 데이터 변환을 담당하는 것이 메세지 컨버터다.

ConnectionPool과 DataSource

ConnectionPool(DBCP) 클라이언트의 요청으로 인해 매번 새로운 DB 연결이 발생한다면 성능 저하가 발생할 수 있다. 매번 DB 커넥션 객체를 생성하는 것은 큰 비용이기 때문이다. 미리 DB 커넥션 객체들을 만들어서 Connection Pool 이란 곳에...

TDD(Test Driven Development)와 단위테스트

TDD란? TDD는 “테스트 주도 개발”을 뜻한다. 반복 테스트를 이용한 소프트웨어 방법론이다. 작은 단위의 테스트 케이스를 작성하고 이를 통과하는 코드를 추가하는 단계를 반복하여 구현한다.

JDBC(Java Database Connectivity)

JDBC란? 자바로 데이터베이스 접속을 할 수 있도록 해주는 자바 API이다. 썬 마이크로시스템즈는 1997년 2월 19일 JDBC를 JDK 1.1의 일부로 출시하였다. 그 뒤로 이제까지 자바 SE의 일부로 포함되고 있다.

Java Collection Framework (JCF)

JCF란? 자바 컬렉션 프레임워크란 데이터를 저장하는 자료 구조와 데이터를 처리하는 알고리즘을 구조화하여 클래스로 구현해 놓은 것이다. 예를들어 List, Stack, Queue, Tree, Hash, 버블 정렬, 퀵 정렬, 이진 탐색 등은 제네릭 기반의 클래스와 메소드로...

Entity vs VO vs DTO

Entity Entity는 RDB 테이블내에 존재하는 컬럼만을 필드로 갖는 클래스다. Entity 클래스는 상속을 받거나 구현체여서는 안된다.