
데이터를 위한 객체를 만들다 보면 항상 DTO와 VO를 혼용해서 쓰고 하는데, 어떤 것이 맞는 것인지 항상 헷갈렸다. 한번 정리해보면서 이 둘의 차이는 무엇이고 어떤 상황에서 쓰는 것이 가장 이상적인지 정리해보고자 한다. DTO(Data Transfer Object) 순수하게 데이터를 담아 계층 간으로 전달하는 객체이다. 로직을 갖고 있지 않은 순수한 데이터 객체이며 메서드로는 getter/setter 만을 갖는다. 여기서 getter/setter 이외에 다른 로직이 필요 없는 이유를 좀 더 자세히 살펴보자면, 만약 DTO가 데이터 전달 만을 위한 객체라고 한다면 완전히 데이터 '전달' 용도로만 사용하기 때문에 getter/setter로직만이 필요하지 다른 로직이 필요하지 않은 것이다. //getter와..

(참고: 단순히 각 아카이브의 개념을 이해하기 위하여 작성된 글입니다.) 스프링 프로젝트를 시작할 때 Jar 와 War를 보고 헷갈려했던 경우가 많았는데 이번 글에서 확실히 짚고 넘어가고자 한다 우선 이 파일들이 무엇을 위해 존재하는지부터 살펴보겠다 애플리케이션 배포 JAR와 WAR를 기준으로 살펴보자면 근본적으로는 둘다 애플리케이션 배포를 목적으로 사용되는 파일이다 애플리케이션 소스들을 배포할 시에 path등의 설정에서의 애로사항을 제거하기 위해 탄생한 압축(아카이브) 방식으로 이 압축파일들은 압축의 해제 없이 JDK에서 각 파일들을 접근하여 사용할 수 있도록 설계되어 있다 간단하게 말하자면 서버에 리소스, 속성 파일 등이 압축되어 있는 이 파일만 넣어주면 알아서 서비스(개발자가 만든)가 작동하는 것이..

독립적인 실행 자바의 대표적인 특징 중 하나는 독립적인 실행이 가능하다는 것이다 자바 같은 경우 다른 일반적인 프로그램과 다르게 OS와 Program 사이에서 JVM(Java Virtual Machine)이 실행된다 이는 물리적 머신을 소프트웨어로 구현하여 Java 프로그램을 실행할 수 있게 해주는 추상 컴퓨팅 시스템이다 이로써 어떠한 프로그램을 만든다고 하더라도 JVM을 통해 각기 다른 운영체제에서 똑같이 구동을 할 수 있다 (하지만 만병통치약이 없듯이 JVM 또한 결국 OS 위에서 실행되기 때문에 플랫폼에 따라 호환되는 JVM을 실행시켜주어야 한다) Byte Code 사용자가 작성한 자바 코드가 JVM으로 가기 전에 한가지 작업이 필요한데 우리가 이해할 수 있는 "자바언어"를 작성하였듯이 Java C..

객체지향 프로그래밍 설계를 위해서 지켜야 하는 5가지 원칙이 있다 바로 SOLID이다 S : SRP (Single responsibility principle) 단일 책임 원칙 -한 클래스는 하나의 책임만 가져야 한다 즉 클래스가 각 역할에 맞는 클래스로 구분되어야 한다는 것인데 객체지향의 특성이 추상화를 다시 한번 떠올려보자, 추상화(모델링)이라는 것이 각 목적과 관심에 맞게 특성들을 조합하는데 병원 애플리케이션에 의사라는 객체가 있다고 생각해보자 의사는 의사라는 직업만 가지고 있는 존재가 아닐 것이다 의사임과 동시에 자식의 부모, 배우자, 부모의 자식, 본인이 아프면 환자, 은행에 가면 고객 이렇게 다양한 역할이 있을 텐데 이를 구분하는 게 바로 단일 책임 원칙이다 또한 객체의 속성도 하나의 속성만 ..

자바는 객체 지향 프로그래밍 언어이다 객체라는 것이 굉장히 추상적인 의미인데 모든 것을 객체라고 보면 될 듯하다 지금 우리가 들이마시고 있는 공기, 보고 있는 화면, 불현듯 머릿속에 떠오른 아이디어까지 프로그래밍 세계에서 이것을 객체(Object)라고 부른다 #객체의 특성 객체를 이해하기 위해서는 이것이 가지고 있는 특성부터 이해하는 게 좋겠다 1. 객체는 고유하다 예를 들어 자동차라고 한다면 자동차라는 고유한 의미를 가지고 있다 2. 객체는 속성을 갖는다 자동차는 브랜드, 가격, 색상 등등의 속성을 갖는다 3. 객체는 행위를 한다 자동차는 도로 위를 주행하는 행위를 한다 자 그렇다면 사람들을 이동시킬 수 있고 도로 위를 주행하며 고유한 의미를 가지고 있으면 모두 자동차일까? 답은 아니다 이는 오토바이가..
- Total
- Today
- Yesterday
- maenco
- ResponseStatusExeceptionResolver
- jQuery 직접 선택자
- DTO와 VO의 차이
- 제이쿼리 직접 선택자
- cookie
- ExceptionHandlerExceptionResolver
- spring
- 제이쿼리 인접 관계 선택자
- Spring MVC
- 제이쿼리란
- Session
- 제이쿼리 위치탐색선택자
- DefaultHandlerExceptionResolver
- 쿠키
- 제이쿼리 기본 선택자
- 제이쿼리 탐색선택자
- Cache
- Spring Container
- @ExceptionHandlere
- @ResponseStatus
- application/x-www-form-urlencoded
- 맨코
- http
- 세션
- Spring TypeConverter
- OOP
- 캐시
- uri
- Spring API Error
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |