일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- CPU스케줄링
- 그래프탐색
- 트리맵
- 2178
- JPA
- fatch
- 폰켓몬
- CS
- BFS
- DB replication
- Spring JPA
- SpringBatch
- 트리셋
- 구현
- 산업은행it
- findById
- 백준
- 임베디드타입
- 파이널프로젝트
- springboot
- flyway
- 프로젝트
- 해시
- 코테
- 운영체제
- 스케일아웃
- 외래키제약조건위반
- 컴퓨터구조
- 프로그래머스
- 산업은행청년인턴
- Today
- Total
목록Spring/Spring JPA (3)
나 JAVA 봐라

현재 프로젝트에서 Flyway로 데이터베이스 스키마 생성, 변경을 하고 이 후 CRUD 작업은 Spring JPA로 하고 있다. 그러던 중 각 방식에서 연관관계를 맺는 방식에 차이가 있는 것을 보고 정리해본다. Spring JPA 란? Spring JPA(Java Persistence API)는 자바 ORM(Object-Relational Mapping) 표준으로, 객체와 데이터베이스 테이블 간의 매핑을 쉽게 처리할 수 있게 도와준다. 스프링 JPA는 기본적으로 JPA를 사용하면서 스프링에서 제공하는 추가적인 기능을 사용할 수 있게 한다. Spring JPA 주요 특징 개발 편의성 향상 : Spring JPA는 개발자가 직접 SQL 쿼리를 작성하는 대신, 메소드 이름만으로 데이터베이스의 CRUD 연산을 ..
Service에서 reviewReaction 엔티티를 DB에 저장하는 메소드를 아래와 같이 작성했다. reviewReaction 엔티티는 review, user 엔티티를 참조하고 있기 때문에 revieReaction 엔티티 생성 시에 참조하고 있는 값이 DB에 존재하지 않으면 java.sql.SQLIntegrityConstraintViolationException을 던진다. 해당 연관관계는 sql 스크립트로 FK를 맺어주고 엔티티에는 JPA 연관관계를 따로 명시하지 않고 있다. 따라서 위의 Exception은 데이터베이스에서 던지는 에러이며, SQL 실행 중 무결성 제약 조건이 위반되었을 때 발생한다. @Transactional public void createReviewReaction(ReviewRea..
프로젝트 진행 중, 예상치 못한 에러로 인해 시간이 지체 되었다... ㅠ @Entity(name = "review") public class Review extends AuditingField { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id", nullable = false) private Long id; @ManyToOne(optional = false) @JoinColumn(name = "user_id", nullable = false) private User user; @ManyToOne(optional = false) @JoinColumn(name = "gym_id", nullable = false) priv..