일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 산업은행it
- 트리맵
- springboot
- 파이널프로젝트
- 산업은행청년인턴
- 해시
- 운영체제
- 프로그래머스
- findById
- 구현
- 프로젝트
- 컴퓨터구조
- CPU스케줄링
- 2178
- 임베디드타입
- 스케일아웃
- SpringBatch
- CS
- 그래프탐색
- BFS
- Spring JPA
- 외래키제약조건위반
- fatch
- flyway
- 폰켓몬
- DB replication
- JPA
- 코테
- 백준
- 트리셋
- Today
- Total
목록프로젝트 (4)
나 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..

이전 프로젝트에서 API 호출해서 데이터를 가져올 때 스케줄러만 사용하여서 주기적으로 해당 작업이 반복되도록 했었다. 이번 프로젝트에서는 API 호출 시 가져오는 데이터를 스프링 배치를 통해 처리해보려 한다. 이제 Spring Initializer에서 Spring Boot 2점대 버전이 지원되지 않아서, 3.1.6 버전을 사용하여 프로젝트를 진행하고 있다. 이에 따라 3버전 부터는 Spring Batch 5버전을 사용하도록 업데이트가 되어서, 레퍼런스가 많지 않은 Batch 5 버전을 사용해야 한다. 배치에 대한 어느정도의 개념이 있어야 바뀐 점이 많은 5 버전을 잘 사용할 수 있을 것 같아, 기본적인 개념을 먼저 공부해보았다. 스프링 배치 그게 뭔데 어떻게 하는건데 스프링 배치 : 대용량 데이터를 처리..