본문 바로가기

프로젝트/Spring Boot 블로그프로젝트41

[블로그프로젝트] 16 스프링시큐리티로 로그인하기(3) 유튜브에서 블로그 만들기 프로젝트를 따라하면서 나의 스킬을 조금더 레벨업 하고자 한다. IDE : IntelliJ 언어 : Java DB : MySQL 빌드관리 도구 : Maven OS : iOS 참고유튜브 : 메타코딩 스프링시큐리티를 사용하기 위해서 pom.xml에 해당 라이브러리들을 추가한다. org.springframework.security spring-security-taglibs org.springframework.boot spring-boot-starter-security org.springframework.boot spring-boot-starter-web 그리고 UserApiController.java으로 이동해서 기존 로그인 방식을 삭제나 주석으로 막자 그 후 메인페이지로 이동하려고 하.. 2023. 6. 5.
[블로그프로젝트] error. jstl 500 error 해결 유튜브에서 블로그 만들기 프로젝트를 따라하면서 나의 스킬을 조금더 레벨업 하고자 한다. IDE : IntelliJ 언어 : Java DB : MySQL 빌드관리 도구 : Maven OS : iOS 참고유튜브 : 메타코딩 이런저런 할일로 조금 미루어졌지만, 계속 프로젝트를 진행중에 있었는데, 오늘은 오류사항중 하나를 해결해서 글을 작성하고자 한다. https://dean0608.tistory.com/119 예전에 작성한 jsp파일에서 jstl을 사용하기 위해 pom.xml 에 라이브러리도 추가하고 jsp파일에 라이브러리 태그도 추가해서 사용하고자 할 때 계속 500 error 가 발생해서 일단 다음에 해결하려고 넘어가고자 했었는데 드디어 해결하게 되었다. 그래서 그 과정에 대해서 글을 남기고자 한다. 우선.. 2023. 5. 29.
[블로그프로젝트] 15. 스프링시큐리티로 로그인하기(2) 유튜브에서 블로그 만들기 프로젝트를 따라하면서 나의 스킬을 조금더 레벨업 하고자 한다. IDE : IntelliJ 언어 : Java DB : MySQL 빌드관리 도구 : Maven OS : iOS 참고유튜브 : 메타코딩 로그인을 할 때 로그인한 아이디를 확인해보기위해 콘솔에 찍어보면 넘어오는 값이 없어서 null 이 찍혔다. {"status":500,"data":"Cannot invoke \"com.blog.config.auth.PrincipalDetail.getUsername()\" because \"principal\" is null"} 어떠한 문제때문에 로그인할 때 값이 전달되지 않는지 확인해보니 PrincipalDetailService에 있는 loadUserByUsername 이라는 이름의 메서드.. 2023. 5. 19.
[블로그프로젝트] 14. 스프링시큐리티로 로그인하기 유튜브에서 블로그 만들기 프로젝트를 따라하면서 나의 스킬을 조금더 레벨업 하고자 한다. IDE : IntelliJ 언어 : Java DB : MySQL 빌드관리 도구 : Maven OS : iOS 참고유튜브 : 메타코딩 인증이 필요 없는 사용자들도 볼 수 있는 페이지들은 앞에 /auth를 붙이고 그 외의 페이지들은 로그인해서 해당되는 사용자들만 볼 수 있게 처리해보자. 우선 UserController에 주소들을 변경한다. package com.blog.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframe.. 2023. 4. 4.
[블로그프로젝트] error. 오류사항 현재 프로젝트 진행중에 오류가 있어서 기록용으로 정리한 후 해당 오류를 수정해 나갈 예정이다. 1. header.jsp 에서 taglib을 사용하면 TagLibraryValidator가 발생하면서 진행이 불가능, 현재 주석으로 일단 막아 놓고 진행중 2. SecurityConfig.java 에서 too many redirects에러가 뜸 .anyRequest() 부분을 주석으로 막으면 뜨지 않음, 그래서 현재 주석으로 막고 진행중 permitAll()로 인증되지 않은 사용자도 접근가능하게 했음에도 해당 오류가 뜸 controller 부분이랑 service 부분 확인하는 중 @Bean public SecurityFilterChain filterChain(HttpSecurity http) throws Exc.. 2023. 3. 29.
[블로그프로젝트] 13-1. TagLibraryValidator(어?) 유튜브에서 블로그 만들기 프로젝트를 따라하면서 나의 스킬을 조금더 레벨업 하고자 한다. IDE : IntelliJ 언어 : Java DB : MySQL 빌드관리 도구 : Maven OS : iOS 참고유튜브 : 메타코딩 클론코딩으로 security configuration 진행중에 사용환경도 달라 변한점도 있어서 계속해서 찾아가며 진행하던 중에 too many redirects 에 막혀서 계속 검색하며 오류수정방법을 물색했다. 그러다가 다시 처음부터 가보자는 마음으로 configuration을 주석으로 막고 다시 진행 해보았다. alert 를 줘보는 테스트를 진행 중인데 어...? 왜 되지?? 추가한건 아래 라이브러리들만 다시 추가한거 밖에 없는데 진행이 되고 있어서 계속 진행중이다. 현재 수정중인 오류.. 2023. 3. 16.
[블로그프로젝트] 13. TagLibraryValidator(해결못함..) 유튜브에서 블로그 만들기 프로젝트를 따라하면서 나의 스킬을 조금더 레벨업 하고자 한다. IDE : IntelliJ 언어 : Java DB : MySQL 빌드관리 도구 : Maven OS : iOS 참고유튜브 : 메타코딩 지난번에 시큐리티 사용을 위해서 주소들도 다 바꾸고 계속 진행하면서 문제가 생겨 계속 찾아보면서 문제 해결을 하려고 하면서 한 내용들을 정리하고자 한다. 이친구가 그 범인이다. header에 taglib들만 사용하려고하면 저렇게 에러가 뜬다. 에러가 뜨면? 검색해서 이미 이길을 지나가신 분들의 해결법을 찾아보고 이것저것 다해보는게 개발의 숙명이다라는 생각으로 이것저것 다 보았다. 1. 우선 dependency를 추가안해줘서 그랬다는 글을 보고 이미 작성한걸 확인 했다. 다른 라이브러리들도.. 2023. 3. 11.
[블로그프로젝트] 12. 시큐리티 로그인 사용전 요청주소 변경하기 유튜브에서 블로그 만들기 프로젝트를 따라하면서 나의 스킬을 조금더 레벨업 하고자 한다. IDE : IntelliJ 언어 : Java DB : MySQL 빌드관리 도구 : Maven OS : iOS 참고유튜브 : 메타코딩 스프링 시큐리티 로그인 사용전에 url 주소들을 전부 변경하고자한다. 변경하고 url주소가 안맞는게 있어서 시간이 꽤 걸렸다... ㅜㅜ 우선 UserController ↓ 다음은 header.jsp ↓ application.yml ↓ loginForm.jsp 과 signForm.jsp ↓ /resources/static/js 하위 폴더에 있는 user.js ↓ 2023. 3. 9.
[블로그프로젝트] 11. 로그인 구현하기(& JSTL 오류잡기 실패) 유튜브에서 블로그 만들기 프로젝트를 따라하면서 나의 스킬을 조금더 레벨업 하고자 한다. IDE : IntelliJ 언어 : Java DB : MySQL 빌드관리 도구 : Maven OS : iOS 참고유튜브 : 메타코딩 회원가입을 완료했으니 로그인 기능을 구현하고자 한다. 우선 loginForm.jsp 에서 button을 아래로 내려주고 type에서 id로 변경 해주자 ↓ ID Password Remember me 로그인 user.js 에서 버튼을 어떻게 작동할지 작성하자. 회원가입과 마찬가지로 버튼이 클릭되었을때 작동이 되게 하고 버튼 id를 입력해준다. 그리고 기능은 login을 사용할 것이다. $("#btn-login").on("click",()=> { this.login(); }); 같은 user.. 2023. 2. 25.
[블로그프로젝트] 10. Exception 수정하기 & 아이디 중복 insert 수정 유튜브에서 블로그 만들기 프로젝트를 따라하면서 나의 스킬을 조금더 레벨업 하고자 한다. IDE : IntelliJ 언어 : Java DB : MySQL 빌드관리 도구 : Maven OS : iOS 참고유튜브 : 메타코딩 Exception 처리하는 부분을 수정하였다. 올바른 유저정보를 받아서 해당 부분이 실행했다면 1이 return 잘못된 정보라면 -1이 return이 되어서 컨트롤러에 호출이 되는게 아니라 저번에 만든 GlobalExceptionHandler가 호출이 되어서 service단에서 굳이 return을 해줄 필요가 없다. 그래서 userService에서 해당부분을 아래와 같이 변경하였다. package com.blog.service; import com.blog.repository.UserRe.. 2023. 2. 23.