[모든 개발자를 위한 HTTP 웹 기본 지식] 섹션 1. 인터넷 네트워크
·
Spring | SpringBoot
IP(Internet Protocol)클라이언트 - 인터넷 - 서버→ IP 주소 부여 (클라이언트: 100.100.100.1/ 서버: 200.200.200.2)역할지정한 IP주소(IP Address)에 데이터 전달패킷(Packet)이라는 통신 단위로 전달(IP 패킷(규칙): 출발지 IP, 목적지 IP, 기타) + 메시지(전송 데이터)한계비연결성패킷 받을 대상 X or 서비스 불능 상태여도 패킷 전송ex. PC 꺼져 있음/ 거기 안살고 있어도 우편 보냄⇒ 대상 서버가 패킷을 받을 수 있는 상태인지 모름비신뢰성중간에 패킷이 사라지면?ex. 멧돼지가 광케이블 끊음⇒ 패킷 소실패킷이 순서대로 안오면? (약 1500백 바이트로 끊어서 보냄)ex. 클라이언트) 1. Hello,/ 2. world! → 서버) 2. ..
스프링부트 개념정리(이론)
·
Spring | SpringBoot
스프링이란프레임워크이다.프레임(틀)워크(동작하다) = 틀 안에서 동작하다 ⇒ 틀 제공해줄테니 벗어나지 말아라오픈소스이다.소스 코드 공개내부 볼 수 있다 = 내부 뜯어 고칠 수 있다IoC 컨테이너를 가진다.IoC(Inversion of Control): 제어의 역전주도권이 스프링에게 있다개발자 new → heap 메모리 공간에 올리고 여러 메서드에서 사용하고 싶음 ⇒ 레퍼런스 변수 주소를 각각의 메소드가 관리 → 공유하는 것이 힘듦클래스로 만든 오브젝트 → 스프링이 스캔해서 읽어서 자기가 객체를 직접 띄움 = 스프링이 읽어서 heap 메모리에 올려줌Class → 설계도 / Object → 실체화가 가능한 것 / Instance → 실체화된 것ex. 캐릭터/가구 - 추상적인 의미 → 실체화 X But, 농담..
[Spring Boot 3.x 를 이용한 RESTful Web Services 개발] 섹션 6. RESTful API 설계 가이드
·
Spring | SpringBoot
Richardson Maturity ModelMaturity Model(성수도 모델)Level 0Expose soap web services in rest stylehttp://server/getPostshttp://server/deletePostshttp://server/doThisLevel 1Expose resources with proper urihttp://server/accountshttp://server/accounts/10note: improper use of http methodsLevel 2Level1 + HTTP MethodsLevel 3Level2 + HATEOASDATA + NEXT POSSIBLE ACTIONSRESTful API 설계 시 고려해야 할 사항Consumer first..
[Spring Boot 3.x 를 이용한 RESTful Web Services 개발] 섹션 5. Java Persistence API 사용
·
Spring | SpringBoot
Java Persistence API의 개요ORM(Object Relational Mapping)객체를 관계형 데이터베이스에 있는 데이터와 자동으로 맵핑(연결)해주는 작업SQL 문장 자동으로 생성객체 사용 ~> 데이터베이스의 데이터 다룰 수 있게 해주는 메커니즘JPA(Java Persistence API)자바 ORM 기술에 대한 API 표준 명세자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스(규칙, 약속)EntityManager ~> CRUD 처리HibernateJPA의 구현체, 인터페이스를 직접 구현한 라이브러리생산성, 유지보수, 비종속성Spring Data JPASpring ModuleJPA를 추상화한 Repository 인터페이스 제공=> JDBC -> Hibernate..
[Spring Boot 3.x 를 이용한 RESTful Web Services 개발] 섹션 4. Spring Boot API 사용
·
Spring | SpringBoot
Level3 단계의 REST API 구현을 위한 HATEOAS 적용HATEOAS(Hypermedia As the Engine Of Application State)현재 리소스와 연관된(호출 가능한) 자원 상태 정보를 제공 RESTful API 설계 단계Level0: The Swamp of POXLevel1: ResourcesLevel2: HTTP VerbsLevel3: Hypermedia Controls// pom.xml org.springframework.boot spring-boot-starter-hateoas@GetMapping("/users/{id}")public EntityModel retrieveUser(@PathVariable int id) { User user = service..
[Spring Boot 3.x 를 이용한 RESTful Web Services 개발] 섹션 3. RESTful Service 기능 확장
·
Spring | SpringBoot
유효성 체크를 위한 Validation API 사용Validation APIHibernate 라이브러리에 포함된 기능데이터베이스 관련 어플리케이션 개발 -> Java의 어떤 객체를 데이터베이스 엔티티하고 매핑하기 위해 사용되는 프레임워크// pom.xml org.springframework.boot spring-boot-starter-validation 3.2.1// Userpackage com.example.myrestfulservice.bean;import jakarta.validation.constraints.Past;import jakarta.validation.constraints.Size;import lombok.AllArgsConstructor;import lombok.Dat..
0123suh
빙글빙글 돌아가는 Debug 하루