게시판 10

Springboot 게시판만들기!(13) 댓글 수정 with disabled

수정 기능을 넣을 건데 html 현재 disabled 되어있는 버튼을 '수정'을 눌르면 '확인'/'내용'에 있는 disable이 사라지게 해 주려고 한다 여기서 주의할 점 사용자가 '수정'을 누르고 "어 이 댓글이 아니네"하고 바로 다른 댓글에 '수정'을 누른다면 이전 '확인/'내용'disable이 다시 올라와야 한다! js 굳이 같은 코드를 true/false로 나눈 이유는 beforeClickUpdateID=cid;때문이다 이전 클릭했던 '수정'의 id를 알아야 하기 때문에 나눠 났다! 아주 잘 작동해준다 이제 service로 가서 orElseThrow(()->new Exception("존재하지 않은 댓글입니다")) 람다식을 이용했다 밑에 deleteCommentByCid와 비교해보면 뭔가 멋있다 ㅋ..

Springboot 게시판만들기!(10) 사진불러오기 with thymeleaf

사진을 불러오려면 사진의 경로가 필요하다 그래서 dao로가서 bid=글 번호에 맞는 경로를 db에서 가져온다 controller로가서 model.addAttribute("imagearray", boardimagedao.findByBidOrderById(bid)); 보내준다 이제 핵심은 프런트인데 일단 가장 기본적이게 그냥 모든 텍스트 밑에다 넣겠다 어쩔 수없다 t스토리나 다른 게시판처럼 하려면 이미 넣을 때부터 틀렸다 그러므로 내가 현재 할 수 있는 선에서 내가 가진 정보로 spring이 잘 사진을 던져주는지 확인하기 위해 해 보는 거다! 자 textarea안에는 ima 뭐가 표시가 불가능하다 그래서

Springboot 게시판만들기!(9)글쓰기 사진 올리기 추가 with XMLhttpRequset and MultipartFile

이전까지만 해도 text만 올릴 수 있는 게시판이었다 이유는 받을 줄은 아는데 ajax로 도대체 어떻게 보내야 하는지... 이게 혼란스러웠다 그래서 좀 찾아본 결과 https://m.blog.naver.com/PostView.nhn?blogId=mk1126sj&logNo=221016837263&proxyReferer=https:%2F%2Fwww.google.co.kr%2F [jQuery/제이쿼리] ajax와 FormData를 이용한 비동기 파일 업로드 비동기 업로드를 하기 위해 ajax와 FormData를 이용한 방법이다. FormData는 IE10버전 부터 지원하며... blog.naver.com https://unikys.tistory.com/233 [Javascript] AJAX (XMLHttpRe..

Springboot 게시판만들기!(8) 댓글 불러오기

이제 댓글을 출력시켜주면 된다 dao로 가서 페이징을 위해 작성해준다 원리는 게시판 검색 로직과 같다 페이지별 select와 totalpage를 알기 위해 쿼리문을 작성해준다 이제 service로가서 페이징을 위한 준비를 해 주고 controller로가서 댓글도 같이 불러오게 해 주고 기본 페이지는 1로 지정해준다 결과 잘 출력된다! 요새 사실 이런 시스템은 잘 안쓰던데 일단 백엔드 위주의 공부중이니 좀 오래됐지만 ㅎㅎ 이걸로 만들었다! 이제 댓글 삭제 기능을 만들러 가자! 수정보다 삭제가 더 간단하다 그래서 삭제부터 만들자!

Springboot 게시판 만들기!(6)글 수정 only text version

수정/삭제 중 수정부터 하려는데 이유는 삭제시 글/댓글/사진 db로보면 boardl/comment/boardimage 하나 더 대댓글/좋아요 등까지 있다면 한 번에 다 삭제해야 하기 때문에 이제 좀 더 심플한 수정부터 하겠다 일단 아직 사진 올리기 기능이 없으니 역시 심플하다 html을 보면 이렇게 로그인 사용자와 글 작성자가 같다면 수정/삭제가 가능한 형식이다 이제 선택을 해야 한다 수정을 누를 시 disabled가 사라져서 입력이 가능하게 할지 아니면 비슷한 페이지로 보내서 수정을 하고 오게 할지 음 대부분 수정 페이지가 따로 있던 거 같아서 수정 페이지를 만들 거다 여기서 또 하나의 선택이 있다 글쓰기 페이지를 재활용할지 하니면 똑같은 페이지를 하나 더 만들지 일단 하나더 만들어서 진행하겠다 con..

