본문 바로가기

십이지내장탕

(9)
삽질 에러 해결 - cannot resolve symbol, Cannot access .... * cannot resolve symbol * Cannot access .... 위에 에러 때문에 많은 시간을 버렸다ㅎㅎㅎㅎㅎㅎㅎㅎ...... JPA 공부 중에 저런 에러가 나서 메모리 에러인지, 뭐인지 계속 찾아봤는데 이제 보니 그것과 관련있는 것은 아닌 것 같다. https://kim-hoya.tistory.com/45 : 에러 해결방법을 찾았다. 우선 저기서 rebuild project 방법은 효과가 없었다. 두번째 방법인 Sync project with Gradle -- 이 방법도 소용이 없었다. 세번째 방법은 Invalidate Caches였는데, 설정은 기본값 그대로하고 Invalidate and Restart를 눌렀다. 그제서야 제대로 객체가 인식이 됐다. 하..... 끝.
삽질 - 스프링부트, Mustache 줄바꿈 표현하기 스프링 부트로 게시판을 만들 때, 본문 내용에는 줄바꿈이 들어간다. 로그를 찍어보면 입력 받을 때는 줄바꿈을 잘 반영하여 데이터를 받는다. 그런데 데이터베이스에는 한줄로 저장된다. 결국 저장하는 과정에서 줄바꿈(\n)이 무시되는 것 같다. DB에 저장되어 있는 글의 enter 값을 태그로 변환 우선 원하는 값을 가져온다. String temp = request.getParameter("contents"); temp에는 textarea로 통해 입력된 모든 값이 들어가 있다. 이때 Enter 값은 \r\n으로 저장이 되어 있기 때문에 \r\n을 로만 바꾸어.. snoopy81.tistory.com 해결방법을 찾아보니 html에서는 엔터가 \r\n으로 입력되는 이것을 태그로 바꿔주면 된다고 한다. 그러면 br..
고민과 해결 - spring boot, mustache 폼 태그에서 어떻게 put, delete 전송을 할 수 있을까? html에서는 get, post 전송만 된다고 한다. 실제로 mustache 파일에서 메소드를 put으로 설정하여, @PutMapping이 붙은 컨트롤러 메소드에게 요청을 보냈는데 에러가 났다. 찾아보니, 내가 자바스크립트를 사용하지 않고도, 수정 가능해 보이는 방법이 있었다. REST PUT, DELETE 사용하기 REST PUT, DELETE를 사용하기 위해 GET, POST와는 달리 다소 노력이 필요하다. HTML form 태그의 method 속성으로 GET, POST만을 지원하기 때문에 PUT, DELETE로 설정하면 엉뚱하게도 GET 요청으로 전송된다. Ajax.. devday.tistory.com 먼저 위 방법을 사용하기 위해 application.properties에 항목을 추가한다. spr..
mustache 페이지 인덱스 - 숫자 반복문(리스트)로 만듦 mustache 템플릿에서 페이지 인덱스 버튼을 구상하는 중에 반복문을 사용해서 totalPages를 이용해 인덱스 버튼을 만들 수 있지 않을까 하고 생각해봤다. 찾다보니 원하는 방법은 없지만, 억지로 만드는 방법은 있었다. 숫자를 기준으로 하는 반복문은 못찾았지만, 리스트를 기반으로 하는 반복문은 찾았다. 따라서 1부터 totalPages까지 숫자가 담긴 리스트를 mustache에게 전달해서 하나씩 반복해서 전달하도록 하면 됐다. 근데 이건 너무 억지 같긴 하다. 억지 페이징 코드 전체 페이지 수가 0부터 담긴 리스트를 만들어 전달한다. 반복문을 사용하여 인덱스 버튼을 만든다. 억지 인덱스 버튼 완성!
공부 소스를 공유하는 사이트 - 스프링 부트 프로젝트 만들기(3) 어느정도 CRUD를 만들었는데 페이징 처리하는게 골아프다. 우선 배운 것처럼 Paging을 위해 TotalElement, TotalPage, CurrentElement, CurrentPage를 갖는 객체를 만들었다. 이 정보들을 가지고 프론트 단에서 처리할 것들을 생각나는대로 적는다면 * 페이지 버튼 만들기 - 하단의 1페이지, 2페이지, .. 이런거 * 페이지당 해당 페이지의 게시글 정보 가져오기 한동안 페이징 처리를 고민했는데 내가 적었던 글을 다시 보니 생각이 났다. 이럴려고 적어놓는 것인데 적은 것조차도 잊었다.ㄷㄷ 페이징 처리하기 게시판이 구현된 사이트는 특정 개수대로 게시글을 나눠 페이지 별로 보여준다. jpa를 이용하면 이런 페이징 처리를 비교적 간단히 할 수 있다. 몇개씩 노출시킬 지, 어..
(업데이트 중인)스프링부트 - 어드민 페이지 프로젝트(3) 메인 페이지에 노출시킬 정보를 가져오는 API를 만들어 적용시켰다. 원래는 그냥 의미없는 값들이 노출되었다. 업데이트된 메인 페이지에는 각각 데이터의 수를 가져와 보이도록 바꿨다. 뷰 코드가 생각보다 쉬워서 금방 프론트 코드에 적용했다.
(업데이트 중인)스프링부트 - 어드민 페이지 프로젝트(2) 고객 관리만 있는 페이지에서 주문, 상품, 파트너 관리 페이지 추가 얻은 교훈 : html 에서 객체의 필드를 사용할 때는, snake_case를 사용해야 한다.
삽질 - 오타를 조심하자. 정상적인 화면 현재 겪고 있는 문제... 분명 상태까지는 잘 갖고 오는데 왜 나머진 보이지가 않는가??... -> 단순 오타였던 것 같다. js 파일, html 파일을 삭제하고 다시 만드니까 잘된다. -> 아침 수정. 오타가 아니라 변수 이름이 달랐다. html 파일에는 snake case로 작성해야 했다. 그런데 camel case로 작성해서 오타가 났다. 교훈 : 오타를 조심하자. 간단한 파일이라면 다시 만들어보자. 만약 그렇게 해서 정상으로 돌아온거라면 오타문제니까.