Jpa 에서 Eunm 타입 넣기 DB에서는 Enum 타입이라는 형태가 없으니 //DB는 RoleType이라는 내가 만든 자바 오브젝트가 없으니 알아먹게 어노테이션을 붙여줘야함 @Enumerated(EnumType.STRING) private RoleType role; 이렇게 간단하게 해결가능! 공부중 막혔던것 4년 전
Ajax Success가 되지 않을 때 Ajax 를 이용한 통신을 하던 중 막혔던 것이 있었다. Ajax를 통해 값을 받고 save를 하는 과정이였는데, DB에는 값이 잘 들어가지만 Success함수가 실행이 되지 않았다 (그렇다고 fail 함수가 실행이 된 것도 아니였다) 그 원인을 파악하기 위해 여러가지 구글링을 해보았는데, 살펴보자. 1. ajax 통신을 하기위해선 Controller에 @ResponseBody 혹은 RestController로 되어 있어야 한다. -> 이 부분은 맞게 코딩을 했었지만 되지는 않았다 결국 이리저리 찾다가 원인을 발견했는데, 버튼을 누르면 ajax 호출이 되게 했지만 button type이 submit으로 되어있어서 success 가 되지 않았던 것이다 submit을 지워주니 해결완료 공부중 막혔던것 4년 전
댓글 삭제 구현중 위의 삭제하기 버튼 중 제일 상단에 있는 삭제하기 버튼만 삭제하기 기능이 수행 되고 밑의 삭제하기 버튼은 눌러도 아무런 일도 일어나지 않았다. 이렇게 될 경우 input type="hidden" 값이 계속 바뀌어 reply_id 값이 첫번째 element의 value만 쓰게 되어 삭제하기가 안됐다. 버튼에 class로 reply_delete 를 달아주고 그 버튼의 value 값에 reply의 id값을 담아 주었다. 그 후 this.value를 통해 해결 했는데 여기서 this는 reply_delete라는 버튼이 클릭했을때 일어나는 이벤트 이므로 this는 button을 가르킨다. 즉 그래서 this.value를 하면 해당 버튼의 값을 끌어 올 수 있었다. 공부중 막혔던것 5년 전
소스코드가 업로드 되지 않을 때 reply-save 라는 버튼을 누르면 실행되는 로직을 구현 하던중 서버를 키고 눌러도 아무런 반응이 없어서 크롬개발자 도구(F12)에 들어 가봤다. 내 소스코드엔 reply-save 라는 것이 있지만 로드 된 js파일엔 해당 코드가 업로드 되지 않았다. 이때 캐시를 제거하는 서버를 킨 브라우저에서 (크롬) 컨트롤 + 쉬프트 + R 로 강력한 새로고침을 하니 해결 됐다. 공부중 막혔던것 5년 전
"readyState:":4, "responseText":"",status200 에러 개인프로젝트 진행중 ajax 통신이 먹히지 않을 때 가 있었다. 에러 메세지는 이러했다. 이는 위의 컨트롤러의 자료형은 void 이다 이때 ajax쪽 dataType: 'json' 으로 했는데 text로 바꿔주어야 한다. 위는 dataType이 json 이여도 잘 작동한다. 자바에서 객체를 반환하면 json 문자열로 변경되고, ajax에서는 json 문자열을 javascript 객체로 다시 파싱한다. 공부중 막혔던것 5년 전
h2-console connection이 되지 않을 때 h2 console에 데이터가 잘 들어가는지 확인 할 일이 있었다. 근데 Database "men:testdb" not found, either ~~~ 나오면서 연결이 안되는데 application.properites (yml도 됨) spring.datasource.hikari.jdbc-url=jdbc:h2:mem:testdb spring.datasource.hikari.driver-class-name=org.h2.Driver 이 2줄을 넣어주면 작동한다. 공부중 막혔던것 5년 전
ajax 글 등록 버튼이 작동하지 않을 때 말 그대로 개인 프로젝트 진행중 부트스트랩에서 몇개의 컴포넌트들을 끌어 쓸 일이 있었다. 분명히 작동해야 하는데 버튼을 눌러도 done 으로 넘어가지 않았다 그래서 크롬 개발자도구 (F12)를 눌러서 콘솔창을 킨 다음에 다시 버튼을 눌러 보니까 main.js:17 Uncaught TypeError : $.ajax is not a function 이런것이 뜨는것 이였다. 제이쿼리 자체가 로드가 안됐다는걸 알 수 있었는데 분명히 설정은 완벽했다고 생각했다. 위 사진은 부트스트랩에 있는 cdn 이다 이 cdn 을 끌고 왔는데 https://code.jquery.com/jquery-3.5.1. slim.min 부트스트랩에선 jquery의 slim버전을 가져온다고 하는데 slim버전에선 ajax가 지원을 하지 않.. 공부중 막혔던것 5년 전
스프링부트 CRUD 관련 스프링 부트와 AWS로 혼자 구현하는 웹서비스 를 책 보고 하던 중 막혔던 것. CRUD의 흐름을 알기 위해 공부를 하던중 이해가 안됐던 것이 있다.. 그림1 1. Entity 클래스를 db로 접근하게 해주는 PostsRepository 단순히 JpaRepository를 상속하는 것을 통해 CRUD 관련 메소드를 쓸 수 있다. 그림2 막혔던 점: 인터페이스는 메소드를 정의만 하고 인터페이스를 구현하는 클래스를 따로 만들어야 하지 않나? 그런데 어떻게 save, deleteAll 등 다른 메소드를 바로 쓸 수 있을까?? 내가 기존에 알던 인터페이스는 이런식으로 인터페이스 단에서는 메소드 명만 정해두고 그 후 메소드의 내용은 인터페이스를 구현하는 클래스에서 정의해 주는 것인데 나는 PostsRepositor.. 공부중 막혔던것 5년 전