백엔드는 웹프로그래밍 수업을 수강하면서 MySQL 사용법 정도만 익힌게 다였다.개발을 하다보니 나는 너무 프론트 쪽에만 지식이 있고 백에 취약하다는 생각이 들어 꼭 경험해보고 싶어졌다.Postman은 프론트 개발자로 프로젝트를 진행하면서 API 테스트를 위해 필요한 경
보통 서버 개발자, 백엔드 개발자 둘중 하나로 부른다. 하나의 프로젝트에서 프론트엔드-백엔드, 안드로이드-서버, iOS-서버 이런 식으로 붙이기 나름이라고 생각한다. 좀 찾아보고 내가 이해한 바는 이렇다. 서버 개발자 : 서버에서 돌아가는 프로그램 개발 e.g. 서버
REST(REpresentational State Transfer) 아키텍처 스타일의 디자인 원칙을 준수하는 API로, RESTful API라고도 한다.REST API는 거의 모든 프로그래밍 언어를 사용해 개발이 가능하며, 다양한 데이터 포맷을 지원한다. REST AP
Java 기반의 백엔드 혹은 웹 풀 스택 개발을 지원하는 프레임워크로 speed, simplicity, productivity에 집중한다. 프레임워크란? 새로운 애플리케이션을 보다 효율적으로 개발할 수 있도록 하는 재사용 가능한 소프트웨어 구성 요소의 모음. 특정 소
1. Spring Initializr로 프로젝트 시작하기 https://start.spring.io/ project : gradle-groovy languange : java project metadata : group, artifact, description 설정
H2 Database는 Java로 작성된 관계형 데이터베이스 관리 시스템으로 용량이 가볍다. Spring boot가 지원하는 In-memory 관계형 DB로 로컬 환경이나 테스트 환경에서 많이 쓰인다. 이 데이터베이스의 사용과 Spring Boot 연결 방법을 알아보자
계층 설계하기(Layered Architecture) - Controller, Servicee, Repository, Domain, Dto... Layered Architecture는 복잡한 시스템을 계층 구조로 구성하여 구현하는 방법으로, 시스템을 여러 개의 계층으로
ORM이란 OOP(Object-Oriented Programming)가 갖고 있는 객체와 RDB(Relational Database)가 갖고 있는 패러다임의 불일치(Object-relational impedance mismatch)를 해소하기 위해 나온 기술이다.
다음과 같은 API를 설계한다고 생각해보자. 특정 사용자 정보 조회 API(GET)와 사용자 생성 API(POST)이다. Controller, DTO, Service와 Domain에서 기능을 구현하고 Repository에서 필요한 메소드를 만들어 DB에 접근한다.
관계형 데이터베이스는 key-value 형태로 이루어진 데이터들을 테이블(=표)의 형태로 정의하고, 테이블 간의 연관관계를 맺는 방식으로 상호작용할 수 있게 표현한 데이터베이스를 의미한다.e.g. MySQL, PostgreSQL, Maria DB, Oracle DBRD
SQL(Structured Query Language)은 관계형 데이터베이스에 접근하고 조작하기 위한 표준 언어로 데이터베이스에 대한 쿼리 실행, 데이터 검색, 레코드 삽입/업데이트/삭제, 새로운 데이터베이스 생성, 새 테이블 생성, 뷰 생성, 권한 설정, 저장 프로시
영속성 컨텍스트는 JPA에서 Entity를 영구 저장하고 관리하는 작업을 수행하는 공간을 말한다. PC에서는 Entity를 식별자로 구분한다. JPA는 보통 트랜잭션을 커밋하는 순간 PC에 새로 저장된 엔티티를 데이터베이스에 반영하는데 이를 flush라고 한다.
프록시(Proxy) 객체는 실제 Entity의 정보를 갖고 있는 가짜 Entity 객체이다. 지연 로딩을 사용해 Entity의 연관 관계로 조회하는 경우 프록시 객체를 활용한다. 연관된 Entity를 조회할 때, 실제 데이터를 조회해오는 것이 아니라 Entity에 대한
DB에 데이터를 추가하기 위한 API를 설계한다. 외래키(FK)를 통해서 Table간의 관계를 맺어주고, 게시글을 의미하는 Post Entity와 Member Entity간 N:1 연관관계를 맺어준다. 이때 사용자가 사라지면 Post도 사라지도록 CascadeType을
TIL SERVER DB라는 이름의 Database를 만들기 위해 root 계정 아이디와 비밀번호를 입력하고 Test Connection 버튼을 눌러본다. 성공 시 OK 버튼을 누르면 생성됨! 해당 DB의 Query Console을 열어 `show databases ;