JPA) Entity의 연관 관계 - @ManyToMany -
·
자바 탐구
Entity의 연관 관계 - @ManyToMany - N 대 M 관계 N : M 관계를 맺어주는 역할을 한다. 상품 Entity와 고객 Entity가 N : M 관계라고 가정 단방향 관계 N : M 관계를 풀어내기 위해 중간 테이블(orders)을 생성하여 사용한다. Product Entity import jakarta.persistence.*; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import java.util.ArrayList; import java.util.List; @Entity @Getter @NoArgsConstructor public class Product { @Id @GeneratedVal..
JPA) Entity의 연관 관계 - @OneToMany -
·
자바 탐구
Entity의 연관 관계 - @OneToMany - 1 대 N 관계 1 : N 관계를 맺어주는 역할을 한다. 상품 Entity와 고객 Entity가 1 : N 관계라고 가정 단방향 관계 고객 Entity가 N의 관계로 외래 키를 가지고 있지만 외래 키를 관리하는 주인은 product entity 관계가 N인 users 테이블에 추가한 후 상품 Entity를 통해 관리한다. Product Entity import jakarta.persistence.*; import lombok.Getter; import lombok.NoArgsConstructor; import java.util.ArrayList; import java.util.List; @Entity @Getter @NoArgsConstructor pu..
JPA) Entity의 연관 관계 - @ManyToOne -
·
자바 탐구
Entity의 연관 관계 - @ManyToOne - N 대 1 관계 @ManyToOne N 대 1 관계를 맺어주는 역할을 한다. 고객 Entitiy와 상품 Entity가 N : 1 관계라고 가정 단방향 관계 Product Entity가 N의 관계로 외래 키의 주인 Product Entity import jakarta.persistence.*; import lombok.Getter; import lombok.NoArgsConstructor; @Entity @Getter @NoArgsConstructor public class Product { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name..
JPA) Entity의 연관 관계 - @OneToOne -
·
자바 탐구
Entity의 연관 관계 - @OneToOne - 1 대 1 관계 Entity로 데이터베이스를 생성하고자 할 때 Entitiy 클래스를 JPA가 데이터베이스의 테이블에 매핑을 해주는 개념이다. 따라서 인터페이스인 JpaRepository를 상속한 인터페이스를 만들어 주어야 한다. interface 간의 상속은 extends로 이루어진다. Repository public interface extends JpaRepository { } application.properties spring.datasource.url = spring.datasource.username = root spring.datasource.password = spring.datasource.driver-class-name=com.mysq..
SQL) DROP, TRUNCATE, ALTER
·
데이터베이스 탐구
DROP, TRUNCATE, ALTER DROP TABLE DROP TABLE ; 데이터베이스의 기존 테이블을 삭제할 수 있다. 테이블을 삭제하면 저장된 모든 정보가 삭제된다. TRUNCATE TABLE TRUNCATE TABLE ; 테이블 내부의 데이터를 삭제할 수 있다. 테이블 자체는 삭제하지 않는다. ALTER 열 추가 ALTER TABLE ADD ; ex) ALTER TABLE Customers ADD Email varchar(255); "Customers" 테이블에 문자열의 최대길이가 255자인 Email 열을 추가한다. 테이블 변경 - 열 삭제 ALTER TABLE DROP COLUMN ; 테이블에서 열을 삭제할 수 있다. ex) ALTER TABLE Customers DROP COLUMN E..
MySQL) 인텔리제이에서 테이블 만들어보기
·
데이터베이스 탐구
인텔리제이에서 테이블 만들어보기 MySQL콘솔 실행하기 우측 상단에 "Database"를 클릭한다. "@localhost"를 한번 클릭하면 쿼리 콘솔창이 활성화된다. "Ctrl + Shift + F10" 또는 해당 아이콘을 클릭한다. "Open Default Console"을 클릭한다. 해당 콘솔창이 실행되는 것을 확인할 수 있다. DB 연결이 되지 않으면 실행이 되지 않을 것이다. 아래의 링크를 참고하자. 인텔리제이) MySQL 연동하기 인텔리제이) MySQL 연동하기 MySQL 연동하기 데이터베이스 연동할 때 구글링하니 맨 위에 뜨는 글들이 아주 옛날 글들이어서 연결방법이 현재와는 다르다는 것을 알게 되었다. 데이터베이스 연결에 많은 혼동이 와서 포스팅 nosy-rabbit.tistory.com Da..
인텔리제이) MySQL 연동하기
·
자바 탐구
MySQL 연동하기 데이터베이스 연동할 때 구글링하니 맨 위에 뜨는 글들이 아주 옛날 글들이어서 연결방법이 현재와는 다르다는 것을 알게 되었다. 데이터베이스 연결에 많은 혼동이 와서 포스팅을 하게 되었다. 현재 포스팅을 하는 날짜는 2023. 4 My SQL 다운로드하기 My SQL 다운로드 링크 MySQL :: Download MySQL Installer Select Operating System: Select Operating System… Microsoft Windows Select OS Version: All Windows (x86, 32-bit) Windows (x86, 32-bit), MSI Installer 8.0.24 2.4M (mysql-installer-web-community-8.0...
자바) 어노테이션
·
자바 탐구
Annotation (Metadata) 클래스나 메서드 등의 선언 시에 @를 붙인다. 자바언어에서 사용하는 어노테이션 @Override 해당 메서드가 부모 클래스의 메서드를 Override 했다는 것을 명시 컴파일러에게 부모클래스로부터 Override를 하였다고 전달하여 문제가 생긴다면 알려주도록 할 수 있다. @Deprecated 이 클래스나 메서드는 더이상 사용하지 않을 경우를 명시 만약 사용한다면 경고를 받게 된다. 지워버린 메서드나 클래스를 참조하게 되면 힘겹게 만든 프로그램이 변경사항도 모른 채로 컴파일할 때 에러가 날 것이다. 이러한 하위 호환성을 위해 필요한 어노테이션이다. @SupressWarnings 프로그램에는 문제가 없는데 경고가 날 경우 컴파일러에게 경고해줄 필요 없다고 전달해 준다..
오지랖 토끼
'데이터베이스' 태그의 글 목록