분류 전체보기 949

[JPA] JPA Entity Id를 String 으로 설정하기

JPA Entity Id를 String 으로 설정하기 사실 entity id 를 String 타입으로 설정할 수 있는가? 에 대해 너무 당연하게 생각할 수도 있으나 조회시에 repository 설정때문에 못찾는 경우를 봤기에 이렇게 작성하게 되었음 Entity에 Id를 String 타입으로 설정하기 String 타입 외에 어떤 타입이든 설정 가능(물론 복합키도 가능함) 그러나 findById를 통해 조회 시에 Long 타입으로 찾아야 한다고 뜬다면? Repository 설정을 찾아보자 아마 JpaRepository 를 상속받는 부분을 보면 이유를 찾을 수 있을 것임 위의 코드에서 보면 MemberRepository는 JpaRepository 인터페이스를 상속받음 이때, Member는 엔티티 클래스이고, ..

프로그래밍/JPA 2023.04.10

[JavaScript] 간단한 숫자 3자리 마다 , 표기 방법 toLocaleString()

숫자 3자리 마다 , 구분하여 표기하는 방법 toLocaleString() 함수 사용하기 toLocaleString() 함수란? 숫자, 날짜 및 시간 값에 대한 locale별 문자열 표현을 생성 현재 실행되는 컴퓨터의 locale에 따라 문자열을 반환 const num = 1234567.89; console.log(num.toLocaleString()); // "1,234,567.89" (기본 로케일에 따라 출력) 만약, 특정 locale을 사용하려면 toLocaleString() 함수에 로케일 매개 변수를 추가하면 됨 예시 → 한국 const num = 1234567.89; console.log(num.toLocaleString("ko-KR")); // "1,234,567.89" (한국 로케일에 따라 ..

[Java Error] Failed to convert from type [java.lang.String] to type [java.util.Date]

Failed to convert from type [java.lang.String] to type [java.util.Date] 에러 react 👉 spring boot controller 로 데이터를 전송할때 타입 불일치로 발생하는 에러 발생 원인 react에서 파라미터로 '2023-04-06' 이라는 String 타입의 데이터를 보내는데 request 파라미터가 객체를 받을 때 타입을 Date로 설정해놓은 경우 자동적으로 변환이 되지 않아 발생하는 에러 해결 방법 datetimeformat을 설정해주기 예를 들어 startDate를 Date 타입으로 받고 싶다면 아래와 같이 @datetimeformat 을 설정해줄 것 @datetimeformat(pattern = "yyyy-MM-dd") privat..

[Git Error] pull request 한 이후 충돌 해결 방법

pull request 한 이후 변경 사항 반영 후 충돌 발생하는 경우 이전에 commit 을 push 했을 때 충돌이 발생하는 경우에 대해 알아보았음(pull request 전) 이번에는 pull request 한 이후 충돌 해결 방법에 대해 적어볼 것임 발생원인 pr하고 코드 리뷰 후 수정하는 동안 다른 브랜치가 merge 되면서 충돌이 발생함 해결 방법 1. 해당 branch에서 remote branch(merge 작업할 branch) pull 받기 git pull origin dev 2. 충돌난 파일 찾아가서 충돌 해결 3. 충돌해결한 파일 add git add 파일경로 4. commit git commit -m "충돌 해결" 5. push 하기 git push origin 브랜치명 # 예시 gi..

형상관리/Git 2023.04.05

[Git Error] Can’t automatically merge. Don’t worry, you can still create the pull request. 해결 방법

발생 원인 작업하는 동안 다른 변경사항이 생겼는데 pull 받지 않고 push 한 경우 발생 나의 경우 dev에서 브랜치 따서 하던 작업을 push 하니 다른 팀원이 변경한 파일과 충돌이 났음 해결 방법 해당 브랜치에서 충돌 해결 후 push 1. remote branch merge 하기 git merge remote_branch # 예시 git merge dev 2. 충돌 해결 충돌난 파일 찾아서 충돌 해결하기 3. 변경한 파일 add git add 변경한 파일 # 예시 git add src/main/java/com/…/Sample.java 4. commit message 작성 git commit -m “충돌 해결” 5. push 하기 git push origin branch_name # 예시 git ..

형상관리/Git 2023.04.04

[React] 조건부 렌더링 1

