728x90

스프링 4

[DAY 20] 댓글 삭제 View 페이지 구현 및 자바스크립트 이벤트 처리

1. 댓글 삭제 버튼 추가수정 버튼 옆에 삭제 버튼을 추가하기 위해 수정 버튼 구현한 부분 바로 아래에 삭제 버튼 코드를 작성한다. 삭제2. 삭제 버튼 클릭하여 REST API 요청 보내기 { // 삭제 버튼 선택 const commentDeleteBtns = document.querySelectorAll(".comment-delete-btn"); // 삭제 버튼 이벤트 처리 // commentDeleteBtn.addEventListener("click", function() { // console.log("삭제 버튼이 클릭됐습니다..!"); // }); commentDeleteBtns.forEach(btn..

[DAY 16] 댓글 REST API - Create, Update, Delete 구현

모든 작업의 흐름은1. 컨트롤러 만들기2. 서비스 만들기로 이루어진다. 또한 생성, 수정, 삭제는 DB에 접근하기 때문에 @Transactional 어노테이션을 주어야 한다.댓글 생성1. 컨트롤러 만들기// CommentApiController.java // 2. 댓글 생성 @PostMapping("/api/articles/{articleId}/comments") public ResponseEntity create(@PathVariable Long articleId, @RequestBody CommentDto dto) { // 서비스에 위임 CommentDto createdDto = c..

[DAY 12] 컨트롤러 쪼개기 : 서비스 계층 구현과 트랜잭션

지금까지 일은 컨트롤러가 다 했다... 컨트롤러는 사실 웨이터였고 실주방장이 나설 차례.컨트롤러 안의 로직을 조각내어서 서비스가 처리하도록 리팩토링해야 한다. // PATCH @PatchMapping("/api/articles/{id}") public ResponseEntity update(@PathVariable Long id, @RequestBody ArticleForm dto) { // 1. DTO -> 엔티티 변환 Article article = dto.toEntity(); log.info("id: {}, article: {}", id, article.toString()); // ..

[DAY 4] DB 조회와 롬복을 통한 리팩터링

스프링부트를 처음 시작할때 선택했던 H2 DB를 이용하여 데이터가 제대로 들어왔는지 확인해야한다.H2 DB- 인메모리 DB (휘발성O, 종료시 모든 메모리 삭제 / RAM에 데이터 저장)- 개발 단계 혹은 테스트 코드에서 자주 활용 (자바로 작성된 RDBS)- 브라우저 기반 콘솔 프로그램장점- 브라우저 기반이기때문에, 별도의 설치가 필요 없으며 가볍고 빠름- 메모리에서 CRUD 연산을 하기때문에 하드디스크보다 상대적으로 빠름- ANSI 표준 SQL, 호환성 지원 (다른 DB와 호환 가능)- 설정이 단순함단점- 대규모 프로젝트에서는 성능이 부족함- 백업, 복구 기능 부족 브라우저로 접속할때마다 run에서 jdbc url을 찾아서 입력해야함데이터 조회데이터 삽입INSERT INTO article(id, ti..

728x90