반응형
프로젝트 기본 설정
- new project - gradle - java 설정 - 프로젝트 이름 설정
- build.gradle파일의 dependencies부분의 내용을 지워준다.
- plugins부분에 플러그인 추가
id 'org.springframework.boot' version '2.4.2' //스프링부트 관련
id 'io.spring.dependency-management' version '1.0.11.RELEASE' //디펜던시 관련
dependencies부분에 사용할 라이브러리 추가
//스프링부트 관련
implementation 'org.springframework.boot:spring-boot-starter-data-rest'
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
//h2 관련(인메모리? 데이터베이스)
runtimeOnly 'com.h2database:h2'
//롬복 라이브러리
annotationProcessor("org.projectlombok:lombok")
compileOnly("org.projectlombok:lombok")
//롬복 에러 발생시 자바버전에 맞는 롬복 버전을 추가로 작성해주면 해결가능하다.
//나의 경우 java18을 사용하는데 1.18.20이었다.
- 플러그인 설치창로 가서 lombok설치하기
- Enable annotation processing 체크
- 자바버젼을 1.7로 해야 추후 정상작동가능하다.
모델구현
- TodoEntity.java
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.persistence.*;
@Data
@Entity
@NoArgsConstructor
@AllArgsConstructor
public class TodoEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column(nullable = false)
private String title;
@Column(name = "todoOrder", nullable = false)
private Long order;
@Column(nullable = false)
private Boolean completed;
}
- TodoRequest.java
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class TodoRequest {
private String title;
private Long order;
private Boolean completed;
}
- TodoResponse.java
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class TodoResponse {
private Long id;
private String title;
private Long order;
private Boolean completed;
private String url;
public TodoResponse(TodoEntity todoEntity){
this.id = todoEntity.getId();
this.title = todoEntity.getTitle();
this.order = todoEntity.getOrder();
this.completed = todoEntity.getCompleted();
this.url = "http://localhost:8080/" + this.id;
}
}
반응형
'JAVA' 카테고리의 다른 글
[JAVA] 인텔리제이 To - do List_컨트롤러 구현 (0) | 2022.08.01 |
---|---|
[JAVA] 인텔리제이 To - do List_레파지터리 & 서비스 구현 (0) | 2022.08.01 |
[JAVA] 인텔리제이 상황별 단축키 (0) | 2022.07.28 |
[JAVA] 인텔리제이 단축키 정리 (0) | 2022.07.27 |
[JAVA] 인텔리제이(IntelliJ) 설치하기 (0) | 2022.07.27 |
댓글