데이터베이스 2

Spring boot/JPA /DB 기본 개념 테이블과 오브젝트(2){JPA의 ORM기술}

ORM 기술 jpa의 뜻은 java persistence API이다 persistence는 영속이란 뜻이다. 자바로 영구히 데이터를 저장할 수 있는 API라는 뜻이다. 영구히 데이터베이스에 저장할 수 있도록 함수를 제공해주는 것이다. jpa의 기반 기술은 hirebernate =>ORM(오브젝트 릴레이션 매핑) 기술을 사용한다 실습 일단 저번 포스팅에서 사용했던 테이블의 데이터를 다 날리고 새로 만들어 보자 기존에 있던 폴인키는 int 타입에 userId로 돼있었는데 그 폴인키를 지우고 위와 같이 코딩해줬다 위 주석은 중요한 내용이니 꼭 숙지해야 한다. 그리고 저장을하면 CREATE가 돼있기 때문에 테이블이 새로 생성되는데 위 주석처럼 jpa에서 자동으로 폴인키를 설정해준다. @ManyToOne을 알면 ..

Springboot 2021.07.01

Spring boot/JPA / DB 기본 개념 테이블과 오브젝트 (1){join}

관계형 DB는 기본적으로 테이블을 하나 들고 있다 즉 db는 테이블의 모임이다. 위테이블을 예로 들자면 id에 있는 데이터는 칼럼 빨간색 네모처럼 가로로 한 줄을 튜플 또는 래코드라고 한다. 근데 DB는 이 칼럼에는 오브젝트를 받지 못한다. 왜냐하면 데이터베이스 규칙의 원자성이라는 규칙이 있다. 최소 단위의 데이터 하나만 넣을 수 있다는 뜻이다. 프로그래밍 언어는 오브젝트 저장이 가능한데 DB는 불가능하다. 그래서 프로그래밍 언어에서 db로 모델링할 때는 어쩔 수 없이 db에 프라이머리 키만 저장을 해놓는 것이다. 그래서 나중에 찾을 때는 프라이머리 키를 참조해서 db에서 찾는 것이다. 위 과정에서 구조가 모순되는 단점이 생겨버린다. 한 명이 여러 개의 글을 쓸 수 있지만 개시글입잡에서는 1명만이 개시글..

Springboot 2021.06.30