1️⃣ 문자열 나누기 문제 설명 문자열 s가 입력되었을 때 다음 규칙을 따라서 이 문자열을 여러 문자열로 분해하려고 합니다. 먼저 첫 글자를 읽습니다. 이 글자를 x라고 합시다. 이제 이 문자열을 왼쪽에서 오른쪽으로 읽어나가면서, x와 x가 아닌 다른 글자들이 나온 횟수를 각각 셉니다. 처음으로 두 횟수가 같아지는 순간 멈추고, 지금까지 읽은 문자열을 분리합니다. s에서 분리한 문자열을 빼고 남은 부분에 대해서 이 과정을 반복합니다. 남은 부분이 없다면 종료합니다. 만약 두 횟수가 다른 상태에서 더 이상 읽을 글자가 없다면, 역시 지금까지 읽은 문자열을 분리하고, 종료합니다. 문자열 s가 매개변수로 주어질 때, 위 과정과 같이 문자열들로 분해하고, 분해한 문자열의 개수를 return 하는 함수 solut..
WebSecurityConfig.java PasswordEncoder를 빈으로 등록합니다. @Bean public PasswordEncoder passwordEncoder(){ return new BCryptPasswordEncoder(); } PasswordEncoder는 주로 사용자의 비밀번호를 해싱(hashing)하여 저장하고, 로그인 시에 비밀번호를 검증하는 데 사용됩니다. 여기서 BCryptPasswordEncoder는 PasswordEncoder의 구현체 중 하나로, BCrypt 해싱 알고리즘을 사용하여 비밀번호를 안전하게 해싱합니다. UserService.java package com.example.demo.service; import com.example.demo.dto.ResDTO; im..
툴 변경 이유? 지난 글에서 계속 java.lang.ClassNotFoundException: Cannot find implementation for com.example.demo.mapper.UserMapper 오류가 난다고 했었는데요. 구글링 하며 온갖 방법을 다 써봐도 (의존성 설정 순서도 중요하다고 해서 다 해봤는데도....ㅠㅠ) 해결이 되지 않았습니다. 이클립스의 문제라고 하는 글들도 있어서 결국 선택한 해결 방법이 Tool을 바꾸는 것이었습니다. ( 해결이라고 해도 되나 싶네요. ) 그렇게 다들 인텔리제이 인텔리제이 할 때 학생용 이메일을 잊어버렸고, 유료로 쓰자니 취준생에겐 꽤 부담이 되어서 그간 흐린 눈 했었는데요. 이번에 방통대 편입을 하면서 새로운 학생용 메일이 생겼습니다! 👍 http..
Entity와 DTO Entity 엔티티는 데이터베이스 테이블에 매핑되는 객체입니다. 주로 데이터베이스의 상태를 나타내고 비즈니스 로직을 포함할 수 있습니다. 보통 JPA(Java Persistence API)와 함께 사용되어 데이터베이스와 상호 작용합니다. 데이터베이스의 구조를 반영하고, 데이터베이스 연산(CRUD)을 수행하는 데 사용됩니다. DTO DTO는 데이터를 전송하기 위한 객체입니다. 주로 클라이언트와 서버 간의 통신에서 사용됩니다. 클라이언트로부터 받은 요청이나 서버에서 보내는 응답에 사용됩니다. 엔티티와는 달리 비즈니스 로직을 포함하지 않으며, 주로 데이터 전송을 위한 필드를 갖습니다. MapStruct 자바 언어용 객체-객체 매핑 라이브러리입니다. 자동으로 매핑 코드를 생성하여 반복적이고..
공부를 안한 게 아니고요... 날마다 일어나는 새로운 오류에 정신을 못차리고 있습니다. 이제 회원관리 구현하는데 이게 무슨...ㅠㅠ 아무튼 며칠 시달리다가 겨우 해결한 오류를 기록해보겠습니다. 일단 회원가입 기능을 구현하는데 react에서 axios를 사용해 POST 메서드로 요청을 보내면 계속 PropertyValueException 오류가 났습니다. 에러 메세지 org.hibernate.PropertyValueException: not-null property references a null or transient value : com.example.demo.entity.UserEntity.email 디버깅을 해보면 값이 안들어오고 죄다 null인 모습을 볼 수 있습니다.. 그 와중에 password..