일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- Map 인터페이스
- 오류
- html
- Eclipse
- 이클립스 설치
- 자바
- CSS
- Collection 인터페이스
- 버전관리
- 컬렉션 프레임워크
- Collection Framework
- 이클립스
- GitHub
- 싱글톤 패턴
- 깃허브
- 패키지
- Git
- 클래스
- singlrton pattern
- Method
- Class
- 해결
- 깃
- 인터페이스
- 메서드
- java
- Today
- Total
목록Spring (9)
함께 일하고 싶은 PM이 되기 위한 승애의 끊임없는 학습 일지 💗
안루피취뽀일기

카카오 로그인의 흐름은 간단하다. 리소스 오너(사이트)가 카카오 로그인 창을 클라이언트에게 보여주면, 클라이언트는 로그인을 시도하고, 동의 항목을 체크하여 카카오 API 서버에 넘긴다. 전달받은 정보를 가지고 카카오 API 서버는 인가 코드를 발급해주고 인가 코드를 통해 로그인을 유지할 수 있는 토큰을 발급해준다. "애플리케이션 추가하기" 를 클릭! 앱 이름과 사업자명은 필수로 등록 내 애플리케이션 -> 제품 설정 -> 카카오 로그인 카카오 로그인 활성화 켜주기!!!! 카카오 로그인을 사용할 클라이언트 도메인 주소를 입력하는 항목이다. 로컬환경에서 테스트 예정이므로 http://localhost:8080으로 설정! 등록완료 카카오 로그인 활성화 설정 화면에서 아래로 스크롤 하면 Redirect URI 입..

OAuth 로그인..? OAuth는 Open Authorization의 약자로서 2006년에 구글과 트위터가 만든 개방형 인가의 표준이다. 요즘 대부분의 사이트에서 카카오, 네이버, 구글 로그인 등을 지원한다. 사이트에서 직접 회원가입을 하지 않고 위의 소셜 서비스에 로그인을 함으로써 로그인을 할 수 있게 해준다. 이러한 로그인 과정을 OAuth 로그인이라고 하는 것! OAuth2를 본격적으로 알아보기 전에 인증, 인가, 액세스 토큰(access token), 리프레시 토큰(refresh token) 등의 주요 용어부터 알아보자. 인증: 리소스에 접근 자격이 있는지 검증하는 과정으로 OAuth에서 리소스는 보호된 정보를 의미한다. 인가: 자원에 접근할 권한을 부여하는 과정으로 인가가 완료되면 리소스의 접..

REST API에 대해서 알아보기 전에 JSON이 뭔지부터 시작해보자. JSON(Java Script Object Notation) - 자바스크립트 객체 표기법 데이터를 쉽게 '교환'하고 '저장'하기 위한 텍스트 기반의 데이터 교환 표준 JSON은 텍스트 기반이기 때문에 다양한 프로그래밍 언어에서 데이터를 읽고 사용할 수 있다. JSON이 나오기 전에는 XML을 이용해서 프론트와 백엔드가 데이터를 교환했는데 프론트 서버에 보내야하는 데이터보다 XML 태그가 더 많아서 코드를 짜기가 불편하고 힘들었다. 그래서 보다 간단하게 데이터를 교환하자 해서 나온게 JSON! JS 객체를 서버로 전송하려면, 직렬화(문자열로 변환)가 필요한데, 그걸 가능하게 해주는 게 stringify() 다. 서버가 보낸 데이터(JS..

JPA에서 가장 중요한 개념 중에 하나인 영속성 컨텍스트(Persistence Context)와 이를 다루는 EntityManager를 알아보자. Entity manager JPA를 사용하기 위해서는 Database 구조와 맵핑된 JPA Entity 들을 먼저 생성하게 된다. 그리고, 모든 JPA의 동작은 이 Entity들을 기준으로 돌아가게 되는데, 이 때 Entity들을 관리하는 역할을 하는 녀석이 바로 EntityManager인 것이다. EntityManager의 동작 JPA는 기본적으로 한 요청 당, 하나의 EntityManager를 사용한다. 또, 각 EntityManager들은 정해진 영속성 컨텍스트를 참조하게 된다. 그리고 이렇게 만들어진 EntityManager로 데이터를 다루려면 가장 먼..

Spring에서 클래스에 컨트롤러를 지정해주기 위한 어노테이션은 @Controller와 @RestController가 있다. 이 2가지 어노테이션의 차이점에 대해 정리해봅시다. 먼저 알아야 할.. @RequestBody, @ResponseBody 어노테이션 보통 웹에서 화면 전환이 없이 이루어지는 동작들은 대부분 비동기 통신으로 이루어진다. 비동기 통신을 하기 위해선 클라이언트가 서버로 요청 메시지의 본문(Body)에 데이터를 담아서 보내야 하고, 서버도 클라이언트에 응답하기 위해 응답 메시지의 본문(Body)에 데이터를 담아서 보내야 한다. 이 때의 본문(body)를 각각 Request Body와 Response Body로 부르는데, 이러한 Body에 담기는 데이터 형식은 JSON(JavaScript ..

1. https://start.spring.io/ 에 들어가 spring initializr로 프로젝트를 다운로드해준다 String initializr은 스프링부트를 기반으로 spring관련 프로젝트를 생성해주는 사이트로 프로젝트를 다운하여 쉽게 사용이 가능하도록 만든 사이트이다! 매우매우 편리하다 Project: SpringBoot를 빌드하고 배포하는 방식이다. Language: 사용하고자하는 언어를 선택하면 된다. (일반적으로 Java가 사용됨) SpringBoot: 버전을 선택해 준다. SNAPSHOT은 데모버전이고 높은 버전은 높은 자바버전을 필요로 하므로 SNAPSHOT이 없는 낮은 버전을 선택하는 것이 좋다. Group: 기업 도메인명 Artifact: 빌드되어 나올 결과물 Name: 프로젝트..

의존성 주입(Dependency Injection) 이란? Spring 프레임워크는 3가지 핵심 프로그래밍 모델을 지원하고 있는데, 그 중 하나가 의존성 주입(Dependency Injection, DI) 이다. DI란 외부에서 두 객체 간의 관계를 결정해주는 디자인 패턴으로, 인터페이스를 사이에 둬서 클래스 레벨에서는 의존관계가 고정되지 않도록 하고 런타임 시에 관계를 동적으로 주입하여 유연성을 확보하고 결합도를 낮출 수 있게 해준다. 의존성이란 한 객체가 다른 객체를 사용할 때 의존성이 있다고 한다. 예를 들어 다음과 같이 Store 객체가 Computer 객체를 사용하고 있는 경우에 우리는 Store 객체가 Computer 객체에 의존성이 있다고 표현한다. public class Store { pr..

Spring 공부를 하다보면 Bean이라는 개념이 자주 등장한다. 자주 사용하는 용어이기 때문에 당연히 알고 있는 개념이라고 생각하지만... 막상 의미를 정의하라고 하면 헷갈리는 경우가 많다. 허허 Bean의 개념을 명확하게 정리해보도록 하자! 1. Java Bean 결론부터 말하자면 Java Bean은 특정 형태의 클래스를 가르키는 뜻으로 사용된다. DTO 혹은 VO의 형태가 Java Bean이라고 생각하면 쉽다. 필드는 private으로 구성되어 getter과 setter를 통해서만 접근할 수 있고, 전달 인자가 없는 생성자를 가지는 형태의 클래스이다. getter / setter public의 no-argument 생성자 모든 필드는 private으로 getter와 setter를 통해서만 접근 가능..