댓글(Comment)7 스프링 부트(Spring Boot) 게시판 - Ajax(비동기) 페이징 새로고침 시 페이지 번호 유지하기 [Thymeleaf, MariaDB, IntelliJ, Gradle, MyBatis] 본 게시판 프로젝트는 단계별(step by step)로 진행되니, 이전 단계를 진행하시는 것을 권장드립니다. DBMS 툴은 DBeaver를 이용하며, DB는 MariaDB를 이용합니다. (MariaDB 설치하기) 화면 처리는 HTML5 기반의 자바 템플릿 엔진인 타임리프(Thymeleaf)를 사용합니다. 이전 글에서는 jQuery의 Ajax를 이용해서 REST API 방식으로 댓글에 페이징을 적용해 보았습니다. 하지만 개선해야 할 점이 한 가지 남아있습니다. 게시글과 같은 동기 처리는 페이지를 이동하는 시점에 주소(URL)가 변경되기 때문에 브라우저를 새로고침 해도 페이지 번호와 검색 조건이 유지되지만, Ajax는 페이지 번호에 해당되는 데이터를 조회하되 주소는 변경되지 않기 때문에 브라우저를 새로고침 .. 2023. 5. 1. 스프링 부트(Spring Boot) 게시판 - REST API 방식으로 댓글 페이징(Paging) 처리하기 [Thymeleaf, MariaDB, IntelliJ, Gradle, MyBatis] 본 게시판 프로젝트는 단계별(step by step)로 진행되니, 이전 단계를 진행하시는 것을 권장드립니다. DBMS 툴은 DBeaver를 이용하며, DB는 MariaDB를 이용합니다. (MariaDB 설치하기) 화면 처리는 HTML5 기반의 자바 템플릿 엔진인 타임리프(Thymeleaf)를 사용합니다. 이전 글에서는 댓글 삭제 기능을 구현했고, 이를 끝으로 댓글 CRUD 처리가 모두 완료되었습니다. 이번에는 게시글 페이징과 검색 처리에서 구현한 클래스들을 이용해서 댓글에 페이징을 적용해 볼 건데요. 지금까지와 마찬가지로 jQuery의 Ajax를 이용해서 화면의 움직임 없이 페이지를 이동하도록 처리해 보도록 하겠습니다. 1. 댓글 조회용 DTO 클래스 생성하기 우선 java 디렉터리에 다음의 클래스를 생.. 2023. 4. 25. 스프링 부트(Spring Boot) 게시판 - REST API 방식으로 댓글 삭제 기능 구현하기 [Thymeleaf, MariaDB, IntelliJ, Gradle, MyBatis] 본 게시판 프로젝트는 단계별(step by step)로 진행되니, 이전 단계를 진행하시는 것을 권장드립니다. DBMS 툴은 DBeaver를 이용하며, DB는 MariaDB를 이용합니다. (MariaDB 설치하기) 화면 처리는 HTML5 기반의 자바 템플릿 엔진인 타임리프(Thymeleaf)를 사용합니다. 이전 글에서는 흔히 모달(Modal)이라고 불리는 레이어 팝업(Layer Popup)을 이용해서 기존에 등록된 댓글을 수정하는 기능을 구현해 보았습니다. 이번에는 댓글 CRUD의 마지막 단계인 댓글 삭제 기능을 구현해 보겠습니다. 1. 댓글 API 컨트롤러(Controller) - 메서드 추가하기 우선 CommentApiController에 다음의 메서드를 추가해 주세요. // 댓글 삭제 @DeleteM.. 2023. 4. 24. 스프링 부트(Spring Boot) 게시판 - REST API 방식으로 댓글 수정 기능 구현하기 [Thymeleaf, MariaDB, IntelliJ, Gradle, MyBatis] 본 게시판 프로젝트는 단계별(step by step)로 진행되니, 이전 단계를 진행하시는 것을 권장드립니다. DBMS 툴은 DBeaver를 이용하며, DB는 MariaDB를 이용합니다. (MariaDB 설치하기) 화면 처리는 HTML5 기반의 자바 템플릿 엔진인 타임리프(Thymeleaf)를 사용합니다. 이전 글에서는 특정 게시글에 등록된 댓글 리스트(목록)를 출력하는 기능을 구현해 보았습니다. 이번에는 기존에 등록된 댓글을 수정하는 기능을 구현해 볼 건데요. 흔히 모달(Modal)이라고 불리는 레이어 팝업(Layer Popup)을 이용해 보겠습니다. 1. 댓글 API 컨트롤러(Controller) - 메서드 추가하기 CommentApiController에 다음의 두 메서드를 추가해 주세요. // 댓글 .. 2023. 4. 20. 스프링 부트(Spring Boot) 게시판 - REST API 방식으로 댓글 리스트(목록) 기능 구현하기 [Thymeleaf, MariaDB, IntelliJ, Gradle, MyBatis] 본 게시판 프로젝트는 단계별(step by step)로 진행되니, 이전 단계를 진행하시는 것을 권장드립니다. DBMS 툴은 DBeaver를 이용하며, DB는 MariaDB를 이용합니다. (MariaDB 설치하기) 화면 처리는 HTML5 기반의 자바 템플릿 엔진인 타임리프(Thymeleaf)를 사용합니다. 이전 글에서는 @RestController와 jQuery의 Ajax를 이용해서 화면의 움직임(이동 또는 새로고침) 없이 댓글을 등록하는 기능을 구현해 보았습니다. 이번에는 특정 게시글에 등록된 댓글을 출력하는 기능을 구현해 볼 건데요. 게시글의 경우, 게시글이 생성/수정/삭제되는 시점에 리스트 페이지로 리다이렉트 하도록 처리했었습니다. 댓글은 등록/수정/삭제된 시점에 페이지를 이동하거나 새로고침 하지 않.. 2023. 4. 20. 스프링 부트(Spring Boot) 게시판 - REST API 방식으로 댓글 등록 기능 구현하기 [Thymeleaf, MariaDB, IntelliJ, Gradle, MyBatis] 본 게시판 프로젝트는 단계별(step by step)로 진행되니, 이전 단계를 진행하시는 것을 권장드립니다. DBMS 툴은 DBeaver를 이용하며, DB는 MariaDB를 이용합니다. (MariaDB 설치하기) 화면 처리는 HTML5 기반의 자바 템플릿 엔진인 타임리프(Thymeleaf)를 사용합니다. 이전 글에서는 댓글 데이터를 관리할 tb_comment 테이블을 생성하고, 매퍼(Mapper)와 서비스(Service) 영역까지 댓글 CRUD 기능을 구현해 보았습니다. 이번에는 댓글 등록 기능을 구현해 볼 건데요. @RestController 어노테이션과, jQuery의 Ajax를 이용해서 화면의 움직임(이동 또는 새로고침) 없이 데이터를 주고받는 비동기 처리에 대해 알아보겠습니다. 1. REST AP.. 2023. 4. 18. 스프링 부트(Spring Boot) 게시판 - REST API 방식으로 댓글 CRUD 처리하기 [Thymeleaf, MariaDB, IntelliJ, Gradle, MyBatis] 본 게시판 프로젝트는 단계별(step by step)로 진행되니, 이전 단계를 진행하시는 것을 권장드립니다. DBMS 툴은 DBeaver를 이용하며, DB는 MariaDB를 이용합니다. (MariaDB 설치하기) 화면 처리는 HTML5 기반의 자바 템플릿 엔진인 타임리프(Thymeleaf)를 사용합니다. 이전 글에서는 REST API란 무엇이며, 어떤 방식으로 데이터에 접근해야 하는지 가볍게 알아보았습니다. 지금부터 게시판에 댓글 기능을 구현해 볼 건데요. 이번 글에서는 매퍼(Mapper)와 서비스(Service)에 댓글 CRUD 로직을 작성해 두고, 다음 글부터 @RestController와 jQuery의 Ajax를 이용해서 비동기 방식의 화면(HTML) 처리를 진행합니다. 1. 댓글 테이블 구조 칼럼.. 2023. 4. 17. 이전 1 다음