Team Project7 [Spring] Spring Security를 활용한 소셜 로그인 (3/3) 🔍 CustomOAuth2UserService.java package infinitystone.chalKag.biz.customOAuth2; import java.util.UUID; import org.springframework.security.oauth2.client.userinfo.DefaultOAuth2UserService; import org.springframework.security.oauth2.client.userinfo.OAuth2UserRequest; import org.springframework.security.oauth2.core.OAuth2AuthenticationException; import org.springframework.security.oauth2.core.user.O.. Team Project 2024. 4. 9. [Spring] Spring Security를 활용한 소셜 로그인 (2/3) 🔍 UserRepository.java package infinitystone.chalKag.biz.customOAuth2; import org.springframework.data.jpa.repository.JpaRepository; public interface UserRepository extends JpaRepository { UserEntity findByEmail(String member_id); } 사용자 인증 및 권한 부여를 처리하는데 사용되는 사용자 리포지토리 인터페이스이다. 여기서 UserRepository 인터페이스는 JpaRepository를 확장하여 사용자 엔티티를 데이터베이스에서 검색하고 저장하는 데 필요한 메서드를 상속한다. 이 경우, UserEntity 객체와 연관된 사용자 .. Team Project 2024. 4. 1. [Spring] Spring Security를 활용한 소셜 로그인 (1/3) 🔍 Spring Security를 활용한 소셜 로그인 중간 프로젝트에서 구현했던 소셜로그인을 SpringSecurity와 OAuth2를 활용하여 다시 만들었다. 중간 프로젝트에서는 네이버와 카카오만 구현하였지만 이 방법들이 javascript를 활용했기 때문에 이번에는 Spring에 맞게 활용하여 네이버, 카카오 뿐만 아니라 구글 로그인도 구현할 예정이다. 🔍 signIn.jsp Sign In with Google Sign In with Kakao Sign In with Naver View에서는 oauth2를 포함한 경로를 요청한다. 🔍 SecurityConfig.java package infinitystone.chalKag.config; import org.springframework.context.a.. Team Project 2024. 3. 29. [Spring] SMS 인증 기능 Controller 이관작업 🔍 COOLSMS를 이용한 SMS 인증 중간 프로젝트에서 사용했던 SMS 인증 기능을 Spring으로 이관작업을 진행 기존에는 코드에 API KEY와 API 비밀번호가 그대로 노출되었지만 SpringMVC로 이관하면서 application.properties에 정보를 미리 작성하여 코드에 노출되지 않게 하였다. 🔍 SendAuthenticationSMS.java 기존에 new를 해주었던 객체들을 전부 멤버변수로 바꿨다. @ResponseBody 어노테이션을 사용하여 인증코드를 리턴한다. (Before) package controller.sms; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.an.. Team Project 2024. 3. 11. [JSP] 커스텀 태그를 이용하여 nav 구성 🔍 목적 카메라에 대한 정보를 공유하고 직접 찍은 사진을 올릴 수 있는 커뮤니티 사이트를 만들던 중 모든 페이지에 nav를 줘야 하는 것을 깨달았다. 계속 복사 붙여넣기를 하는 것보다는 커스텀태그를 만들어서 재사용을 하는 것이 좋다고 생각되어 만들었다. 로그인과 비로그인을 구분하여 nav를 출력한다. 🔍 main.jsp main.jsp 뿐만 아니라 거의 대부분의 페이지에서 똑같이 사용한다. The moment the shutter sound echoes, here is where creation and emotion converge. 🔍 printNav.tag EL로 받은 member의 존재 여부에 따라 nav를 다르게 출력한다. CHAL KAG UsedTrade CameraReview FreeBoard.. Team Project 2024. 1. 29. [Java] 축구 선수 이적 시장 🔥 기능 💧 코드 package team_project; import java.util.ArrayList; import java.util.Comparator; import java.util.Scanner; class FootballPlayer { // 축구선수 클래스 private int pk; // PK, 객체 고유 id로 사용 private String name; // 선수 이름 private String position; // 선수 포지션 private int totalPower; // 선수 능력치 private int price; // 가격 private int ea; // 수량 FootballPlayer(int pk, String name, String position, int totalPowe.. Team Project 2023. 12. 14. [Java] 연예인 시상 프로그램 🔥 기능 소개 및 한글코딩 연예인을 저장하고 시상식을 진행 할 수 있는 프로그램 =====저장 프로그램===== 1. 연예인 추가 2. 조회 3. 시상 4. 종료 더보기 더보기 // 1번 선택 시 // 1.가수 // 이름을 입력하세요 // 출생년도를 입력하세요 // 키를 입력하세요 // 소속사가 있습니까? // 1.예 // 소속사 입력 // 2.아니오 // 무소속 // 2.배우 // 이름을 입력하세요 // 출생년도를 입력하세요 // 키를 입력하세요 // 소속사가 있습니까? // 1.예 // 소속사 입력 // 2.아니오 // 무소속 // 명대사를 입력하세요 // 3.예능인 // 이름을 입력하세요 // 출생년도를 입력하세요 // 키를 입력하세요 // 소속사가 있습니까? // 1.예 // 소속사 입력 // 1.. Team Project 2023. 12. 11. 이전 1 다음