목록스프링 (17)
개발새발
스프링MVC M -Model Spring MVC 기반의 웹 애플리케이션이 클라이언트의 요청을 전달 받으면 요청 사항을 처리하기 위한 작업을 한다 처리한 작업의 결과 데이터를 클라이언트에게 응답으로 돌려줘야하는데, 이 때 클라이언트에게 응답으로 돌려주는 작업의 처리 결과 데이터를 Model이라고 한다 클라이언트의 요청 사항을 구체적으로 처리하는 영역을 서비스 계층(Service Layer) 실제로 요청 사항을 처리하기 위해 Java 코드로 구현한 것을 비즈니스 로직(Business Logic) V - View Model 데이터를 이용해서 웹브라우저 같은 클라이언트 애플리케이션의 화면에 보여지는 리소스(Resource)를 제공하는 역할 C - Controller Controller는 클라이언트 측의 요청을 ..

동작 원리부터 적어보자 일단 다 모르지만 나만 볼것이기 때문에 내가 아는걸 적어보자 근래에 공부하면서 가장 많이 본 그림이다 스프링mvc를 공부하면 똑같진 않더라도 비슷한 그림은 무조건 볼거라 생각한다 클라이언트가 HTTP메서드를 이용해서 요청 Dispatcher Servlet이 요청을 받아 핸들러 매핑에게 물어본다 이걸 처리해 줄 수 있는 Controller가 있어?? 그럼 핸들러 매핑이 알맞은 Controller의 정보를 전달 그 정보를 가지고 핸들러 어댑터에게 일을 부탁한다 "핸들러 어댑터야 이 정보를 가지고 있는 Controller에게 일 좀 시켜줘" 핸들러 어댑터가 받은 정보를 가지고 있는 Controller를 호출하여 일을 시킨다 만들어진 결과물을 다시 핸들러 어댑터에게 전달 만들어진 정보를 ..
스프링MVC 사전적 의미 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크 프리임워크란??!! 뼈대나 기반구조를 뜻하는데, Application 개발 시 필수적인 코드, 알고리즘, 데이터베이스 연동 등과 같은 기능들을 위해 어느정도 뼈대(구조)를 제공해주는 것 (그렇기에 뼈대위에서 개발자가 코드를 작성하여 Application을 개발해야한다) 복잡한 문제를 해결하거나 서술하는 데 사용되는 기본 개념 구조 소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는것 프레임워크란 우리의 개발을 용이하게 해주고 효율을 높여주는 도구 라이브러리(Library) 특정 기능에 대한 도구 / 함수 모음 개발자가 필요로하는 것을 모아둔것

Spring Framework 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크로서 엔터프라이즈금 애플리케이션을 개발하기 위한 모든 기능을 종합적으로 제공하는 경량화된 솔루션 엔터프라이즈급 개발이란 뜻대로만 풀이하면 기업을 대상으로 하는 개발 즉, 대규모 데이터 처리와 트랜잭션이 동시에 여러 사용자로부터 행해지는 매우 큰 규모의 환경을 엔터프라이즈 환경이라 한다 Spirng Framework는 경량 컨테이너로 자바 객체를 담고 직접 관리 Spring Framework는 IOC기반 Ioc(Inversion of Control) : 제어의 역전 IoC(Inversion of Control)란 "제어의 역전" 이라는 의미로, 말 그대로 메소드나 객체의 호출작업을 개발자가 결정하는 것이 아니라, 외부에서 결정..

공부하다가 모르겠어서 찾아봤다 서블릿(Servlet) 자바를 기반으로 웹페이지를 동적으로 만들어줄 수 있는 프로그램 과거에는 HTML만을 주고받는 정적인 웹페이지를 봤지만, 지금은 다양한 기능이 추가된 동적인 웹페이지를 본다 그런 동적인 페이지를 만들기 위한게 서블릿이다 과거 정적인 페이지 현재 동적인 페이지 WAS에 포함된 서블릿이 동적인 페이지를 만드는 연산을 수행한다 웹 컨테이너(WEB Container) 서블릿 컨테이너라고도 불리는 웹 컨테이너는 사용자의 요청을 처리하는 역할을 한다 로그인, 회원가입, 장바구니 등의 다양한 요청이 있을때 서블릿이 처리를 한다 그런 여러개의 다양한 서블릿의 연산이 웹 컨테이너 안에서 이루어진다 웹 컨테이너는 서블릿을 요청에 따라 제대로 작동하도록 제어한다 이렇게 작..
아키텍처(Architecture) 건축 분야에서 유래된 용어로써 요구 사항을 만족하는 건축물을 짓는데 있어 청사진 같은 역할을 한다 프로그램의 주요 구조 설계 : 기획한 내용을 코드로 작성할 때 필요한 주요 특징을 기술적으로 설계하고 명시하는 것 결과뭉레 필요한 모든 구성 요소를 명시하지만 , 구체적인 구현 방법은 포함시키지 않는다 예로 책상을 만드는데 책상을 사각형 모양으로 설계하고 긴다리가 붙는다고 가정하면 다리를 나사로 박은 것인지, 접착제를 사용한 것인지 명시하지 않는다 (경우에 따라 포함될 수 도 있다) 라이브러리(Library) 프로그램을 만들때 필요한 기능 : 재사용이 필요한 기능으로 코드의 반복을 없애기 위해 따로 만들어서 저장해둔 것(내 생각 누군가 똑똑한 개발자들이 만든걸) 내가 imp..

객체 지향 설계 원칙이란? 수많은 사람들이 고민하고 시행착오를 겪으면서 만든 원칙 좀 더 유지보수하기 쉽고, 유연하고, 확장이 쉬운 소프트웨어를 만들 수 있다 코드 베이스뿐만 아니라 아키텍쳐 설계에 이르기까지 다양하게 적용할 수 있다 객체 지향 설계과정 1. 요구사항을 찾고 세분화한다 2. 기능을 구현하는데 필요한 데이터를 객체에 추가한다 3. 해당 데이터를 이용하는 기능을 구현 4. 객체 간에 어떻게 메소드 호출을 주고받을지 결정 SOLID SRP, OCP, LSP, ISP, DIP의 첫 글자를 딴것이 SOLID SRP(Single Responsibility Principle, 단일 책임의 원칙) 클래스가 제공하는 기능들은 하나의 책임을 수행하는데 집중해야 한다 잘지키면 : 응집력이 높아지고, 결합도는..