## 반복주기 5 학습 목표
* 객체 간의 관계 설정(@OneToMany, @ManyToOne 등)
## 강의 순서
* 5-1. 회원과 질문 간의 관계 매핑 및 리팩토링
* 5-2. 질문 상세보기 기능 구현
* 5-3. 질문 수정 기능 구현
* 5-4. 답변 추가 및 답변 목록 기능 구현
* 5-5. 원격 서버에 소스 코드 배포
객체 지향적 설계 user
class Question
package net.slipp.domain;
import java.util.Date;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
@Entity
public class Question {
@Id
@GeneratedValue
private Long id;
private User user;
private String writer;
private String title;
private String contents;
@Temporal(TemporalType.TIMESTAMP)
private Date datetime;
public Question() {
}
public Question(String writer, String title, String contents) {
this.datetime = new Date();
this.writer = writer;
this.title = title;
this.contents = contents;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getWriter() {
return writer;
}
public void setWriter(String writer) {
this.writer = writer;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getContents() {
return contents;
}
public void setContents(String contents) {
this.contents = contents;
}
public Date getDatetime() {
return datetime;
}
public void setDatetime(Date datetime) {
this.datetime = datetime;
}
@Override
public String toString() {
return "Question [id=" + id + ", user=" + user + ", writer=" + writer + ", title=" + title + ", contents="
+ contents + ", datetime=" + datetime + "]";
}
}
class User
package net.slipp.domain;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
@Entity
public class User {
@Id
@GeneratedValue
private Long id;
//널 방지
@Column(nullable=false, length=20)
private String userId;
private String name;
private String email;
private String password;
public User() {
}
public User(String userId, String name, String email, String password) {
super();
this.userId = userId;
this.name = name;
this.email = email;
this.password = password;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public boolean matchPassword(String newPassword){
if(newPassword==null){
return false;
}
return this.password.equals(newPassword);
}
public boolean matchId(Long newId){
if(newId==null){
return false;
}
return this.id.equals(newId);
}
@Override
public String toString() {
return "User [id=" + id + ", userId=" + userId + ", name=" + name + ", email=" + email + ", password="
+ password + "]";
}
}
댓글 ( 4)
댓글 남기기