[스프링 부트 3] 블로그 만들기 - 1 (블로그 글 작성 API 구현)
·
Java & Kotlin/Spring
0. API와 REST API API란?네트워크에서 API는 프로그램 간에 상호작용하기 위한 매개체를 말한다. 예를 들어, 우리가 웹 사이트에 방문하는 상황에 적용해서 생각을 해보면,웹 사이트 주소를 입력해서 '구글 메인 화면을 보여줘'라고 요청을 하면 API는 이 요청을 받아서 서버에 가져다준다.그러면 서버는 API가 준 요청을 처리해 결과물을 만들고 이것을 다시 API로 전달한다.그러면 API는 최종 결과물을 브라우저에 보내주고 우리는 화면을 볼 수 있게 되는 구조이다.REST API란?REST API는 웹의 장점을 최대한 활용하는 API이다, "URL의 설계 방식"REST : Representational State Transfer -> 자원을 이름으로 구분해 자원의 상태를 주고받는 API 방식.R..
[스프링 부트 3] ORM, JPA, 하이버네이트
·
Java & Kotlin/Spring
0. 데이터베이스란?데이터베이스는 데이터를 매우 효율적으로 보관하고 꺼내볼 수 있는 곳이다. 데이터베이스를 사용하면 얻을 수 있는 가장 큰 이점은 굉장히 많은 사람이 안전하게 데이터를 사용하고, 관리할 수 있다는 것이다.데이터베이스 관리자, DBMSDBMS : database management system, 데이터베이스를 관리하기 위한 소프트웨어 데이터베이스는 많은 사람이 공유할 수 있어야 하므로 동시 접근을 할 수 있어야 한다. DBMS 이런 요구 사항을 만족하면서도 효율적으로 데이터베이스를 관리하고 운영한다. 예를 들어, MySQL, Oracle은 DBMS이다. DBMS는 관리 특징에 따라서 관계형, 객체-관계형, 도큐먼트형, 비관계형 등으로 분류하며,가장 많이 사용되는 DBMS는 관계형이다.▶ 관..
[스프링 부트 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. 스프링..
J_hzlo
'Java & Kotlin/Spring' 카테고리의 글 목록 (3 Page)