스프링 5

MVC

-> MVC에 대한 설명 What is MVC? Model - 평벙한 자바 객체 POJO - 도메인 객체 또는 DTO로 화면에 전달할 또는 화면에서 전달받은 데이터를 담고 있는 객체(@Entity), Database와 강하게 연관 View - HTML, JSP, THYMELEAF - 데이터를 보여주는 역할, 다양한 형태: HTML, JSON, XML Controller - UserController, ArticleController - 사용자 입력을 받아 모델 객체의 데이터를 변경하거나 뷰에 전달하는 역할, 예) 입력값 검증, 모델 객체 변경, 변경된 모델 개체 뷰에 전달 MVC 장점 동시다발적개발 : 백엔드 개발자와 프론트엔드 개발자 독립적으로 개발 진행 높은 응집도: 논리적으로 관련있는 기능을 하나의..

Back-end/Spring 2021.05.16

API vs LIbrary vs Framework

API(Application programming interface) 응용 프로그램에서 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스 특징 구현과 독립적으로 사양만 정의되어있다 API에 따라 접근 권한이 필요할 수 있다 Java API, 여러 기업들의 오픈 API Library 응용 프로그램 개발을 위해 필요한 기능(함수)을 모아 놓은 소프트웨어 특징 독립성을 가진다 응용 프로그램이 능동적으로 라이브러리를 사용한다. Apache Commons, Guava, Lombok, jQuery Framework 응용 프로그램이나 소프트웨어의 솔루션 개발을 수월하게 하기위해 제공된 소프트웨어 환경 특징 상호협력하는 클래스와 인터페이스의 집합 응용 프로그램이 수동적으로 프레임워크에 의해..

Back-end/ETC 2021.05.07

Spring Boot vs Spring

Spring -> 이름의 유래 개발자들의 겨울이 끝났다 !! 봄이 왔다!! 1. 모든 dependency를 버전까지 정확하게 한땀 한땀. 2. configuration 길다! Spring boot makes it easy stand - alone production -grade Spring based Applications just run 1. 짧아 졌다. 버전 관리도 권장버전으로 자동설정 스타터로 자동 디펜던시 2. gradle 이용시 더 짧은 길이 application.properties-> aplication.yml 사용자가 보기 깔끔하다. *Yaml Ain't Markup Language 3. Tomcat 내장 서버 -> 내장 서블릿 컨테이너 덕북에 jar 파일로 간단 배포! 4. 스프링 Seur..

Back-end/SpringBoot 2021.05.01

MVC 패턴

디자인 패턴? 구현 SW 개발방법을 공식화 한것 1. MVC 패턴이란 Model & View & Controller 애플리 케이션을 3가지로 역할로 구분한 개발 방법론 모델 1. JSP(view) + javaBean(Service) 뷰와 로직이 섞인다 장점 단점 구조가 단순 출력과 로직 코드가 섞여 JSP코드가 복잡해진다 프런트와 백엔드가 혼재되어 분업이 용이하지 않다 유지보수가 어렵다. 모델 2. [JavaBean(Service) + JSP(view) + 서블릿(controller)] MVC구조 장점 단점 뷰와 로직의 분리로 모델1에 비해 덜 복잡하고, 분업이 용이하며, 유지보수가 쉽다. 습득이 어렵고 작업량이 많다 MVC흐름 1. 사용자는 원하는 기능을 처리하기 위한 모든 요청을 컨트롤러에 보낸다. ..

DTO vs VO

DTO(Date Transfer Object) 레이어 간 데이터를 전달하는 객체 데이터 접근 메서드 외에 기능을 가지지 않음(setter, getter 로만 구성) + 정렬, 직렬화 등 데이터 표현을 위한 기능은 가질수 있음 데이터의 캡슐화를 통해 유연한 대응이 가능함 + 데이터 요청 수 감소 효과 VO 값 자체로 의미를 가지는 객체 변하지 않는 값을 가지는 객체 -> 값이 변하지 않음을 보장하여 코드의 안정성과 생산성을 높임 값이 같다면 동일한 객체 -> 각 개체를 비교하는 데 사용되는 ID가없음 -> 같은 객체인지 판단하기 위해 각 속성들의 값을 비교함 공통점 레이어 간 데이터를 전달할때 사용가능 (VO는 불변을 보장하기 때문에 데이터 전달 용도로 사용 가능) DTO VO 값이 변할수 있음 레이어와 ..

Back-end/Spring 2021.04.23