Web/Spring

    웹 스코프 java.lang.IllegalStateException 에러 해결방법

    - 에러내용 : No thread-bound request found: Are you referring to request attributes outside of an actual web request, or processing a request outside of the originally receiving thread? If you are actually operating within a web request and still receive this message, your code is probably running outside of DispatcherServlet: In this case, use RequestContextListener or RequestContextFilter to expos..

    IoC, DI 용어정리

    IoC, DI 도 스프링 개발자 오픈톡방이나 스프링 이야기가 나올 때마다 자주 보이던 용어들이었다. 당시에 궁금해서 구글에 검색했을땐 IoC : 제어의 역전 DI : 의존관계 주입 이라고 나오는 결과들만 보고서 이해가 안되어 그냥 넘어갔던 것들이다. IoC (Inversion of Control) 제어의 역전 IoC (제어의 역전) 의 사전적 정의 프로그램의 제어 흐름을 직접 제어하는 것이 아니라 외부에서 관리하는 것을 말한다. 말 그대로 기존에 프로그램의 제어흐름을 직접 제어하던 것을 외부에서 관리하도록 역전 시킨다는 것을 말한다. 하지만 이해하기 쉽게 코드를 이용해 설명해 볼 것이다. 코드에 대한 배경지식을 먼저 설명하자면, MemberRepository 인터페이스는 MemoryMemberReposi..

    좋은 객체지향이란? (5가지 원칙)

    Spring을 제대로 시작하기 전에 좋은 객체지향이 무엇인지 뇌에 때려박고 시작해야할 것 같아서 정리해보았다. 솔직히 Java로 객체지향을 엄격히 지켜 프로그래밍 한 적은 거의 없었다. 혼자서 개발하다보니 굳이? 라는 생각에 java나 c++로 코드를 작성할때도 그냥 c언어 처럼 작성했다. java나 c++은 그냥 라이브러리 제공하는 언어정도? 그런데 c언어나 django로 프로젝트를 진행했을때 몇가지 불편한 점을 느꼈다. c언어로 작성할때 아무리 함수로 나눈다고 하더라도 스파게티 소스가 되어 버리고, django에서 친구와 협업할때도 서로의 개발 영역이 구분이 되지 않았다. 그런데 아이러니하게도 내가 귀찮아서 하지 않던 객체지향프로그래밍이 이런 문제들을 해결하기 위해 나온 방법론이었다..ㅋ 이제야 뒤늦..

    객체지향이란?

    Spring 공부를 오늘 시작했다! Spring은 '객체지향'을 극한으로 사용하기 위해 도와주는 프레임 워크이다. ( 현재 Spring 배운지 하루차 이기 때문에 내가 모르는 스프링의 기능과 의미가 있을 것 같다. 계속 공부하며 정리해야 겠다. ) 그래서 인지 Spring에서 객체지향의 개념이 계속 나와 객체지향 프로그래밍에 대해 확실히 짚고 넘어갈 필요가 있어 포스팅 하게 되었다. 꼬리에 꼬리를 무는 질문을 대답하는 형태로 작성하여서 객체지향이 헷갈리시는 분들도 고민을 따라가며 읽으면 도움이 될 것 같다. 객체지향 프로그래밍 객체지향 프로그래밍은 프로그램을 각각의 독립된 객체들이 데이터를 주고받고, 처리할 수 있게 프로그래밍 하는 것이다. 객체들이 데이터를 주고받고 한다는 것은 대충 이해가 되는데 여기..