본문 바로가기

전체 글53

Interface로 추상화하여 Enum 사용 @ExceptionHandler를 사용하여 예외 처리를 하고 클라이언트에게 ResponseEntity를 사용하여 보여줄 정보만 보내려고 한다. 이때 ExceptionResponse라는 것을 만들어서 이곳에 커스텀 Exception으로 만든 enum을 넘겨주려고 했다. 이 ExceptionResponse를 다른 곳에서 재사용하고 싶어 enum을 추상화하여 만들게 된 계기다. 코드 - https://github.com/delvering17/toy_board 로그인 요청을 받는데 정보가 없는 사용자이거나 비밀번호가 맞지 않을 때의 exception을 처리할 ExceptionHandler이다. @ExceptionHandler(LoginException.class) public ResponseEntity logi.. 2023. 1. 11.
[JSP] 소셜 로그인(카카오,네이버) - 4. 카카오 로그인 구현 이제 구현을 해보면 된다. 1. 버튼 이미지를 넣어둔다. 2. mainpage.jsp 수정 a 태그 안에 준비한 로그인 버튼 이미지를 넣고 클릭했을 시 function을 연결한다 kakaoLogin()이라는 function으로 로그인을 해보려한다. 로그인 네이버 로그인 3. script 작성 kakao에서 제공하는 sdk를 script 태그 맨 위에 올려둔다. Kakao.init()를 사용하여 파라미터에 아까 봐둔 API KEY의 Javascript key를 복붙한다. 로그인 네이버 로그인 4. 성공 로그인을 클릭하게 되면 예시에 나오는 정보제공 동의를 하게되고 완료하면 alert로 카카오 서버에서 받은 사용자의 정보가 표시된다. JSON 형식으로 받게 되는데 이 정보를 가지고 회원가입을 만들면 된다. .. 2023. 1. 8.
[JSP] 소셜 로그인(카카오,네이버) - 3. 카카오 developers 로그인 설정 카카오 로그인을 위해서는 kakao developers에 가입해서 내 애플리케이션을 생성해야 한다. 그리고 로그인한 사용자의 어떤 정보를 얻을 건지에 대한 설정과 가장 중요한 API KEY를 얻는 걸 해보겠다. 1. kakao developers 입장 https://developers.kakao.com/ 해당 링크에 들어가서 시원하게 회원가입과 로그인을 해준다. 그리고 상단에 있는 내 애플리케이션을 클릭한다. 2. 애플리케이션 추가 애플리케이션 추가하기 클릭 앱 아이콘과 앱 이름은 정보 동의를 받을 때 사용자에게 표시된다. 연습이므로 아무 사진과 앱 이름을 적어준다. 저장하고 애플리케이션에 들어가게되면 앱 이름과 사진, 가장 중요한 앱 키가 나온다. 이 앱 키는 유출되지 않게 조심해야한다. 가령 프로젝트.. 2023. 1. 8.
[JSP] 소셜 로그인(카카오,네이버) - 2. 프로젝트 MVC 설정 기본적인 MVC가 설정되어있다면 넘어가도 좋다! 기본 구조 Java(Controller, Model) main_p (member) MainController.java MainService.java MainPage.java login_p (login) LoginController.java LoginService.java LoginKakao.java LoginNaver.java Logout.java model_p MemberDAO.java MemberDTO.java Webapp (view) index.html view template.jsp main mainpage.jsp login login_alert.jsp member member.jsp 처음 생성되는 패키지와 index.html의 필요없는 부분을 깔끔.. 2023. 1. 8.
[JSP] 소셜 로그인(카카오,네이버) - 1. 프로젝트 파일 설정 이미 만들어 놓은 프로젝트가 있으면 건너 뛰어도 좋다! 기초 프로젝트 파일 생성 1. IntelliJ 프로젝트 파일 세팅한다. 1-1 프로젝트 설정 Generators → Java Enterprise IntelliJ가 만약 Community Edition이라면 Eclipse로 돌아가십시오. Name: login-practice location: 원하는 곳 Template: Web application Application server: Tomcat 9.0.64 Language: Java Build system: Maven JDK: 사용하는 JDK 설정 Version: Java EE 8 Java EE 9가 아닌 8로 선택하면 별 다른 설정 없이 servlet이 불러와진다. 2. 생성 후 Tomcat 설정 .. 2023. 1. 8.
[JSP] 소셜 로그인(카카오,네이버) - 0. 소개 개발 환경 OS - MAC M1 Java - jdk-17.0.3 IDE - IntelliJ Server- Tomcat 9.0.64 결론 Spring없이 MVC JSP 기반으로 카카오 로그인(Javascript), 네이버 로그인(Java)를 구현! 간단하게 공부하는 용도로 좋지만, 성능이나 유효성은 고려하지 않았기 때문에 실사용에는 불가능하다고 생각한다. IntelliJ가 Community 버전이면 Tomcat을 다루기 힘들다! Ultimate 버전이 없으면 Eclipse로 해도 무방! 사담 웹 프로젝트가 끝났다. 내가 맡은 역할 중 일부분은 로그인과 회원가입 등의 회원 관리를 맡았다. 처음에는 로컬 회원가입 + 카카오 로그인으로 했지만 문제는 핸드폰 인증 API(PASS의 신규 가입 중단..)가 없어서 .. 2023. 1. 8.