SpringBoot/JPA 6

CRUD 중 read를 봅시다.

repository와 entity 설정을 다 해놓았기 때문에, userRepository.find~의 명령어를 써도 해당 내용을 읽어 올 수 있습니다. Optional user 는 자바를 공부하면 알 수 있지만, 제네릭타입을 받게 되어있습니다. selectUser가 있는부분에 user라고 동일하게 선언하면, 이름이 똑같기 때문에 오류가 나서, selectUser라고 선언했습니다. 그래서 selecrUser가 user에 들어있으면, 그 값을 꺼내달라는 명령어 입니다.

SpringBoot/JPA 2021.03.19

CRUD 중 create를 봅시다.

User객체를 생성해줍니다. 객체를 생성해줌으로써, query문을 사용하지않고, 객체로도 데이터베이스에 데이터를 삽입 해 줄 수 있습니다. 또한 setId부분은 auto increment이기 때문에 따로 값을 세팅하지 않아도 알아서 값이 설정이 잘 됩니다. userRepository.save에서 save는 반환하는 성질이 있기 때문에, user의 새로운객체인 newUser를 이용해서 값을 출력하면, DB에 삽입한 내용 데이터를 출력한 것을 볼 수 있습니다. 출력된 값을 보면, 잘 출력이 된것을 알 수 있습니다.

SpringBoot/JPA 2021.03.19

Repository

따로 쿼리문을 작성하지 않아도 기본적인 인터페이스를 통해서 CRUD를 사용할 수 있습니다. Create : 생성 Read : 읽기 (Select) Update : 업데이트 Delete : 삭제 respository의 클래스명을 지을때는, 기존에 있는 클래스 이름과 함께 respository라고 붙혀줍니다. 다음과 같이 @Repository를 추가하여 이 자바클래스는 Repository라는것을 알려줍니다. 또한 JPA를 상속받고 의 뜻은 엔티티에서 User라는 클래스에서 기본키의 형태는 Long인것을 가져온다는 뜻을 가집니다. 그럼 Entity와 Repository을 잘설정해야지 DB와 연결 할 수 있습니다.

SpringBoot/JPA 2021.03.18

Entity

Camel Case : 단어를 표기할 때 첫 문자는 소문자로 시작하며 띄어쓰기 대신 (대문자)로 단어를 구분 Java의 변수를 선언할 때 camelCase로 선언합니다. Snake Case : 단어를 표기할 때 모두 소문자로 표기하며, 띄어쓰기 대신(_) 로 표기. DB컬럼에 사용합니다. API를 정하기에 따라 다르지만, 주로 API 통신 규격에는 구간에서는 Snake Case를 많이 사용합니다. Entity : JAP에서는 테이블을 자동으로 생성해주는 기능 존재합니다. DB Table == JPA Entity Annotation 용도 @Entitiy 해당 calss가 entity임을 명시 @Table 실제 DB테이블의 이름을 명시 @Id Index Primary key를 명시 @Column 실제 DB ..

SpringBoot/JPA 2021.03.18