본문 바로가기

전체 글32

[Chapter 1] 자바를 시작하기 전에 '자바의 정석 3rd Edition'을 공부하며 정리한 내용입니다. 1. 자바(JAVA Programming Language) 1.1 자바란? 썬에서 개발하여 1996년 1월에 공식적으로 발표한 객체지향 프로그래밍 언어 운영체제에 독립적. 자바로 작성된 프로그램은 운영체제의 종류에 관계없이 실행 가능 풍부한 클래스 라이브러리(Java API)를 통해 프로그래밍에 필요한 요소들을 기본적으로 제공 1.3 자바언어의 특징 1. 운영체제에 독립적 기존의 언어는 한 운영체제에 맞게 개발된 프로그램을 다른 종류의 운영체제에 적용하기 위해서는 많은 노력이 필요. Java는 그럴 필요 없음 일종의 에뮬레이터인 자바가상머신(JVM)을 통해 자바 응용프로그램은 운영체제나 하드웨어가 아닌 JVM과 통신하고 J.. 2022. 4. 1.
[Plming] 태그 관련 연관 관계 매핑 게시글을 생성할 때 사용자가 게시글과 관련된 태그를 선택할 수 있도록 구현하기로 했다. 이 경우 게시글과 태그를 일대다 관계로 구현하기 위해 두 테이블을 연결하기 위한 연관 Entity가 필요하다. 따라서 태그를 구현하는데 필요한 연관 Entity를 먼저 생성해줄 것이다. (DB 연관관계 설정 부분에서 생성한 Entity를 약간 수정했다.) 1. Entity 생성 및 수정 먼저 Tag entity를 생성해볼 것이다. "plming" 패키지 아래 tag 패키지를 생성하고 "entity" 패키지를 생성한 후 Tag 클래스를 생성한다. Tag 클래스 생성이 완료되면 더보기 코드를 작성한다. 더보기 package plming.tag.entity; import lombok.AccessLevel; import lo.. 2022. 4. 1.
[Plming] 게시판 API 서버에 올리기 지금까지 진행된 게시판 API를 서버에 올려 프론트엔드와 연동해 테스트할 수 있도록 할 것이다. 서버에 배포 파일을 올리기 전에 기존에 작성한 API 문서를 수정하다 구현하지 않은 기능이 있어 먼저 기능을 구현한 뒤 배포 파일 빌드를 진행할 것이다. 마이페이지에 들어갔을 때, 사용자가 작성한 게시글을 확인할 수 있도록 사용자가 작성한 게시글 리스트만 조회할 수 있는 기능을 추가할 것이다. 1. 사용자 ID 기준 게시글 리스트 조회 기능 추가 먼저 BoardRepository에 findAllByUserId 메서드를 추가한다. package plming.board.entity; import org.springframework.data.domain.Sort; import org.springframework.d.. 2022. 3. 31.
[Plming] DB 연관 관계 설정 이제 게시판 테이블과 관련된 테이블의 연관 관계를 설정할 것이다. 게시판 DB와 연관관계를 설정해야 할 DB는 아래와 같다. user 테이블 사용자 정보를 가지고 있는 테이블 기존의 게시판 테이블에서는 user 컬럼에 사용자의 이름을 값으로 직접 가지고 있었지만, post 테이블과 user 테이블 연관 관계를 설정해 post 테이블의 user_id 컬럼에서 게시글 작성자의 id 값을 가지고 있도록 변경할 것이다. tag: tag 테이블의 컬럼으로는 id와 name이 있으며 tag 테이블 게시글에 달린 tag의 정보를 가지고 있는 테이블 컬럼으로 id와 name이 있다. post_tag 테이블 게시글에 달린 태그의 정보를 저장하는 테이블 컬럼으로 id, post_id, tag_id를 가진다. post_id.. 2022. 3. 30.
[Plming] DB 설정 변경 및 게시글 기능 추가 2022년 03월 29일에 팀 회의 진행 결과 게시글 DB에서 변경 사항이 생겨 DB 설정을 변경하고 회의 내용을 토대로 게시글 구현 코드를 변경하고, 게시글의 조회수 증가와 삭제 기능을 추가할 것이다. 1. DB 컬럼 설정 변경 DB 설정을 변경할 때는 DB 안의 데이터가 하나도 없는 상태여야 한다. 만약 DB 안에 데이터가 들어가 있는 경우 "delete from {table 이름}"을 실행해 DB를 비운 뒤 아래 내용을 실행해야 잘 변경될 것이다. 기존 DB 설정을 확인해보면 아래와 같다. 이 중에서 delete_yn의 enum 값을 ('Y', 'N')이 아니라 true, false로 변경하는 것이 좋을 것 같다는 의견이 나와 이 부분을 수정할 것이다. true인 경우 delete_yn의 enum .. 2022. 3. 30.
[Plming] 게시글 등록 / 수정 구현하기 코드 설명은 추후에 추가하겠습니다! 이번에는 비즈니스 로직을 담당하는 Service Layer와 API 호출을 담당하는 Rest Controller를 처리해 볼 것이다. 1. Service Layer에서 사용할 Class 생성하기 Service Layer에서 API를 처리하기 위해 필요한 클래스는 총 3개이다. 게시글의 생성과 수정을 처리할 요청(Request) DTO 클래스 게시글 정보를 return 할 응답(Response) DTO 클래스 트랜잭션(Transaction)을 처리할 Service 클래스 1.1. 요청(Request) DTO 클래스 생성하기 "plming.board" 패키지에 dto 패키지를 생성한 후 BoardRequestDto 클래스를 생성하고 아래 코드를 작성한다. 더보기 packa.. 2022. 3. 29.
728x90
LIST