본문 바로가기

WEB/SPRING6

[SPRING] 기존 Controller 코드를 롬복으로 전환 🧨롬복 롬복: 자바 개발 시 자주 사용하는 코드 Getter, Setter, 기본 생성자, toString 등을 어노테이션으로 자동 생성해주는 자바 개발자들의 필수 라이브러리 build.gradle에 미리 넣어둔 compile('org.projectlombok:lombok')로 수행됨. 🧨hello controller 코드를 롬복으로 전환 기존 코드를 롬복으로 리팩토링하는 과정! 1. Dto 생성 🔽main/패키지/web/dto/HelloResponseDto import lombok.Getter; import lombok.RequiredArgsConstructor; @Getter @RequiredArgsConstructor public class HelloResponseDto { private final.. 2021. 10. 7.
[SPRING] Controller 테스트 코드 작성 패키지명 - 일반적으로 웹 사이트 주소의 역순. admin.moong.com이면 패키지명은 com.moong.admin 🔽Application.java (main 안의 패키지 안에 생성) import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } @SpringBootApplication : 스프링 부.. 2021. 10. 6.
TDD와 단위 테스트, 테스트 코드 🧨TDD: 테스트가 주도하는 개발. 테스트 코드를 먼저 작성하는 데에서 시작! 레드 그린 사이클 RED. 항상 실패하는 테스트를 먼저 작성 GREEN. 테스트가 통과하는 프로덕션 코드를 작성 REFRACTOR. 테스트가 통과하면 프로덕션 코드를 리팩토링 리팩토링: 결과의 변경 없이 코드의 구조를 재조정. 주로 가독성을 높이고 유지보수를 편하게 하는 것. 사용자가 보는 외부 화면은 그대로 두면서 내부 논리나 구조를 바꾸고 개선하는 유지보수 행위 🧨단위 테스트unit test: 기능 단위의 테스트 코드 작성. (TDD의 첫 번째 단계. TDD와 달리 테스트 코드를 먼저 작성해야 하는 것도 아니고, 리팩토링도 미포함. ) 테스트 코드 작성의 이점 개발 단계 초기에 문제 발견 가능 기능에 대한 불확실성 감소 나.. 2021. 10. 5.
[SPRING] 인텔리제이로 스프링 부트 시작하기 🌸인텔리제이에서 프로젝트 생성 후 깃과 깃허브 사용하기 Gradle로 프로젝트 생성 후 기본적으로 설치되는 .gradle, .idea를 .gitignore에 등록! gitignore 사용 위해선 ctrl + shift + a로 action 검색창 열고 plugins 검색 - Marketplace에서 .gitignore 서치 후 설치 🌸그레이들 프로젝트를 스프링 부트 프로젝트로 변경하기 > build.gradle 파일 수정 buildscript { //'이 프로젝트의'('인텔리제이의' 아님!) 플러그인 의존성 관리를 위한 설정. ext { //build.gradle에서 사용하는 전역변수를 설정하겠다 springBootVersion = '2.1.9.RELEASE' //springBootVersion이라는 전.. 2021. 10. 4.
MVC 웹 프레임워크와 DJANGO MTV MVC : 모듈화. 각 담당자별로 기능 나눔. Model: DB table/Schema 정의. 데이터베이스의 데이터의 형식을 지정하고 저장하고 불러오는 작업들에 관한 코드들. 데이터 관리. View: 시각화. HTML, CSS. 데이터가 유저에게 보이는 곳. 사용자 인터페이스. Controller: Model의 데이터를 view에 연결해서 사용자가 데이터를 읽고 쓰고 지우고 할 수 있도록 전반적 제어. 클라이언트의 request를 받아 response로 전달하는 일련의 과정을 관리. 처리과정. logic 담당. 라이브러리: 각각 개별적인 기능. 이걸 가져다씀. 프레임워크: 이것들이 연결돼서 기초적인 제품 골격을 갖춘 상태. 이걸 기본틀로 삼아서 새로 만듦. 파이썬 기반 장고는 MVC 말고 MTV 구조 가.. 2021. 10. 3.
REST API와 CRUD 정보 주고받아지는 데에서 개발자들 사이에 널리 쓰이는 일종의 '형식' API: 미리 작성된 소프트웨어를 통해서 지정된 형식으로 정보 요청&명령 받을 수 있는 수단. 어떻게 구성돼있는지는 잘 몰라도 원하는 기능을 가져와 쓸 수 있음. REST API: 각 요청이 어떤 동작이나 정보를 위한 건지 그 요청 모습 자체로 추론 가능. HTTP 프로토콜 기반. HTTP 규약에 따라 신호 전송. HTTP 요청을 보낼 때 어떤 URI에 어떤 메소드를 사용할지 개발자들 사이에 지켜지는 약속 REST: REpresentational State Transfer: 상태표현을 주고받는 것. RESTful한 API: 누구든 각 요청의 의도를 쉽게 파악할 수 있는 API! 목적에 따라 CRUD 구분해서 사용. CRUD 구조를 Op.. 2021. 10. 3.