리액트 조건부 렌더링 간단한 예시와 설명 예시 import React from 'react'; function App() { const isLoggedIn = true; return ( {isLoggedIn ? ( Welcome back, user! ) : ( Please log in to continue. )} ); } 이 코드에서는 isLoggedIn 변수를 사용하여 현재 사용자가 로그인되어 있는지 여부를 나타내고 있음 이 변수를 기반으로, 조건부 렌더링을 사용하여 다른 UI를 렌더링함 isLoggedIn이 true인 경우 Welcome back, user!를, false인 경우 Please log in to continue.를 렌더링함 조건부 렌더링은 애플리케이션의 상태를 기반으로 UI를 동적으로 ..

[Spring Boot Error] Invalid CSRF Token 'null' was found on the request parameter '_csrf' or header 'X-CSRF-TOKEN' 원인과 해결 방법

Invalid CSRF Token 'null' was found on the request parameter '_csrf' or header 'X-CSRF-TOKEN' 에러 스프링 시큐리티에서 CSRF(Cross-site Request Forgery) 보안 기능을 사용할 때 발생하는 에러 보안 기능이 동작하지 않아 발생하거나 설정이 잘못되어 발생할 수 있음 에러 발생 원인 이 에러는 주로 CSRF 토큰 값이 전달되지 않았거나, 전달된 토큰 값이 유효하지 않을 때 발생함 스프링 시큐리티에서는 CSRF 보안 기능을 사용할 때, 사용자의 세션에 저장된 CSRF 토큰 값과 요청으로 전달된 CSRF 토큰 값을 비교하여 일치하지 않으면 이 에러를 발생시킴 해결 방법 CSRF 보안 기능 해제 가장 간단한 해결책은 C..

[Java] java.time.format.DateTimeParseException: Text 'yyyyMMdd' could not be parsed: Unable to obtain LocalDateTime from TemporalAccessor: {},ISO resolved to yyyy-MM-dd of type java.time.format.Parsed

java.time.format.DateTimeParseException 해결 방법 Unable to obtain LocalDateTime from TemporalAccessor 에 주목해보면 에러를 쉽게 해결할 수 있음 LocalDateTime.parse("2023-03-29", DateTimeFormatter.ofPattern("yyyy-MM-dd")); LocalDateTime을 LocalDate 타입으로 바꿔주자 LocalDate.parse("2023-03-29", DateTimeFormatter.ofPattern("yyyy-MM-dd"));

[JPA] 복합키 설정 방법(@EmbeddedId, @IdClass)

복합키 설정 방법은 크게 두가지가 있음 1. @EmbeddedId 어노테이션 사용 2. @IdClass 어노테이션 사용 @EmbeddedId 어노테이션 사용 복합키를 가진 엔티티 클래스에서는 복합키를 위한 별도의 클래스를 만들어야 함 이 클래스에 복합키를 구성하는 필드들을 선언하고, @Embeddable 어노테이션을 붙여줌 그리고 이 클래스를 엔티티 클래스에서 @EmbeddedId 어노테이션을 사용하여 참조 예시 public class OrderProduct { @EmbeddedId private OrderProductId id; @Embeddable public class OrderProductId implements Serializable { @Column(name = "order_id") priva..

프로그래밍/JPA 2023.03.28

[sql] drop, delete, truncate 차이

drop, delete, truncate 데이터를 삭제하는 구문 DROP 테이블, 뷰, 인덱스 등과 같은 데이터베이스 객체를 삭제시 사용 DROP을 사용하면 해당 객체와 모든 데이터가 삭제됨 예시 DROP TABLE user; DELETE 테이블에서 데이터 행을 삭제시 사용 DELETE을 사용하면 테이블의 특정 행을 삭제하거나 조건에 맞는 모든 행을 삭제할 수 있음 해당 행들이 차지하던 데이터 공간은 해제되어 재사용 → DB 용량은 그대로이기에 디스크 공간의 낭비가 발생할 수 있음 예시 DELETE FROM user WHERE age = 30; TRUNCATE 테이블에서 모든 행 삭제시 사용 테이블 스키마는 그대로 유지되고 테이블 내의 모든 데이터가 삭제 테이블에서 모든 행을 삭제하고 해당 행들이 차지하..

프로그래밍/SQL 2023.03.27