Spring

Spring

WebSocket으로 채팅 구현하기

WebSocket이란? 클라이언트와 서버간의 연결을 길게 유지하고, 이 연결을 통하여 서로에게 데이터를 전송할 수 있도록 해주는 통신 규약의 일종입니다. 서버에서 클라이언트에 데이터를 보낼 수 있다는 점에서 채팅, 알림 등의 기능을 제공하기 위해서 활용합니다. 클라이언트와 서버가 WebSocket 연결을 구성하는 과정 1. 클라이언트가 서버에게 HTTP 요청을 보내면서, WebSocket 통신을 사용하고자 하는 의도를 전달합니다. 이 의도는 HTTP Header Upgrade에 담겨 전송됩니다. 2. 서버가 클라이언트에게 WebSocket 통신의 지원여부에 따라 101 응답을 전송합니다. 101이란? Switching Protocols를 의미하는 Status Code입니다. 이후 서버와 클라이언트는 성공..

Spring

[Spring Security] JWT

JWT - Json Web Token JSON으로 표현된 정보를 안전하게 주고 받기 위한 Token의 일종이다. (여기서의 토큰은 신분증에 가깝다. 이 토큰에 사용자는 누구이며, 발급일 만료일 나오고, 언제 로그인했는지까지 나오게 됩니다. ) JWT 내부에 서비스를 사용하기 위한 인증정보가 담기며, JWT를 받은 서비스는 JWT가 위변조가 되었는지 알아차릴 수 있기 때문에 Token 기반의 인증 시스템에서 많이 활용됩니다. JWT 특징 사용자 확인을 위한 인증 정보 위변조 확인이 용이 → 위변조가 어려움 토큰 기반 인증 시스템에서 많이 활용 기본적으로 JWT는 세부분으로 나뉘어져 만들어집니다. header.payload.signature header.payload.signature header : JWT..

Spring

[Spring] Logging

Logging이란? 로그를 남기는 행위 Logger 로그를 작성하기 위해 사용하는 객체 Slf4j (Simple Logging Facade 4 Java) Java에서 로그를 작성하는 방법을 통일하는 프레임워크 자기자신을 로그를 남기는 프레임워크가 아니고, 다양한 로그 프레임 워크를 사용하는 방법의 Facade(디자인패턴)일 뿐이다. Facade 복잡한 단계를 거치거나, 여러 구성 요소를 사용해서 도달해야 하는 기능을 좀더 단순하게 사용할 수 있는 인터페이스를 만드는 디자인 패턴의 일종 Logback 현재 스프링 부트에서 기본으로 사용하고 있는 Logging 프레임 워크 XML을 이용해 설정 Logging 동작 알아보기 TestController 코드 추가 (logger 사용하기) //@Slf4j @Res..

Spring

[Spring] 테스트 클래스란?

Testing 💡 테스팅이란? 저희가 만든 산출물이 기대한 대로 작동하는지를 시험해 보는 것을 . 어느 단계의 산출물을 테스트 하는지에 따라서 계층으로 나누어서 생각할 수 있다. ✅ 테스트의 종류 단위 테스트Unit Test : 개별 코드 단위(주로 메소드)를 테스트 하는 단계 → 컨트롤러, 서비스, 레포지토리 계층에서 정의한 개별 메소드들이 정상적으로 작동하는지 테스트 하는 것을 의미합니다. 통합 테스트 Integration Test : 서로 다른 모듈이 상호 작용 하는 것을 테스트 하는 단계 → 컨트롤러, 서비스, 레포지토리가 전체 그림에서 유연하게 상효작용하는지를 테스트하는 것을 의미합니다. 시스템 테스트 System Test : 완전히 통합되어 구축된 시스템을 테스트 하는 단계 ✅ 테스트 코드의 ..

Spring

[Spring] 유효성 검사

유효성 검사란? 사용자가 입력한 데이터가 허용하는 형태인지 검사하는 과정 예) 이름을 입력하는 공간에 숫자를 입력하거나 등 원하는 데이터가 맞는지 spring-boot-starter-validation jakarta Bean Vaolidation 유효성 검증을 위한 기술 명세 어떤 항목이 어떤 규칙을 지켜야 하는지 표시하는 기준 Hibernate Vailidation jakarta beanb validation을 토대로 실제로 검증해주는 프레임 워크 둘의 관계는 JPA와 Hibernate ORM과 유사하다. ⇒ Spring data JPA jpa repository Jakarta Bean Validation specification validation 참고 사이트 💻 실습 📌 목표 : usercontro..

Spring

POSTMAN 사용하기

POSTMAN이란? API 개발을 보다 빠르고 쉽게 구현 할 수 있도록 도와주며, 개발된 API를 테스트하여 문서화 또는 공유 할 수 있도록 도와 주는 플랫폼이다. REST API POSTMAN은 REST API를 표현할 수 있다 💡 REST AIP란? 한 문장으로 정의한다면 HTTP URI로 잘 표현된 리소스에 대한 행위를 HTTP Method로 정의한다. 리소스의 내용은 json, xml, yaml등의 다양한 표현 언어로 정의된다. 즉, URI를 이용해서 제어할 자원을 명시하고 HTTP를 이용해서 제어명령을 내린다. postman 참고 사이트 https://incheol-jung.gitbook.io/docs/q-and-a/infra/2018-01-03-how-to-use-postman RequestM..

dalooong
'Spring' 카테고리의 글 목록 (2 Page)