Engineering Note

[스프링 부트 입문 10] 롬복과 리팩토링 본문

Server/Spring

[스프링 부트 입문 10] 롬복과 리팩토링

Software Engineer Kim 2022. 7. 8. 16:49

본 내용은 홍팍 스프링 부트 강좌를 참고하였습니다.

https://www.youtube.com/watch?v=2VYBQ_99RJg&t=9s

Mission

  • 롬복을 활용하여 기존 코드를 리팩토링 하자

롬복을 사용하기 위해서는 build.gradle에 아래 코드를 입력해준다.


dependencies {
   //Lombok adding
   compileOnly 'org.projectlombok:lombok'
   annotationProcessor 'org.projectlombok:lombok'
}

그리고 인텔리제이 plugins에서 lombok을 설치해준다.

Lombok을 이용하면 Constructor(생성자), toString, getter, setter등의 자주 사용하는 메서드들을 어노테이션으로 작성할 수 있다.

아래코드는 ArticleForm과 toString을 리팩토링 한 코드이다. @AllArgsConstructor을 이용하면 생성자를, @ToString를 이용하면 toString을 대체해서 사용할 수 있다.

리팩토링 전

package com.example.boardproject.dto;

import com.example.boardproject.entity.Article;

public class ArticleForm {
    private String title;
    private String content;

    public ArticleForm(String title, String content) {
        this.title = title;
        this.content = content;
    }

    @Override
    public String toString() {
        return "ArticleForm{" +
                "title='" + title + '\'' +
                ", content='" + content + '\'' +
                '}';
    }

    public Article toEntity() {
        return new Article(null,title,content);

리팩토링 후

package com.example.boardproject.dto;

import com.example.boardproject.entity.Article;
import lombok.AllArgsConstructor;
import lombok.ToString;

@AllArgsConstructor
@ToString
public class ArticleForm {
    private String title;
    private String content;


    public Article toEntity() {
        return new Article(null,title,content);
Comments