본문 바로가기

Programming Language17

람다 표현식에서 상수를 사용하는 이유 모던 자바 인 액션을 읽다가, 람다 표현식에서 지역 변수를 사용하는 경우 지역 변수는 final로 선언되거나 final로 취급되어야 한다고 읽었다. 결국 람다 표현식에서 사용하는 지역변수는 재할당할 수 없다는 것이다. 근데 람다에서는 final을 사용하는지 궁금해서 GodPT에게 아뢰었다. 나중에 생각날까봐 남겨둔다. delvering 람다가 스레드에서 실행되면 변수를 할당한 스레드가 사라져서 변수 할당이 해제되었는데 람다를 실행하는 스레드에서 해당 변수에 접근하려 할 수도 있다. 라는 문장을 읽었는데 int portNumber = 1333; Runnable r = () -> System.out.println("portNumber = " + portNumber); 여기서 portNumber = 8080;.. 2023. 10. 29.
[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.