JSB게시판 프로젝트 게시판만들기_3
Entity는 스프링부트에서 데이터베이스 테이블과 연결된 "데이터의 틀"같은 것이다.
엔티티는 특별한 상자다.
엔티티는 데이터베이스와 친구다.
데이터베이스에서는 정보를 정리해서 표로 저장하는데, 엔티티는 이 표를 코드로 표현한 것이다.
엔티티를 만들면, 실제 데이터베이스에 있는 표랑 연결돼서 데이터를 가져오거나 저장할 수 있다.
@Entity // "난 엔티티야!"라고 표시해주는 것
public class Student {
@Id // 이건 상자의 이름표 같은 것
// (학생마다 다르게 구분할 수 있게 해줌)
private Long id;
private String name; // 학생 이름
private int age; // 학생 나이
private String grade; // 학생 학년
// 이렇게 상자에 들어갈 데이터들을 정의하는 것
}```
[ 설명 ]
[ 역할 ]
[ 설명 ]
[ 역할 ]
public class Student {
private String name; // 이름 상자
public String getName() { // Getter
return name; // 상자에서 이름 꺼내오기
}
public void setName(String name) { // Setter
this.name = name; // 상자에 새로운 이름 넣기
}
}
[ 설명 ]
[ 역할 ]
@Column(name = "student_name")
private String name;
[ 설명 ]
[ 역할 ]
앞서 엔티티로 테이블을 구성하여 데이터를 관리할 준비를 마쳤다. 하지만 엔티티만으로는 테이블의 데이터를 저장, 조회, 수정, 삭제 등을 할 수 없다. 이와 같이 데이터를 관리하려면 데이터베이스와 연동하는 JPA 리포지터리가 반드시 필요하다.
엔티티가 데이터베이스 테이블을 생성했다면, 리포지터리는 이와 같이 생성된 데이터베이스 테이블의 데이터들을 저장, 조회, 수정, 삭제 등을 할 수 있도록 도와주는 인터페이스이다. 이때 리포지터리는 테이블에 접근하고, 데이터를 관리하는 메서드(예를 들어 findAll, save 등)를 제공한다.
QuestionController를 만들어 위의 사진처럼 코드를 입력한다.
[ 설명 ]
[ 역할 ]

java의 com.mysite.sbb안에 넣은 여러 데이터와 코드들을 사용자가 화면을 통해 볼 수 있게 한다.