목록2024/03 (19)
우당탕탕 개발일지
1. JPA 퀴리 메소드, ResponseEntity 어제 공부했던 부분 중 모르는 개념이 많았다. 해당 개념에 대하여 공부하여야 겠다. 어제 게시물 : 2024.03.27 - [취준] - 18일차_게시판 프로젝트(11) 1-1. JPA 쿼리 메소드 commentRepository 인터페이스에서 사용했던 'findAllByBoardEntityOrderByIdDesc' 메소드에 대해 다시 설명해보겠다. [ 연관관계 ] CommentEntity에서 BoardEntity를 참조 CommentEntity : BoardEntitiy 는 N : 1 관계로 ManyToOne 어노테이션을 사용 CommentEntity 외래키 >> board_id BoardEntity 기본키 >> id [ 설명 ] 해당 쿼리 메소드를 ..
1. 댓글 DB에 저장하기 저번 시간에는 Controller가 댓글 요청을 잘 받는지 확인만 하였다. 이번에는 댓글 DB에 저장, 댓글 목록 반환 까지 구현한다. 저번 시간 참고 : 2024.03.26 - [취준] - 17일차_게시판 프로젝트(10) 1-1. Controller CommentController.java 1. 댓글 DB에 저장 >> commentService.save 메소드 >> 1-3 참고 2. 댓글 목록 반환 >> commentService.findAll 메소드 >> 1 번이 성공할 경우에만 수행 >> 1-4 참고 3. 반환값 >> ResponseEntity 사용 >> 1-5 참고 1-2. DTO, Entity 설정 CommentDTO.java 1. 저징하는 Data id commmet..
1. 다중파일 첨부 1-1. 주의 사항 파일 첨부할 때는 여러개 한번에 선택해야 함... 그렇지 않을 경우에는 마지막에 선택한 파일만 인식 이걸 몰라서 1시간 반을 버림 ㅎㅎㅎㅎㅎㅎ 1-2. 다중파일 첨부 업로드_View save.html 1. input 태그 multiple 설정 추가 파일 탐색기에서 여러개 파일 선택 업로드 아래 화면처럼 파일 개수 나옴 1-3. 다중파일 업로드_Server BoardController.java 1. board/save 로 받음 2. boardService.save : 전해 받은 boardDTO 값 저장 BoardService.java [ save 메소드 소스 ] 기존 단일 파일 첨부에서 다중 파일에 대한 로직으로 소스 변경 [ 단일 처리 ] 1. 파일 저장 로직 2...
1. File Entity 설계 및 연관관계 1-1. 설명 게시물 하나에 파일 N개를 등록할려고 한다. 이때 파일을 관리하는 Table(tb_board_file)를 하나 생성하여 관리할 것이다. 게시물 테이블인 tb_board과 tb_board_file 에게 연관관계 부여한다. 연관관계를 통해 하나의 게시물에 따른 여러개의 첨부파일을 관리한다. 연관관계 유형 >> 1 : N (게시물 : 파일) tb_board 에서 한행을 조회하면 tb_board_file 에서 해당 파일의 모든 행을 가지고 온다. 1-2. 연관관계란? [ 정의 ] 연관 관계란 객체의 참조와 테이블의 외래 키를 매핑시키는 것 [ 연관관계 매핑 ] 우리는 JPA를 사용하므로써 entity들의 연관 관계를 매핑해두고 필요할 때 해당 entit..
1. 파일첨부 기능 소개 1-1. 파일 첨부와 관련하여 수정 부분 1. save.html 글 작성 시, 파일 첨부 2. BoardDTo 첨부 파일 Data 전달 3. BoardService.save() 첨부 파일 확인 첨부 파일 저장 공간에 저장 4. BoardEntity 파일과 관련된 컬럼 추가 5. detail.html 상세페이지에 첨부 파일 있으면 보여주기 1-2. 파일 첨부와 관련하여 Class 추가 부분 1. BoardFileEntity 2. BoardFileRepository DB에는 파일 자체를 저장하는 것이 아닌 파일명칭만 저장 파일 자체는 서버 안에 저장 1-3. 유튜브 영상 https://www.youtube.com/watch?v=Q584jyMQCL0&list=PLV9zd3otBRt7j..
1. 페이징 처리 (3) 1. '페이지목록' 버튼 클릭 2. 페이지 정보 가져오기 3. 하단 페이지 번호 계산 1-1. '페이지목록' 버튼 클릭 index.html 1. board/paging 주소로 Get 방식 요청 1-2. 개념 설명 BoardController.java @PageableDefault(page = 1) -> 페이지 번호 1부터 시작 -> API 요청 시 Pageable 객체에 대한 파라미터를 넘겨주지 않아도 자동으로 기본값을 가진 Pageable 타입 파라미터를 제공 Pageable -> 페이징 정보(페이지 번호, 페이지 크기, 정렬 방식 등)를 담고 있는 인터페이스 -> Spring JPA 에서 제공 Page 객체 -> Pageble을 파라미터로하여 가져온 결과물은 Page 형태로 ..
1. 게시글 삭제 1-1. 동작 순서 1. 삭제 버튼 클릭 2. DB에서 데이터 삭제 3. 목록 화면 보여주기 1-2. 삭제 버튼 클릭 detail.html 1. board/delete/{id} 주소를 Get 방식으로 요청 1-3. DB에서 데이터 삭제 BoardController.java 1. Get 방식으로 요청 받음 2. delete 메소드 호출하여 DB 데이터 삭제 (아래 설명 참고) 3. redirect 를 사용하여 목록 화면 불러옴 BoardService.java 1. deleteById 메소드 사용하여 게시글 삭제 -> deleteById : 기본키 값에 해당하는 Row 삭제 1-4. redirect redirect 다른 페이지로 이동 시켜주는 기능 return "redirect:/주소" -..
1. 코테 풀기 2024.03.19 - [코테/프로그래머스] - [프로그래머스] 최고의 집합(Java, Level.3) [프로그래머스] 최고의 집합(Java, Level.3)문제 1. n개 원소의 합이 s가 되는 수의 집합 2. 1번을 만족하면서 각 원소의 곱이 최대가 되는 집합 입출력 예 풀이 다른 블로그을 참고하여 해당 문제의 풀이를 이해했다. 1. 조건 2번을 충족하기coding-document.tistory.com Git Hubhttps://github.com/ujin302/Board 2. 게시글 수정 2-1. Controller에서 Model어제 Model 의 개념을 정확하게 이해하지 못한듯 하다 어제는 단순히 Key, Value의 형태로 이루어진 데이터형식이다! 라고 이해를 했다 (마음..