Springboot 게시판만들기!(5) 조회수

시스템은 글을 클릭하면 조회수가 올라가면 된다 service로가서 이전 getArticle만 조금 바꿔주면 된다 boardvo.getHit() 로 이전 조회수를 가져와서 boardvo.setHit 다시 set을 해주고 위에 있는 @Transactional 때문에 바로바로 db가 수정이 된다 jpa진짜 아주 편리하다 들어가면 조회수가 늘고 0->1로 db도 바뀌었다 뒤로 가기 해도 1이 되어있다! 이제 다음번엔 게시글 수정/삭제를 만들어보자!

Springboot 게시판만들기!(4) 글내용 보이기 with th:href=""

이제 db에 있는 글 내용들을 글 번호로 가져와서 뿌려주면 된다 html 이제 service로 가서 만들어주자 bid를 받아서 번호에 맞는 게시물 내용을 db에서 다 꺼내온다 controller로가서 근데 html에서 /auth/가없으므로 솔직히 나도 th:href는 잘 모르는 거 같다 아직 value나 name 이런 건 그냥 쓰면 되는데 href는 thymealf로 했을 때 좀 다른 거 같아서 저부분은 그냥 복붙 했다 미리 써 논 글들이 잘 들어온다 이제 조회수 기능을 만들어보자!

Springboot 게시판 만들기!(2) 페이징 with PageRequest.of

자 이제 페이징을 할 텐데 두 가지 방법이 있다 1. jpa가 편하게 제공해주는 기능이고 2. 댓글이나/검색할 때 써야 하는 좀 더 전통적으로 페이징을 하는 건데 둘 다 원리만 이해한다면 구현하기 어렵지 않다 한 번만 이해하면 된다 boardservice로가서 boarddao.findAll(PageRequest.of(page-1, pagesize,Sort.by(Sort.Direction.DESC,"bid"))); 이 간단한 줄이 페이징을 해준다 무슨 뜻 이냐면 page에 맞게 지정한 pagesize만큼 bid를 내림차순 기준으로 정렬해서 보내준다 기가 막힌다 진짜 하나의 놀라운 기능이 또 있다 controller로가서 여기서 개인적으로 느끼는 건데 스프링은 진짜 알면 편하고 모르면 아예 못쓰는 거 같다!..

Springboot 게시글 불러오기!(1)

게시판의 하이라이트에 입성했다 일단 전체 글 한번 불러와 보고 페이징 처리를 하려고한다 그전에 글을 몇 개 넣어보자 이제 이걸 불러오면 된다 boardservice로가서 자체로 제공해주는 boarddao.findAll() 사용해서 전체 게시글을 가져오고 controller로가서 난 array라고 해서 보내겠다 그러면 thymealf에서 array로 받아서 쓰면 된다! jdbc에서 처음에 넘어왔을 때 어 requset.setattributes() 어디 있지 했는데 spring에서는 둘 다 사용 가능하지만 model로 간단히 사용할 수 있는 거 같아서 자주 쓰게 된다 html을 보면 이렇게 each를 사용해서 for문처럼 사용이 가능하다! 이제 페이징을 구현할 것이다 보면 글 순서도 오래된 순으로 나오고 예..

Springboot 게시판글쓰기!(1) with Ajax only text version

이제 후기 게시판을 만들자 html vo dto dao 현재 작성된 글이 없어서 아무것도 뜨지 않는다 이제 글 쓰는 페이지를 만들자 일단 ajax 왜냐면 글쓰기를 하는데 이메일 인증이 안되어있으면 못쓰게 만들려고한다! 사실 좀더 필요한 기능이 있다 영수증인증이라던가 근데 진짜 카페를 차린건아니여서 ㅋㅋㅋ 이메일인증만 해주고 아니근데... 점점 늘어난다... 합칠 방법을 나중에 생각해 봐야겠다... 어쨌든 이제 restcontroller로가서! 검증을 해주고 맞다면 이제 writearticlepage로오는데 충분히 그냥 검사-> 소스 해서 true로 바꾸고 올 수 있으므로 컨트롤러에서도 한 번 더 검사해보고 (여기서는 get방식이다!) 아니면 boardlist로 보내버리자!