Programming/Debug

    [Debug]장바구니 Delete하는 과정에서 생긴 오류, SQLException처리, native Query문 작성 후 delete 성공[DELETE FROM ? WHERE ? AND ? 문 사용]

    문제점이 두 가지인데 1. 첫 번째로는 저렇게 bucket에 bucketId를 잡고 지워버리면 아래처럼 싹 다 지워버립니다. 이렇게 하면 위처럼 (여기서 id는 BucketProducts table의 프라이머리 키인데) 이 프라이머리 id 값이 아래에 둘 다 들어가집니다. delete from bucket_products where id =? delefe from product where id =? 이렇게 둘 다 들어가면 문제가 뭐냐면 상품도 같이 지워진다는 겁니다. 물론 외래 키를 product에 생성되지 않게 했지만, save 하는 과정에서 세션에 있는 user값이 외래 키가 되어서 들어가네요. 이 테이블이 user_id로 연결되어있는데, where id 조건을 만족시켜서 product를 지워버립니다..

    [Debug]JPA 영속성 오류, joinColumn값(@ManyToOne)에 cascade추가

    서브 쿼리를 구성을 해서 실행하던 도중 서브 쿼리 오류는 고쳤지만 아래와 같이 오류가 발생합니다. object references an unsaved transient instance - save the transient instance before flushing : com.cos.unishop.domain.bucket.BucketProducts.product -> com.cos.unishop.domain.product.Product 영속성 때문에 오류가 나타난다던데, join 하는 쪽에 cascade를 설정해주면 해결이 됩니다. cascade = cascadeType.All 문제없이 실행됩니다 Reference https://www.baeldung.com/jpa-cascade-types https:/..

    [Debug]이미지 DB에서 불러오기[고마운 resourceHandler][MvcConfig]

    분명 모델로 잘 담아 왔지만, 사진이 안 불러와 지네요..? F12를 켜서 확인해 보니.. 역시나.. 이번엔 400번으로 우리를 혼내줍니다.. Header를 보니! Request URL이 되게 독특하네요? 이렇게 한적이 없는데.. 알고 보니 제가 데이터를 장바구니 View단에 뿌려줄 때 image만! 안에 무작정 모델에서 꺼내서 src에 넣어버렸네요.! 이렇게 하면 안 됩니다.! (단호) (아니! 뭐가 잘못된 걸까?) 그것은 바로! 우리가 WebMvcConfig에서 ResourceHandler를 추가를 해줬다는 점! 여기서 이미지 자원을 관리하는데, url을 우리가 전에 여기에 지정해 줬다는 겁니다! 그렇지만.. 제가 src의 url로.. 제가 무자비하게 src에 그냥 넣어버렸습니다! 저렇게 하면 이렇게..

    [Debug]여러분들 path정확하게 잡아요[file upload][java.nio.file.NoSuchFileException]

    java.nio.file.NoSuchFileException 망할, 집에서 하니까 상품등록이 안돼서 보니 경로가 잘못 잡혀있었네요... (다른 곳에도 image 폴더가 없었을 텐데..? 원인이 뭘까요?, 집에서만 터져서..) 그래서 직접 아래와 같이 다 찍어 봅니다. 위에서 보면 63번째 줄에서 터진 것을 알 수 있습니다. (터졌는데, Exception 처리가 안되네요?, VM 영향일 수 도 있겠네요 => 최근에 리눅스 우분투 환경 설정을 했었음) (위 오류 검색해보니, chown 명령어를 사용해 사용자 권한을 바꾸라는데, 이것을 다시 구글링해보니, 리눅스 명령어였던 것!) 왜 터졌는지 확인해보니, 이놈이 imagePath가 안 맞네요.. 자세히 보니, 다르네요..! C:/images/ 로 바꿔주니! 편..