2025/02/11 5

spring-boot(6)

6. 블로그 기획하고 API 만들기 6.1 API와 REST APIAPI: 클라이언트의 요청을 서버에 전달하고 서버의 결과물을 클라이언트에게 돌려주는 역할.REST API: 웹의 장점을 최대한 활용하는 API. 자원의 이름으로 구분해 자원의 상태를 주고받는 API. REST API의 장점은 URL만 보고도 무슨 행동을 하는 API인지 명확하게 알 수 있다는 겁니다. 상태가 없다는 특징이 있어서 클라이언트와 서버의 역활이 명확하게 분리됩니다. 또한 HTTP 표준을 사용하는 모든 플랫폼에서 사용 가능합니다.단점으로는 HTTP메서드인 GET, POST와 같은 방식의 개수에 제한이 있고 설계를 하기 위한 공식적으로 제공되는 표준 규약이 없다는 겁니다. REST API를 사용하는 방법규칙 1. URL에는 동사를 ..

카테고리 없음 2025.02.11

spring-boot(5)

5. 데이터베이스 조작이 편해지는 ORM 5.2 ORM이란?ORM(Object Realtional Mapping)은 자바의 객체와 데이터베이스를 연결하는 프로그래밍 기법입니다. ORM 장점과 단점1: SQL을 직접 작성하지 않고 사용하는 언어로 데이터베이스에 접근할 수 있습니다.2: 객체지향적으로 코드를 작성할 수 있기 때문에 비즈니스 로직에만 집중할 수 있습니다.3: 데이터베이스 시스템이 추상화되어 있기 때문에 MySQL에서 PostgerSQL로 전환한다고 해도 추가로 드는 작업이 거의 없습니다.4: 매핑하는 정보가 명확하기 때문에 ERD에 대한 의존도를 낮출 수 있습니다. 1. 프로젝트의 복잡성이 커질수록 사용 난이도도 올라갑니다.2. 복잡하고 무거운 쿼리는 ORM으로 해결이 불가능한 경우가 있습니다..

카테고리 없음 2025.02.11

spring-boot(4)

4. 스프링 부트3와 테스트 4.1 테스트 코드 개념 익히기테스트 코드는 작성한 코드가 의도대로 잘 동작하고 예상치 못한 문제가 없는지 확인할 목적으로 작성하는 코드입니다. 유지보수에 매우 좋고 코드 수정시 기존 기능이 제대로 작동하지 않을까봐 걱정하지 않아도 된다는 장점이 있기에 꼭 공부를 해야하는 부분입니다. 테스트 코드란?테스트 코드는 test디렉터리리에서 작업합니다. 테스트 코드에도 다양한 패턴이 있지만 given-when-then 패턴을 사용할 것입니다. 테스트를 세 단계로 구분해서 작정하는 방식입니다.1. given은 테스트 실행을 준비하는 단계2. when은 테스트를 진행하는 단계3. then은 테스트 결과를 검증하는 단계 4.2 스프링 부트3와 테스트애플리케이션을 테스트하기 위한 도구와 어..

카테고리 없음 2025.02.11

spring-boot(3)

3. 스프링 부트3 구조 이해하기 3.1 스프링 부트3 구조 살펴보기스프링 부트는 각 계층이 양 옆의 계층과 통신하는 구조입니다. 계층은 각자의 역할과 책임이 있는 소프트웨어의 구성 요소를 의미합니다. 각 계층은 소통할 수는 있지만 다른 계층에 직접 간섭하거나 영향을 미치지는 않습니다. 컨트롤러                         서비스                       리포지터리프레젠테이션 계층    비즈니스 계층    퍼시스턴스   데이터베이스 프레젠테이션 계층HTTP 요청을 받고 이 요청을 비즈니스 계층으로 전송하는 역할을 합니다. 컨트롤러가 프레젠테이션 계층 역할을 합니다. 비즈니스 계층모든 비즈니스 로직(서비스를 만들기 위한 로직)을 처리합니다. 서비스가 비즈니스 계층의 역할을 합니..

카테고리 없음 2025.02.11

spring-boot(2)

1. 백엔드 개발자가 알아두면 좋은 지식 1.1 서버와 클라이언트인터넷 서비스는 보통 서버와 클라이언트가 관계를 맺습니다. 클라이언트: 서버로 요청하는 프로그램(웹 브라우저). 웹 브라우저에 주소를 입력하고 엔터를 눌러 정보를 요청하는 행위를 '서버에 요청한다'고 합니다. 서버: 클라이언트의 요청을 받아 처리하는 주체. 웹 브라우저에 주소를 입력하는 건 '새로운 화면을 위한 데이터를 달라'는 데이터 요청입니다. 1.2 데이터베이스데이터베이스는 여러 사람이 데이터를 한 곳에 모아놓고 여러 사람이 사용할 목적으로 관리하는 데이터 장소입니다. RDB: RDB(Relational Database)의 약자로 관계형 데이터베이스를 뜻합니다. 관계형 데이터베이스는 데이터를 행과 열로 이루어진 테이블로 관리하며 기본키..

카테고리 없음 2025.02.11