전체 글97 .NullPointerException: Cannot invoke "mini.project.HotelReservation.User.Data.Entity.User.getName()" because "user" is null 호텔 예약 미니 프로젝트 리팩토링하는데 다음과 같은 에러 발생 회원가입 후 회원 정보를 수정하고 완료하는 과정에서 에러가 발생했는데.. 아니 이게 어떻게 null이 될 수 있어!! 이것 저것 검색해보니 어노테이션 에러일 것 같았다. 해결 방법 UserInfoDto에 @NoArgsConstructor 어노테이션 달아주기 오류 원인 NullPointException은 어떤 객체나 변수를 참조하려고 할 때 해당 객체나 변수가 null인 상태에서 호출할 때 발생하는 exception이다. 내가 1. user객체를 초기화하지 않고 사용한 경우 2. 메소드나 속성을 호출하기 전에 객체를 할당하지 않은 경우 3. 매소드 호출시에 넘겨준 무언가 중에 null이 포함된 경우 크게 이 세가지 실수를 범했기 때문이다. @N.. 2023. 10. 6. db연동하기 workbech 켜서 빨간세모 버튼 클릭하쇼 스키마 만들고 apply! 인텔리제이 오른쪽 창에 데이터베이스 들어가면 + 버튼 눌러서 데이터소스에 mysql 들어가면 위와같은 창이 나온다. 포트와 사용자 창, 그리고 비밀번호 설정을 해준 다음에 연결테스트 한번 해주고! 확인 눌러준다. + 테스트 코드는 h2를 사용하기 때문에 h2 연동 방법 또한 적어보자면 일단 cmd창에서 h2를 실행하면 아래와 같은 창이 서버에 뜬다. 그럼 jdbc url을 복사해서 다시 인텔리제이로 돌아와 데이터 소스에 h2를 추가해준다. 이때 복사한 url을 해당 칸에 붙여넣어주고 사용자와 포트번호 등 사용자 설정에 맞춰 해주면 된다. 2023. 9. 13. H2 db 서버에 올리기 program files에서 h2->bin파일까지 경로를 찾는다. (H가 대소문자 차이가 있을 수 있다. 다운 받은 방식에 따라 달라지는 것이므로 상관할 필요는 없다.) 경로에다가 아래와 같이 cmd를 치고 엔터 눌러준다. 명령창에 dir 쳐주면 디렉터리가 뜬다. 명령창에 h2.bat 쳐주기 url 바꾸지말기 파란색 jdbc 경로만 내 설정대로 해주기 다른 사람들과 프로젝트 중이라면 사용자명 맞춰주기 비밀번호는 null값이어도 되고 팀원들이랑 맞추기 properties를 git ignore할거면 상관없긴 하다 연결 누르면 서버에 올려짐! 팀플하다 설정이 끝났는데 다른 팀원이 포트 넘버가 겹쳐서 바꿔야 할 상황이 왔었다. 보통 사용자 파일에 있는 ".hw.server" 파일을 찾고 ( h2.server.p.. 2023. 9. 6. error creating bean with name 'apidocumentationscanner' defined in url '스프링 부트 핵심 가이드' 책을 읽으며 따라가던 도중 호환성 문제로 계속해서 이러한 에러가 생겼다. 결국 호환성을 높여주기로 결정 1.swaggerConfiguration 파일 삭제 2.. pom.xml 파일에서 springfox 의존성 삭제 그리고 상위버전인 springdoc 추가 3.application.properites 파일에 아래와 같이 코드 기입 결과 http://localhost:8080/swagger-ui/index.html 로 들어가면 아래와같이 스웨거가 잘 연결된 것을 확인할 수 있다. springfox에 비해 springdoc은 지속해서 업데이트도 하고 꾸준히 활발한 활동을 보인다고 한다. 그래서 fox에서 doc으로 넘어오는 경향이 많은데 springdoc-openapi를 한번 살.. 2023. 8. 28. 큐 날라가서 다시 쓰는 글.... 큐에 대한 이해를 돕기 위해 프로그래머스 문제를 가지고 왔다. 문제 풀이 순서 1. 남은 작업 일수를 구하기(큐로 저장) 2. 배포 순서 계산하기 3. return값에 넣기 import java.util.*; class Solution { public int[] solution(int[] progresses, int[] speeds) { List answer = new ArrayList(); Queue queue = new LinkedList(); //작업 일수 구하기 for(int i =0; in).toArray(); } } 메소드 1. 삽입 add() : 삽입에 성공하면 true 반환. offer() : 삽입만 함 2.삭제 poll() : 큐의 첫 번째 원소 반환 후 큐.. 2023. 8. 13. 플레이데이터 데이터 백엔드 3기 8월 2주차 회고 일주일 동안 한 일 저번주에 계획했던 공부글도 올렸고 영상 편집도 했다. 프로그래머스 해시파트는 마지막 단계 문제 빼고는 모두 스터디 완료했다. 그리고 주말에 매번 나태해져서 실패했던 1일 1커밋도 성공했다! 학원에서는 restAPI와 postman을 이용해 response받는 프로젝트를 진행했다. 그리고 스프링부트의 흐름을 이해하기 위한 프로젝트를 진행했다. DB 툴로 H2를 처음 사용해보았다. 좋았던 점 스프링 부트를 사용하기만 했지 정확한 흐름과 롬복에 대한 이해가 낮았는데 이론을 바탕으로 예제를 통해 직접 배울 수 있어 좋았다. 또한 인텔리제이로 프로젝트를 진행하기 위해 설정에 대하여 친구들과 여러 시도를 해본 것이 재미있었다. 파일 경로 설정의 중요성과 버전의 호환성 문제에 대하여 생각해볼 수 .. 2023. 8. 13. 이전 1 ··· 6 7 8 9 10 11 12 ··· 17 다음