2024.01.07 - [Spring Boot] - [Spring Boot] 로그인 기능 구현 (0) - 공통 기능, 코드 구현 [Spring Boot] 로그인 기능 구현 (0) - 공통 기능, 코드 구현 0. 상황 설명 여러가지 방법을 사용해서 로그인 기능을 구현하려 함 공통인 기능과 코드는 이 게시글에서 모두 정리 방법마다 다른 코드는 각 게시물에서 따로 정리 * 구현한 로그인 기능 프로젝 blogan99.tistory.com 1. OAuth 란 ? 사용자가 비밀번호를 사용하지 않고 소셜 서비스 (구글, 카카오톡 등) 의 접근 권한을 현재의 다른 애플리케이션에 안전하게 위임할 수 있도록 하는 개방형 표준 프로토콜 쉽게 말하면 사이트에 회원가입하지 않고 구글, 카카오톡 등으로 로그인 하는 기능 액세스 ..
인기 게시글
2024.01.07 - [Spring Boot] - [Spring Boot] 로그인 기능 구현 (0) - 공통 기능, 코드 구현 [Spring Boot] 로그인 기능 구현 (0) - 공통 기능, 코드 구현 0. 상황 설명 여러가지 방법을 사용해서 로그인 기능을 구현하려 함 공통인 기능과 코드는 이 게시글에서 모두 정리 방법마다 다른 코드는 각 게시물에서 따로 정리 1. 프로젝트 버전 정보 / DB 스 blogan99.tistory.com 0. 스프링 시큐리티란 ? 스프링 시큐리티에 대한 내용은 이전 게시물 ( 2024.01.07 - [Spring Boot] - [Spring Boot] 로그인 기능 구현 (3) - 스프링 시큐리티 로그인) 참고 1. JWT 란 ? JWT (Jason Web Token) :..
2024.01.07 - [Spring Boot] - [Spring Boot] 로그인 기능 구현 (0) - 공통 기능, 코드 구현 [Spring Boot] 로그인 기능 구현 (0) - 공통 기능, 코드 구현 0. 상황 설명 여러가지 방법을 사용해서 로그인 기능을 구현하려 함 공통인 기능과 코드는 이 게시글에서 모두 정리 방법마다 다른 코드는 각 게시물에서 따로 정리 1. 프로젝트 버전 정보 / DB 스 blogan99.tistory.com 1. 스프링 시큐리티 (Spring Security) 란 ? 스프링에서 제공하는 프레임워크, 애플리케이션에 인증, 인가 기능을 제공함 동작 원리 로그인 시도 시, 인증 필터가 작동하여 사용자의 id, 비밀번호를 가져옴 인증 필터는 id, 비밀번호를 Authenticati..
2024.01.14 - [Spring Boot] - [Spring Boot] 로그인 기능 구현 (5) - 구글 로그인 (OAuth 2.0) 2024.01.14 - [Spring Boot] - [Spring Boot] 로그인 기능 구현 (6) - 카카오 로그인 (OAuth 2.0) 구글, 카카오 로그인을 다뤘음 카카오 로그인 까지 수정된 코드를 수정하는 방식으로 네이버 로그인을 다룸 1. OAuth 사용 네이버 로그인 구현 1-1. 애플리케이션 추가하기 네이버 개발자 센터 ( https://developers.naver.com/main/ ) 접속 로그인 Application > 애플리케이션 등록 약관동의 계정 설정 (아래 정보 기입) 휴대폰 인증 이메일 애플리케이션 등록 (API 이용신청) 애플리케이션 이..
2024.01.14 - [Spring Boot] - [Spring Boot] 로그인 기능 구현 (5) - 구글 로그인 (OAuth 2.0) [Spring Boot] 로그인 기능 구현 (5) - 구글 로그인 (OAuth 2.0) 2024.01.07 - [Spring Boot] - [Spring Boot] 로그인 기능 구현 (0) - 공통 기능, 코드 구현 [Spring Boot] 로그인 기능 구현 (0) - 공통 기능, 코드 구현 0. 상황 설명 여러가지 방법을 사용해서 로그인 기능을 구현 blogan99.tistory.com 지난 게시글에서 구글 로그인을 다룸 이번에는 카카오 로그인을 다루는데 지난 게시글의 코드를 수정/추가하는 형식으로 진행함 1. OAuth 사용 카카오 로그인 구현 1-1. 애플리케이..
2024.03.15 - [Spring Boot] - [Spring Boot] JSON 객체 송수신 예제 [Spring Boot] JSON 객체 송수신 예제 1. JSON 이란 JSON : JavaScript Object Notation 데이터 저장, 전송 등에 사용되는 데이터 교환 형식 서버와 클라이언트 사이의 데이터 교환에 주로 사용됨 키 : 값 형태를 가짐 ex : "name": "홍길동" 2. 기본 클 blogan99.tistory.com 위의 게시물과 내용이 이어짐 1. JsonString 를 Object 로, Object 를 JsonString 으로 변환 방법 Json 형태로 입력받은 String을 Object로 변환 입력받은 Objcet 를 Json 형태의 String으로 변환 JSONPars..
최신 게시글
1. 빌더 패턴 (Builder Pattern)객체 생성 시 단계별로 생성 가능하게 도와주는 디자인 패턴객체의 생성 과정을 분리함 ⇒ 다양한 구성요소를 조합하여 객체 생성ex) 이름, 나이, 학년, 과목, 학점 등을 가지는 Person 클래스 ⇒ 이름, 나이만 갖는 객체 / 이름, 나이, 학년만 갖는 객체 등주로 매개변수가 많은 생성자, 불변객체 등을 만들때 유용함 1-1. 빌더 패턴 예제Person.java@ToStringpublic class Person { private String name; private int age; private double grade; // 빌더 사용 생성자 public Person(PersonBuilder builder) { thi..
1. 로깅 (logging)애플리케이션의 동작, 오류, 이벤트 등을 기록하는 과정로깅으로 작성된 로그를 통해 개발자가 애플리케이션의 상태를 모니터링하고 문제 진단, 성능 분석 가능주요 목적 : 오류 해결, 보안 감사, 성능 개선 등 1-1. 로그 기록 장소콘솔파일이메일/문자 (SMTP/SMS)DB 1-2. 로깅 레벨패키지나 클래스 별로 로그에 남길 정보의 정도 설정 가능(스프링 부트의 로그 프레임워크인 LogBack 의 로그 레벨) TRACE DEBUG INFO WARN ERROR좌측일수록 상세한 수준 (다음 레벨의 내용 모두 포함) / 우측일수록 중요한 수준ex) DEBUG 로그 : INFO, WARN, ERROR 로그를 모두 포함TRACE : 개발 단계에서 사용, DEBUG 레벨보다 상세한 수준의 로..
1. 테스트1-1. TDD (Test Driven Development)테스트 주도 개발테스트 코드를 먼저 작성 → 작성한 테스트 코드를 통과하게끔 실제 코드 작성하는 개발 방법 TDD 주요 원칙테스트 실패 확인실제 코드를 구현하기 전 테스트 케이스를 작성함요구사항을 테스트로 변환함으로써 명확한 목표 설정 가능!테스트 통과 가능 최소 코드 작성테스트 통과에 꼭 필요한 최소한의 코드만 작성함YAGNI (You Aren’t Gonna Need It) 원칙 적용코드 개선 리펙토링테스트 통과한 최소 코드를 개선함중복 제거, 가독성 향상을 목표 ⇒ 설계가 개선되고 유지보수성이 증가함! 1-2. 테스트 유형1-2-1. 단위 테스트메서드, 클래스와 같이 개별 코드 단위를 검증하는 테스트격리된 환경에서 실행1-2-2...
1. Geocoder API 2.0open weather map 의 현재 날씨 정보 API를 사용하기 위해서는 요청에 위도, 경도를 포함해야 함내 주소 (혹은 날씨를 알고 싶어하는 주소)의 위도, 경도를 알기 위해 사용함 1-1. Geocoder API 사용 방법1-1-1. 회원가입https://www.vworld.kr/v4po_main.do 브이월드국가가 보유하고 있는 공개 가능한 공간정보를 모든 국민이 자유롭게 활용할 수 있도록 다양한 방법을 제공합니다.www.vworld.kr해당 사이트에 접속 후 회원가입 진행 1-1-2. api 인증키 발급상단의 메뉴바 클릭 오픈 API > 인증키발급 클릭 약관 동의 후 이용 정보 작성 (아래는 예시)서비스명 : 날씨 웹 서비스 예제 프로젝트서비스 분류 : 교육서..
1. Jpa Auditing 이란?엔티티에서 발생한 이벤트를 추적하고 기록함이벤트 : 생성(create), 수정(update), 삭제(delete) 등Spring Data JPA 에서 기본적으로 Auditing 정보를 추가하는 기능 제공함 2. Jpa Auditing 주요 기능@CreatedDate엔티티 생성 시간을 자동으로 기록함@CreatedDateprivate LocalDateTime createdAt;@LastModifiedDate엔티티 최종 수정 시간을 자동으로 기록함엔티티 생성 시 생성 시간이 저장됨@LastModifiedDateprivate LocalDateTime editedAt;@CreatedBy엔티티를 생성한 사용자 정보를 자동으로 기록함@CreatedByprivate User crea..
1. JpaRepository 란 ?Spring Data JPA 에서 제공하는 DB접근을 위한 인터페이스JPA 기반으로 DB와의 상호작용을 간편하게 해줌CRUD 작업을 수행하는 메서드를 기본 제공개발자가 직접 구현할 필요 x ! 2. JpaRepository 사용 방법2-1. 라이브러리 추가build.gradleimplementation 'org.springframework.boot:spring-boot-starter-data-jpa' 2-2. Repository 작성JpaRepository를 상속받음JpaRepositoryimport org.springframework.data.jpa.repository.JpaRepository;public interface UserRepository extends J..