[스프링 부트 3] 테스트 코드란? / 테스트 코드 작성하기
·
Java & Kotlin/Spring
0. 테스트 코드란?테스트 코드는 작성한 코드가 의도대로 잘 동작하고 예상치 못한 문제가 없는지 확인할 목적으로 작성하는 코드이다. □ 테스트 코드를 사용하는 이유버그 방지 및 품질 향상유지보수에 매우 좋음리팩토리 용이성테스트 코드 패턴테스트 코드에도 다양한 패턴이 있다.우리가 다루고자 하는 패턴은 given-when-then 패턴이다. given-when-then 패턴given테스트 실행을 준비하는 단계when테스트를 진행하는 단계then테스트 결과를 검증하는 단계@DisplayName("새로운 메뉴를 저장한다.")@Testpublic void saveMenuTest(){ // given : 메뉴를 저장하기 위한 준비 과정 final String name = "아메리카노"; final int..
[스프링 부트 3] 구조 이해하기 (프레젠테이션, 비즈니스, 퍼시스턴스 계층)
·
Java & Kotlin/Spring
1, 스프링 부트 3 구조 살펴보기프레젠테이션 계층HTTP 요청을 받고 이 요청을 비즈니스 계층으로 전송하는 역할 >> 컨트롤러가 프레젠테이션 계층의 역할을 함 컨트롤러는 스프링 부트 내에 여러 개가 있을 수 있다. 비즈니스 계층모든 비즈니스 로직을 처리하는 역할비즈니스 로직? : 서비스를 만들기 위한 로직 >> 서비스가 비즈니스 계층의 역할을 함 ex) 주문 서비스라고 한다면 주문 개수, 가격 등의 데이터를 처리하기 위한 로직, 주문 처리를 하다가 발생하는 예외 처리 로직, 주문을 받거나 취소하는 것 같이 프로세스를 구현하기 위한 로직 퍼시스턴스 계층모든 데이터베이스 관련 로직을 처리하는 역할이 과정에서 데이터베이스에 접근하는 DAO 객체를 사용할 수도 있다.DAO? : 데이터베이스 계층과 상호작용하기..
[스프링 부트 3] 초기 세팅 (IntelliJ) & Hello World 출력하기
·
Java & Kotlin/Spring
1. 프로젝트 생성 프로젝트 이름 설정Language : JavaBuild system은 Gradle로 설정Gradle DSL : GroovyGroupId : 회사 도메인이나, 자신의 도메인으로 설정Bulid System : Gradle과 Maven의 차이점은?빌드 시스템에 있는 그레이들과 메이븐은 소스 코드를 이용해서 실행 가능한 애플리케이션을 생성하는 과정을 자동화하는 프로그램.이 과정에서 의존성 내려받기, 코드 패키징, 컴파일, 테스트 실행 등이 포함되어 있음.그레이들의 특징은 다음과 같음.- 메이븐에 비해 가동성이 좋고 설정이 간단함.- 자바,코틀린, 그루비 등 다양한 언어를 지원하며, 원하는 대로 빌드 스크립트 작성 가능.- 빌드와 테스트 속도가 메이븐에 비해 더 빠름. 2. Gradle 세팅g..
[스프링 부트] 기본 개념 (IoC, DI, 빈, 컨테이너, AOP, PSA)
·
Java & Kotlin/Spring
0. 스프링 부트스프링의 설정이 매우 복잡하다는 단점을 보완하고자 스프링 부트 등장스프링 프레임 워크를 더 쉽고 빠르게 이용할 수 있도록 만들어주는 도구이다.프로젝트를 빠르게 설정할 수 있고 stater를 사용해 간편하게 의존성 관리가 가능하다.개발자가 조금 더 비즈니스 로직 개발에만 집중할 수 있도록 만들어주는 도구이다.1. 스프링 부트의 주요 특징톰캣, 제티, 언더토우 같은 웹 애플리케이션 서버(WAS)가 내장되어 있어서 따로 설치하지 않아도 된다.빌드 구성을 단순화하는 스프링 부트 스타터를 제공한다.XML 설정을 하지 않고 자바 코드로 모두 작성할 수 있다.JAR을 이용해서 자바 옵션만으로도 배포가 가능하다애플리케이션의 모니터링 및 관리 도구인 spring actuator를 제공한다.1-1. 스프링..
DEV-Web Planner 달력 날짜 이동하기 / UI 구현 (2)
·
FE/Js
달력 날짜 이동하기 / UI 구현 이런느낌으로 날짜 클릭시 날짜 변경 및 right-container의 상단 UI를 구성할 예정이다. 목표 날짜 이동하기 기능 . JS 일단은 이런식으로 showMain 함수를 넣어주면 right-container의 상단에 오늘의 날짜가 표시 될 것이다. 여기서 이제 우리가 클릭을 할때마다 날짜를 갱신해줄려면 showMain 함수 안에 있는 date값을 공략해주면 된다. 그러면 showMain 함수를 호출할때마다 viewDate와 viewDay가 저절로 갱신이 되면서 오른쪽 상단의 UI가 저절로 바뀔 것이다. 다행히도 우리는 지금까지 calendar에서 현재 보고 있는 달력의 칸들에는 date라는 클래스가, 이번달에 해당하는 부분의 달력의 칸들에는 this라는 클래스가 부..
DEV-Web Planner 달력 구성 (1)
·
FE/Js
HTML /CSS 뼈대 잡기 달력을 직접 만들 예정이다 .. !! (유튜버 만학도 프로젝트 with JS님의 코딩을 참고했다.) 레이아웃 확인을 위해 border 라인을 넣어주고 flex를 통해서 구간을 나누었다. ============================================================================================ left-container에 들어가는 달력 만들기 원래는 달력을 구현하는 부분에 있어서 너무 복잡해가주고 그냥 라이브러리를 가져다가 쓸려고 했는데 라이브러리가 더 복잡하고 기능을 추가하자니 내가 만든 게 아니다 보니까 쉽지 않았다. 그래서 그냥 이참에 이해도도 높일 겸 달력을 직접 만들기로 했다. Calendar.js 일단은 캘린..
J_hzlo
'분류 전체보기' 카테고리의 글 목록 (9 Page)