JPA 4

[JPA] @ManyToOne / @OneToMany Entity 알아보기 (4)

이전 JPA 2번 게시물에서는 N:1 (Board : Member) 에 대한 예제에 관해서 Entity 구조에 대해서만 다루었다. 이번 게시물에서는 Board / Member 테이블 사이에 있어서 Like 테이블을 추가하여 좋아요기능을 추가해보려고 한다. 어떤 사용자가 특정 게시물에 좋아요를 누르게 되면 Like 테이블에 어떤 사용자가 어떤 게시물에 좋아요를 눌렀는지 데이터가 추가된다. 그리고 그 테이블을 기반으로1. 특정 사용자가 어떤 게시물들에 좋아요를 눌렀는지에 대해서 조회할 수 있도록하고2. 특정 게시물이 어떤 사용자들로 부터 좋아요를 받았는지를 조회할 수 있도록 한다. 구조는 다음과 같다. 기존에 Board - Member에 대해서만 다루고 있었다면 지금은 중계테이블 처럼Board - Like ..

JPA 2025.09.05

[JPA] React 브라우저 서버 / Spring boot 서버 연동 시, 쿠키 / Session 설정 (3)

React에서 프론트엔드 부분의 브라우저 서버를 단독 포트를 가진 서버를 열게되고,Spring boot에서도 서버도 단독으로 포트를 가진 서버를 열게된다. 세션 + 쿠키를 통해서 로그인 기능을 구현하려고 할 때, 기존에는 JDBC에서 프론트엔드 코드가 동일한 프로젝트 내에 JSP 파일로 존재해서 같은 포트내에서 적용되고 있었다. 그래서 같은 포트 번호내에서 존재한 프론트엔드와 백엔드 코드간의 세션에 있어서 JAVA를 통한 HttpSession 클래스에 세션을 setAttribute() 메서드를 통해서 session을 생성하게되면 JSP 파일로 열린 브라우저 내에 어플리케이션 정보의 세션에 등록이 되는 것을 확인할 수 있다. 하지만 별로의 포트로 열린 리액트 / spring boot 의 구조에서는 다..

JPA 2025.08.26

[JPA] 1 : N 구조의 외래키 설정 및 Entity 구조 알아보기 (2)

이전 게시물에서는 외래키 제약조건 없이 로그인 기능에 대해서만 코드를 작성하고 예제를 연습했었는데, 이번 게시물에서는 서로 다른 테이블 간의 기본키와 외래키 제약조건을 설정하고 어떤식으로 테이블이 생성되어지고외래키 참조에 있어서 JPA형식의 코드를 어떤식으로 작성해야하는지에 대해서 다루겠다. [클래스 구조]1. Member- MemberApiController- MemberService- MemberRepository- MemberEntity- MemberDto 2. Board- BoardApiController- BoardService- BoardRepository- BoardEntity- BoardDto 2가지의 테이블을 다루고 멤버테이블에서 MEMBER 테이블의 기본키(no)를 통해서 Board 테..

JPA 2025.08.21

[JPA] JPA란 ? (1)

JPA (JAVA Persistence API) 자바에서 객체를 데이터베이스에 저장하고 관리하기 위한 인터페이스와 기능을 제공하는 APIJPA를 사용하면 객체와 관계형 데이터베이스 간의 매핑을 손쉽게 처리할 수 있으며데이터베이스의 CRUD 작업을 간편하게 수행이 가능해짐 여기서 ORM(Object-Relational Mapping)이라는 용어와 연관성이 있는데,우리가 일반적으로 알고있는 어플리케이션 Class 와 RDB(Relational DataBase)의 테이블을 매핑(연결)한다는 뜻으로 기술적으로 어플리케이션의 객체를 RDB 테이블에 자동으로 영속화(데이터가 계속 유지되도록) 해주는 것이다. # JPA 장점- 생산성 (쿼리 X, SQL 자동)- 유지보수 (엔티티 변경 유연)- 패러다임 불일치 해..

JPA 2025.08.20