본문 바로가기

전체 글

작성일: 2020. 2. 23. 12:31
작성일: 2020. 2. 23. 11:10
작성일: 2020. 2. 22. 20:16
작성일: 2020. 2. 12. 11:24
Spring MVC - 유연한 다중 파일업로드 핸들러 만들기 (Multipart upload) 다중파일 안녕하세요, 이번 포스팅에서는 Spring MVC를 이용해 웹사이트 구축시 다중파일 업로드를 구현해야하는 상황에서, 발생했던 간단한 팁을 알아보려고 합니다. 유연한 다중파일 업로드 핸들러1. 일반적인 파일 업로드 핸들러 일반적인 경우 다중파일 업로드를 위해서 위와 같이 핸들러를 만들게 됩니다. 중요한 점은 RequestParam(key)의 괄호안의 key값과, form을 이용해 파일을 업로드할때의 key값이 일치해야 한다는 점입니다. 그러면, @RequestParam의 괄호 안에 적힌 (file1, file2)에 사용자가 form을 통해 업로드하는 파일들이 각각 맵핑됩니다. (Postman을 이용해 form을 제출했습니다.) 문제점위에서 구현한 핸들러는 두가제 문제를 안고있습니다.업로드할 파일의..
작성일: 2020. 1. 29. 13:56
OOAD - 진정한 캡슐화 (잘못된 캡슐화 예제) 진정한 캡슐화 진정한 캡슐화에 대해 알아보도록 하겠습니다. 진정한 캡슐화제목이 조금 이상한듯 싶지만, 우리가 알고 있는 이전의 캡슐화는 진짜 캡슐화가 아닐 확률이 높습니다. 때문에 진정한 캡슐화를 알아보자는 취지에서 이런 제목을 붙혔습니다. 우선 보통의 경우 캡슐화의 의미에 대해서 알아보겠습니다. 1. 캡슐화란 ? 캡슐화란 내부의 구현을 인터페이스를 통해 숨기는것을 말합니다. 설계중에서 변경될 가능성이 높은 부분을 구현 이라고하며, 상대적으로 안정적인 부분을 인터페이스라고 부릅니다. 캡슐화는 이런 변경가능성이 높은 구현을 숨기고 상대적으로 안정적인 부분을 공개함으로써 변경을 최소화하도록 합니다. 2. 캡슐화가 필요한 이유?상태와, 행동을 객체라는 하나의 단위로 묶는 이유는, 객체 스스로 자신의 상태를 처..
작성일: 2020. 1. 27. 18:18
OOAD - 데이터 주도 설계의 문제점(결합도와 응집도) 데이터 주도 설계의 문제점 이번 포스팅에서는 지난 포스팅에서 다루었던 책임주도 설계와 대비하여 소개되는 데이터 주도 설계 방식을 알아보고 결합도와 응집도에 대해 알아보도록 하겠습니다. 이 포스팅은 OBJECTS(코드로 이해하는 객체지향 설계)라는 책을 토대로 작성되었습니다. 지난 포스팅 ( https://galid1.tistory.com/681 )과 이어 보시는것이 도움이 더 많이 될것입니다. 데이터 주도 설계데이터 주도설계란 간단히 말씀드려 객체가 가져야할 데이터에 초점을 두고 설계를 하게되는 방식을 일컫습니다. 데이터 주도 설계에서는 객체 자신이 포함하고 있는 데이터를 조작하는 데 필요한 행동을 정의하게 됩니다. 반면 책임주도 설계에서는 다른 객체로부터 자신에게 요청할 수 있는 요청을 수행하기 위해 ..
작성일: 2020. 1. 27. 15:09
OOAD - 책임, 역할, 협력을 이용한 객체지향 설계 역할, 책임, 협력을 이용한 유연한 설계 이번 시간에는 OOP 설계 방법 (역할, 책임, 협력)에 대해 알아보도록 하겠습니다. 이 포스팅은 오브젝트 (코드로 이해하는 객체지향 설계)라는 책을 토대로 작성되었습니다. 코드 https://github.com/galid1/oop_study 아래의 설명들은 위의 코드를 토대로 설명을 하고 있습니다. 1. 시나리오2. 에서 앞으로 설명드릴 역할, 책임, 협력이라는 단어들에 대한 효율적인 이해를 돕기 위해, 간단한 영화 예메 시스템시나리오를 살펴보도록 하겠습니다. 1.1 요구사항 분석우선, 영화 예매 시스템에서 빠질 수 없는 영화에 대한 요구사항을 분석하도록 하겠습니다. 영화영화는 제목, 상영시간(running time), 가격 정보 등의 영화의 기본적인 정보를 가..
작성일: 2020. 1. 26. 22:51