Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- multi-threading
- 연관관계
- 시스템 환경 변수 편집
- Thread
- for문
- 인텔리제이 한글 깨짐 해결법
- 메서드
- function
- OPP개념
- continue문
- 자바 멀티스레딩
- 반복문
- 인텔리제이 기초 설정
- Java데이터 타입
- 컴파일
- 집합관계
- 포함관계
- this예약어
- JAVA기초
- 접근제어지시자
- 생성자
- 메서드 오버로딩
- break문
- IntelliJ IDEA
- While
- java변수
- Java
- JAVA객체지향
- 상수
- 형 변환
Archives
- Today
- Total
최원종의 개발 블로그
V13-3 회원 가입시 출처 관리 (로컬, 소셜) 본문
OAuthProvider 생성 (역할 부여)
package com.tenco.blog.user;
public enum OAuthProvider {
LOCAL,
KAKAO,
GOOGLE,
NAVER
}
User 엔티티 추가 코드
package com.tenco.blog.user;
import jakarta.persistence.*;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.hibernate.annotations.ColumnDefault;
import org.hibernate.annotations.CreationTimestamp;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
@Data
@NoArgsConstructor
@Table(name = "user_tb")
@Entity
public class User {
// ... 생략
@Enumerated(EnumType.STRING)
@Column(nullable = false) // null 허용 안함
@ColumnDefault("'LOCAL'") // 어노테이션으로 디폴트값 선언 방법 ( 문자열 일 경우 ' ' 반드시 사용)
private OAuthProvider oAuthProvider;
// ... 생략
// 머스태치 화면에서 사용할 편의 메서드 2 추가
// OAuthProvider 값에 따라서 경로 변수를 다르게 리턴
public String getProfilePath() {
if(this.profileImage == null) {
return null;
}
// 이미지 경로가 http 로 시작 (소셜 가입)
if(this.profileImage.startsWith("http")) {
return this.profileImage;
}
// 로컬 이미지(서버 기준 경로)
return "/images/" + this.profileImage;
}
}'Spring boot 입문' 카테고리의 다른 글
| V13-4 마이페이지 소셜 이미지 출력하기 위한 코드 수정 (0) | 2026.06.02 |
|---|---|
| V13-2 로그인시 메서드 수정(암호화 처리) (0) | 2026.06.02 |
| V13 비밀번호 암호화 (회원 가입시 암호화 처리 ) (0) | 2026.06.02 |
| V12 - 2 카카오 소셜 로그인 (0) | 2026.05.26 |
| V12-1 Oauth 2.0 (카카오 소셜 로그인) (0) | 2026.05.26 |
