Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[게시판 회원 기능] 효오 미션 제출합니다. #90

Merged
merged 125 commits into from
Jul 25, 2019

Conversation

hyojaekim
Copy link

안녕하세요. 2주차 과제를 제출하게 된 효오라고 합니다.

페어를 진행하면서 새로운 것도 많이 배워서 복습하는 겸 혼자 다시 만들어 봤는데
많이 부족하다는 것을 느끼네요....ㅠ

많은 지적을 해주시면 감사하겠습니다!

Deocksoo added 30 commits July 9, 2019 15:36
1. Article이 생성될 때 데이터를 저장하도록 수정하였습니다.
index 페이지를 thymeleaf 템플릿 엔진에서 templates 디렉토리를 base로 하여 찾아줄 수
있도록 수정하였습니다.
Thymeleaf 템플릿 엔진을 통해 초기값을 지정해주도록 수정하였습니다.
1. Template 파일들의 중복되는 코드들을 추출하였습니다.
2. 좌측 상단 배너를 클릭하면 index 페이지로 이동하도록 수정하였습니다.
테스트에 사용할 지역변수들의 이름과 테스트 값을 변경하였습니다. input 값을 한글로
작성하는 경우 encoding 문제로 인해 성공하는 케이스가 실패하는 버그가 발생합니다.
이를 방지하기 위해 영어로 input 값들을 변경하였습니다.
1. 필드 상수명을 변경하였습니다.
2. 메서드 순서를 정리하였습니다.
3. 수정, 삭제할 때 id가 없는 경우에 대한 테스트 케이스들을 추가하였습니다.
@ssosso ssosso self-requested a review July 21, 2019 15:14
Copy link

@ssosso ssosso left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

안녕하세요, 효오~ 쏘쏘입니다:) (저와의 코드리뷰에서는 '님' 어미를 사용하지 않으셔도 되요~)
페어 코딩 이후로 다시 코딩해보는 방법을 취해서 그런지 코드가 깔끔하네요:) 정말 고생하셨어요~
몇 가지 피드백 남기니 확인 부탁드립니다!

src/main/java/techcourse/myblog/domain/Article.java Outdated Show resolved Hide resolved
.orElseThrow(CouldNotFindArticleIdException::new);
}

public void update(Long articleId, ArticleDto articleDto) {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

반환값이 있으면 어떨까요~?

Copy link
Author

@hyojaekim hyojaekim Jul 22, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

궁금한게 있습니다!

업데이트 한 Article에 대해 확인이 필요한 경우가 있을 수 있기 때문에 Article을 반환하는 것이 낫다고 생각해서 반영해 봤는데 혹시 다른 이유가 있나요????

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

말씀하신 의도도 분명히 포함됩니다:) 테스트할 때도 반환값이 있는게 더 좋지 않을까요~?

articleRepository.deleteById(articleId);
}

public void setActionOfArticle(Model model, String actionRoute, String formMethod) {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

반환값이 있으면 어떨까요~?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

다른 메서들중에서도 반환형식이 void인 것은 반환값이 있도록 변경해보면 어떨까요~?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

게시물을 새로 작성할 때와 게시물을 수정할 때에 Form action과 method를 달리 해야해서
Model에 Form action과 method를 때에 따라 넣어주려고 메서드를 분리했습니다.

이러한 행동을 하는 메소드에도 반환 값이 있어야 하는지 궁금합니다.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

상기 코멘트에서 답변했던 바와 같습니다:) 메서드를 설계할 때는 반환값이 있는 메서드를 기본으로 하는 것이 좋습니다:) 그리고 다시 보니 해당 메서드는 controller에 있어야 할 것 같은데 어떻게 생각하시나요~?

Article findArticle = articleService.findArticleById(articleId);
model.addAttribute("article", findArticle);
return "article";
} catch (CouldNotFindArticleIdException e) {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ControllerAdvice를 만들어 처리하면 어떨까요~?

src/test/java/techcourse/myblog/domain/ArticleTest.java Outdated Show resolved Hide resolved
hyojaekim added 13 commits July 22, 2019 15:47
- Article이 ArticleDTO의 존재를 모르도록 파라미터를 변경하였습니다.
- User의 DTO의 존재를 모르도록 파라미터를 변경하였습니다.
- User에게 패스워드가 같은지 물어보고 체크를 한다.
- Optional을 보내지 말고 orElseThrow를 통해 처리를 한다.
- @Valid에 대한 Exception을 제거하였습니다.
Copy link

@ssosso ssosso left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

효오~ 안녕하세요:) 작성해주신 코드 확인했어요~
부족했던 기능도 많이 채워넣으셨네요:) 고생하셨습니다~
몇 가지 코멘트 남겼으니 확인부탁드리며, 이번 단계는 이만 마무리하겠습니다:)

@ssosso ssosso merged commit 68dd4dc into woowacourse:hyojaekim Jul 25, 2019
vsh123 pushed a commit to hyojaekim/jwp-blog that referenced this pull request Aug 6, 2019
* [DOCS] 해야될 일 목록을 업로드합니다

* [DOCS] 기능 목록을 업데이트합니다

* [ADD] 프로젝트에 필요한 의존성을 추가합니다

* [ADD] Article과 ArticleRepository 도메인 객체를 추가합니다

* [TEST] ArticleRepository 테스트에 주석을 추가합니다

* [FIX] app.css 오류 코드를 수정합니다

* [ADD] 게시글 작성 후 작성된 게시글을 보여주는 기능을 추가합니다

1. Article이 생성될 때 데이터를 저장하도록 수정하였습니다.

* [ADD] IndexController를 추가합니다

index 페이지를 thymeleaf 템플릿 엔진에서 templates 디렉토리를 base로 하여 찾아줄 수
있도록 수정하였습니다.

* [ADD] 메인 페이지 게시글 목록 조회 기능을 추가하였습니다

* [ADD] 저장한 게시물을 조회하는 기능을 구현합니다

* [REFACTOR] ArticleRepository find 메소드 리팩토링

* [REFACTOR] article.html css, js 경로 수정하였습니다

* [ADD] HellowWordController 실습 파일을 업로드합니다

* [TEST] IndexController에서 사용하지 않는 라이브러리를 제거합니다

* [ADD] 게시글 수정 및 해당 페이지로 이동하는 기능을 추가하였습니다

* [REFACTOR] 컨벤션에 따른 수정 및 불필요한 라이브러리를 제거하였습니다

* [ADD] 게시물 update 기능을 추가합니다

* [ADD] 게시글 삭제 기능 구현 하였습니다

* [REFACTOR] Article 클래스의 field 변수를 수정합니다

* [REFACTOR] Custom exception class들을 추가합니다

* [REFACTOR] ArticleController 메서드들의 이름과 순서를 변경합니다

* [REFACTOR] Article.html파일의 script에서 initialValue를 수정합니다

Thymeleaf 템플릿 엔진을 통해 초기값을 지정해주도록 수정하였습니다.

* [DOCS] 기능 목록을 업데이트합니다

* [FIX] Custon Exception의 접근제어자를 변경합니다

* [REFACTOR] Template 파일들을 리펙토링합니다

1. Template 파일들의 중복되는 코드들을 추출하였습니다.
2. 좌측 상단 배너를 클릭하면 index 페이지로 이동하도록 수정하였습니다.

* [TEST] ArticleControllerTest의 articlePost메서드를 리펙토링 합니다

테스트에 사용할 지역변수들의 이름과 테스트 값을 변경하였습니다. input 값을 한글로
작성하는 경우 encoding 문제로 인해 성공하는 케이스가 실패하는 버그가 발생합니다.
이를 방지하기 위해 영어로 input 값들을 변경하였습니다.

* [TEST] 몇몇 Test 클래스들의 어미를 Tests에서 Test로 변경합니다

* [TEST] 불필요한 MyblogApplicationTest를 제거합니다

* [REFACTOR] ArticleRepositoryTest를 리펙토링 합니다

1. 필드 상수명을 변경하였습니다.
2. 메서드 순서를 정리하였습니다.
3. 수정, 삭제할 때 id가 없는 경우에 대한 테스트 케이스들을 추가하였습니다.

* [TEST] HelloWorldControllerTest에 DisplayName을 추가합니다

* [REFACTOR] ArticleControllerTest를 리펙토링합니다

1. 필드 상수명을 변경하였습니다
2. 테스트 메서드명을 정리하였습니다.
3. 불필요한 테스트를 제거하였습니다.

* [REFACTOR] ArticleRepository에서 Id를 할당하는 방식을 변경합니다

기존의 AutoIncrement 방식에서, 외부에서 id를 설정해 저장해주는 방식으로 변경하였습니다.

* [ADD] ArticleController에서 수정, 삭제 후 redirect하도록 수정하였습니다

* [FIX] index.html boarder 선이 스크롤 따라 움직이는 버그를 수정하였습니다

* [ADD] 업데이트 된 css 파일을 추가합니다

* [REFACTOR] AriticleController의 의존성을 받는 위치를 변경 하였습니다

* [FIX] coverUrl 부분을 리팩토링 하였습니다

* [REFACTOR] 나머지 html 파일의 경로를 templates 패키지로 이동하였습니다

* [FIX] thymeleaf를 적용한 coverUrl에서 오타를 수정하였습니다

* [REFACTOR] 사용하지 않는 라이브러리를 삭제합니다

* [REFACTOR] 테스트의 내용의 이름을 수정합니다

* [REFACTOR] atomic을 적용해봤습니다

* [REFACTOR] 객체에서 메세지를 보내서 확인하도록 수정하였습니다

* [REFACTOR] 예외를 외부에서 처리하도록 수정하였습니다

* [REFACTOR] 게시글 내용을 DTO로 전달하도록 수정하였습니다

* [REFACTOR] ArticleRepository final로 수정하였습니다

* [REFACTOR] IndexController 주입 방식을 변경하였습니다

기존에는 ArticleController에서 constructor injection, IndexController에서 field injection
모든 컨트롤러를 constructor injection 방식으로 통합하였습니다.

* [REFACTOR] 테스트에서 요청하는 부분을 추상화 하였습니다

* [REFACTOR] 요청하는 부분과 검증하는 부분을 분리하였습니다

* [ADD] ArticleRepository를 적용하였습니다

* [FIX] 아이디를 못찾는 경우 예외처리를 하였습니다

* [REFACTOR] HTML 중복을 제거하였습니다

* [DOCS] README.md 파일을 업데이트 합니다

* [ADD] sighup 페에지에서 유효성 체크하는 기능을 추가하였습니다

* [ADD] User Entity를  추가하였습니다.

- 팩터리 메서드를 적용하였습니다.

* [ADD] UserDto에 유효성 체크 Annotation을 적용하였습니다.

- 이름은 2글자 이상 10글자 이하로 숫자나 특수문자를 허용하지 않는다.
- email 형식을 따른다.
- 패스워드는 8글자 이상 소문자, 대문자, 숫자, 특수문자를 포함해야 한다.

* [REFACTOR] UserDto 상수를 적용하였습니다.

* [ADD] 회원가입 후 Post 요청 하는 기능을 추가하였습니다.

- 로그인을 유지하고 있으면 처음 페이지로 이동한다.
- UserDto에 올바르지 않은 값이 들어오면 예외를 던진다.
- 예외 발견시 회원가입 페이지로 이동

* [ADD] 회원가입 요청 시 이메일 중복을 확인하는 기능을 추가하였습니다.

* [ADD] 회원가입 요청시 유효성 체크하는 기능을 추가하였습니다.

- 중복되는 Email을 입력하는 경우 예외를 던집니다.
- 두 개의 비밀번호가 같지 않은 경우 예외를 던집니다.

* [ADD] 에러 발생 시 경고창을 띄우는 기능을 추가하였습니다.

* [ADD] UserService에서 회원 정보를 저장하는 기능을 분리하였습니다.

* [REFACTOR] 유효성 검사를 위한 패턴을 변경하고 리팩토링 하였습니다.

- 패턴, 사이즈, 오류 메세지를 상수화 하였습니다.

* [REFACTOR] 경로를 지정하고 패턴을 변경하였습니다.

* [REFACTOR] 예외를 분리하도록 수정하였습니다.

* [TEST] 회원가입 요청에 대한 테스트를 추가하였습니다.

* [DOCS] README 파일을 업데이트 하였습니다.

* [ADD] Logger를 사용하기 위해 추가하였습니다.

* [REFACTOR] Article 팩터리 메서드를 적용하였습니다.

* [REFACTOR] User의 팩터리 메서드의 매개변수를 변경하였습니다.

* [REFACTOR] 패키지를 이동하였습니다.

* [REFACTOR] 메서드 순서나 이름을 변경하였습니다.

* [REFACTOR] Test 메서드 순서나 이름을 변경하였습니다.

- ArticleRepository Article update 하는 테스트를 추가하였습니다.

* [ADD] DB에 저장된 회원 목록을 조회하도록 기능을 추가하였습니다.

- user-list.html Thymeleaf을 적용하였습니다.

* [TEST] 회원 목록 페이지에 저장된 정보를 찾는 테스트를 추가하였습니다.

* [REFACTOR] 키값의 이름을 변경하였습니다.

* [DOCS] REAME를 업데이트 하였습니다.

* [ADD] 로그인 기능을 추가하였습니다.

- 존재하지 않는 이메일 입력 시 에러 메세지를 띄웁니다.
- 비밀번호가 맞지 않는 경우 에러 메세지를 띄웁니다.

* [REFACTOR] 공통 기능 분리 및 로그인 유뮤에 따른 상태를 변경하도록 하였습니다.

- 로그인 중일 때 로그인 / 회원가입 요청 시 메인 페이지로 이동합니다.

* [REFACTOR] ArticleRepository 패키지를 이동하였습니다.

* [TEST] UserRepository CRUD 테스트를 추가하였습니다.

- email로 유저를 찾는 테스트를 추가하였습니다.

* [TEST] LoginController 테스트를 추가하였습니다.

- 로그인 성공 시 메인 페이지로 이동하고 우측 상단에 이름이 있는지 확인합니다.
- 세션 Id가 유지 되지가 않아서 세션 id를 받아오는 기능을 추가하였습니다.
- 회원 가입, 로그인, 메인 페이지로 이동하는 로직은 자주 사용하기 때문에 메소드를 분리하였습니다.

* [TEST] 메소드 분리 및 실패하는 테스트를 추가하였습니다.

* [REFACTOR] exception 패키지 위치를 변경하였습니다.

* [DOCS] README 파일을 업데이트 하였습니다.

* [ADD] 로그아웃 기능을 추가하였습니다.

- 로그아웃 시 세션에 있는 로그인 상태를 지우고 메인 페이지로 이동합니다.
- 로그인 상태가 아니라면 로그인 페이지로 이동합니다.

* [TEST] 로그아웃 후 우측 상단에 로그아웃 상태인지 확인하는 테스트를 추가하였습니다.

* [DOCS] README 파일을 업데이트 합니다.

* [DOCS] README 파일을 업데이트 합니다.

* [ADD] 회원 정보를 조회하는 기능을 추가하였습니다.

- 로그인 상태가 아니라면 메인 페이지로 이동합니다.

* [ADD] myapge.html에 유저의 이름과 이메일을 표시하기 위해 Thymeleaf를 적용하였습니다.

* [REFACTOR] 테스트 버그 수정 및 공통된 메서드를 수정하였습니다.

- 전체 테스트 실행 시 로그아웃 테스트를 통과하지 못하여 UserDto, LoginDto를 수정하였습니다.
- 다른 곳에 사용할 수 있도록 정적 메서드를 적용하였습니다.

* [TEST] 회원 정보 페이지에 대한 테스트를 적용하였습니다.

- 해당 페이지에 유저의 이름과 이메일을 확인합니다.

* [ADD] 회원 정보 수정 페이지로 이동하는 기능을 추가하였습니다.

- 로그인 중이 아니라면 메인 페이지로 이동합니다.

* [ADD] 회원 수정 페이지로 이동하도록 수정하였습니다.

* [DOCS] README 파일을 업데이트 합니다.

* [ADD] 탈퇴 버튼을 추가하였습니다.

* [ADD] 유저의 정보를 업데이트 하는 기능을 추가하였습니다.

- UserUpdateDto에서 이름에 대해 유효성을 검증하는 로직을 추가하였습니다.

* [TEST] UserRepository 업데이트 테스트를 추가하였습니다.

* [ADD] 회원 정보를 수정하는 기능을 추가하였습니다.

- 로그인 하지 않고 수정을 요청하면 메인 페이지로 이동합니다.
- 로그인 중인 유저에 대해 정보를 수정합니다.
- 이름에 대해 에러가 발생하면 에러 메세지를 보냅니다.
- 유저 정보 수정을 완료하면 mypage로 이동합니다.

* [FIX] 에러 메세지 버그를 수정하였습니다.

- 수정 요청 Path를 수정하였습니다.

* [REFACTOR] 취소를 누르면 메인 페이지로 이동하게 수정하였습니다.

* [TEST] 회원 수정 시 실패하는 테스트와 성공하는 테스트를 추가하였습니다.

* [REFACTOR] 회원 가입 페이지의 Path를 수정하였습니다.

* [DOCS] README 파일을 업데이트 하였습니다.

* [ADD] 회원 탈퇴 기능을 추가하였습니다.

- 로그인 상태가 아니면 메인 페이지로 이동한다.
- 회원 탈퇴하는 유저의 정보를 DB와 세션 모두 삭제 한다.

* [TEST] 회원 탈퇴에 대한 테스트를 추가합니다.

- 메인 페이지로 이동하는 테스트 메소드를 수정합니다.

* [FIX] 게시글 생성 오류를 수정하였습니다.

* [TEST] 유저의 업데이트 테스트를 추가합니다.

* [REFACTOR] 접근 제어자를 변경합니다.

* Revert "[게시글 생성/조회/수정/삭제] 효오 미션 제출합니다. (woowacourse#36)"

This reverts commit 6034a57.

* [REFACTOR] Article 생성 및 업데이트 하는 방법을 변경하였습니다.

- Article이 ArticleDTO의 존재를 모르도록 파라미터를 변경하였습니다.

* [REFACTOR] User 생성 및 업데이트 하는 방법을 변경하였습니다.

- User의 DTO의 존재를 모르도록 파라미터를 변경하였습니다.

* [REFACTOR] User에게 메시지를 보내서 로그인을 시도하도록 수정하였습니다.

- User에게 패스워드가 같은지 물어보고 체크를 한다.
- Optional을 보내지 말고 orElseThrow를 통해 처리를 한다.

* [REFACTOR] 회원 가입 시 두 개의 패스워드가 유효한지 메시지를 던지도록 수정하였습니다.

- UserDto에 password, passwordConfirm이 같은지 확인한다.

* [REFACTOR] 필요없는 구문을 삭제하였습니다.

* [REFACTOR] 공통된 테스트를 상속을 이용하였습니다.

* [REFACTOR] 게시물을 삭제하고 ID를 리턴 합니다.

* [TEST] 비로그인 후 실패하는 테스트를 추가하였습니다.

* [ADD] 인터셉터를 적용하였습니다.

* [REFACTOR] 게시물 생성 시 비로그인 상태이면 예외를 던지도록 합니다.

* [REFACTOR] 인터셉터를 적용하면서 수정했습니다.

* [REFACTOR] ControllerAdvice를 추가 하였습니다.

- @Valid에 대한 Exception을 제거하였습니다.

* [REFACTOR] 업데이트 시 transactional을 적용하였습니다.

- import를 변경하였습니다.
jihan805 pushed a commit that referenced this pull request Aug 10, 2019
* [게시글 생성/조회/수정/삭제] 올라프 미션 제출합니다. (#29)

* docs : README.md 작성

* feat: 게시글 작성 페이지 이동 구현

* index.html, article-edit.html 파일을 templates 폴더로 이동함

* AriticleController.java: /writing GET요청 처리

Squashed commit of the following:

commit 7fa33210c68665351585da9f8fbc4e2117248a2e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Tue Jul 9 17:26:55 2019 +0900

    docs: TODO 추가

commit d8e14dbdd71112723278e2e312ec46582a131d00
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Tue Jul 9 17:26:17 2019 +0900

    feat: 게시글 작성 페이지 이동

* feat: 게시글 작성 및 추가 기능 구현

* feat: 게시글 목록 조회

commit 9361045bbb8cfc607918c5ed4bda4ceee9aece6f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 10 18:01:03 2019 +0900

    feat: 게시글 목록 조회

* feat: 게시글 조회 기능

Squashed commit of the following:

commit 513b0f9f8dcf8cd2a2810db7d8e82c3efd13b317
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 08:42:08 2019 +0900

    feat: 게시글 조회 기능 구현

commit 55b1b0ea2760d83c12b1cc060e2fa0d03e9d8297
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 08:29:05 2019 +0900

    chore: 절대경로로 변경

    * 외부 리소스 접근 경로 상대경로에서 절대경로로 변경

* feat: 게시글 수정 기능 구현

* feat: 게시글 삭제 기능 구현

Squashed commit of the following:

commit 44fa3af15a2b1b6da8b8229f06a26c315cfa493c
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 14:11:07 2019 +0900

    docs: TODO.md 추가

commit b01f06e590c2b8b42a40c8da36adb01705bfbf7f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 14:01:39 2019 +0900

    refactor: html js부분 중복 제거

commit 51101469f093fd305653c6ed63d5be8aaa69ad24
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:52:07 2019 +0900

    fix: article-edit.html 나가기 버튼 오류 수정

commit 23ba3a40a3c427248c4ee8f1bdbf16a1119d1798
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:49:11 2019 +0900

    feat: 게시글 삭제 시 redirect

commit 70d5a2e9232f2baea54bbe3ac554696b89ad9149
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:29:53 2019 +0900

    feat: 게시글 삭제 후 남은 게시글 보여주기

commit 184ddc4acf42506d2f46d48eb4e79b4dae6173ce
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:21:21 2019 +0900

    refactor: 들여쓰기

commit 4e8b30e3dfa72ed4babfba2f4e3ffd9b571f8787
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:16:19 2019 +0900

    feat: 게시글 삭제 기능 구현

commit 5111c6e2d26adec5799a4546a3100a0e3f874835
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 01:43:53 2019 +0900

    refactor: Article 클래스 id 필드 추가

commit 2e71b5f6a5010bbe5cecca9a4f26616f53788450
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 01:42:44 2019 +0900

    chore: html 중복 제거

commit b88d426c35f40c12d1e069b9480789d0c7937563
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 16:54:29 2019 +0900

    refactor: UI 버그 수정

    * app.css, index.html 수정

commit 7c80edaf0f4452a5f610487086c466ce0da8292a
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 16:49:31 2019 +0900

    docs: 게시글 삭제 기능 TODO 작성

* refactor: InvalidArticleException 로 Article 예외 처리

* refactor : 피드백 반영

Squashed commit of the following:

commit 3502b6bbf150aeae8ca67faba9651d1deabf84f1
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:23:34 2019 +0900

    refactor: field injection에서 constructor injection으로 수정

commit 9cdcde68f444456e08d71853fc07a0861536048e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:14:39 2019 +0900

    refactor: ArticleController 클래스 PathVariable 자료형 int로 통일

commit 72a7c41d5e089876c4a126c44bf2f369c6602bf3
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:11:47 2019 +0900

    refactor: 테스트 코드 중복 제거

commit 71766eb20f8af1c57ad2f6453da7d0cedaec8b54
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 12:34:41 2019 +0900

    refactor: Article 클래스에서 게시물 수정 메서드(update) 구현

commit ff7daec7c63371a5f0901c9dedd25924dd998cee
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 12:33:23 2019 +0900

    docs: 피드백 관련 TODO.md 작성

* Squashed commit of the following:

commit b3fb54bf50e96576f2e6c2ad68da298c291d0a2e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 15:03:43 2019 +0900

    refactor: 수정한 게시글 내용 확인 테스트를 추가

commit da8e30ca3f936c90c1a0d49f9d84cbd64142d42b
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:53:12 2019 +0900

    refactor: test 코드 중복 제거

commit 5b1abb3a6ca22e256256ebbc475ac80437d9166e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:48:01 2019 +0900

    refactor: html 중복제거

commit 805f23d18afe93a0b327a8abbb9745ad0ff551ae
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:44:51 2019 +0900

    refactor: ArticleRepository 클래스의 find 메서드 findById 로 메서드명 변경

commit b4ebb395c7f166f685bcb819e43b1222de5c1ca5
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:42:20 2019 +0900

    refactor: ArticleDto에 toArticle 메서드를 구현

commit 8ad5c7f015098e682556ad578626d6b4a0795532
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:41:29 2019 +0900

    refactor: 테스트 코드 수정

    * ArticleNotFoundException 적용

commit 7eb3c5f3dbfa8aba6b30b80c337ffa104e96b36f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:37:21 2019 +0900

    refactor: ArticleNotFoundException 추가

commit 0bd73b3de30c220e2e9b869f9e525d0da5070759
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:35:48 2019 +0900

    refactor: build.gradle 컨벤션, 테스트 실패 부분 통과하도록 수정

* [게시판 회원 기능] 올라프 미션 제출합니다 (#64)

* docs : README.md 작성

* feat: 게시글 작성 페이지 이동 구현

* index.html, article-edit.html 파일을 templates 폴더로 이동함

* AriticleController.java: /writing GET요청 처리

Squashed commit of the following:

commit 7fa33210c68665351585da9f8fbc4e2117248a2e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Tue Jul 9 17:26:55 2019 +0900

    docs: TODO 추가

commit d8e14dbdd71112723278e2e312ec46582a131d00
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Tue Jul 9 17:26:17 2019 +0900

    feat: 게시글 작성 페이지 이동

* feat: 게시글 작성 및 추가 기능 구현

* feat: 게시글 목록 조회

commit 9361045bbb8cfc607918c5ed4bda4ceee9aece6f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 10 18:01:03 2019 +0900

    feat: 게시글 목록 조회

* feat: 게시글 조회 기능

Squashed commit of the following:

commit 513b0f9f8dcf8cd2a2810db7d8e82c3efd13b317
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 08:42:08 2019 +0900

    feat: 게시글 조회 기능 구현

commit 55b1b0ea2760d83c12b1cc060e2fa0d03e9d8297
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 08:29:05 2019 +0900

    chore: 절대경로로 변경

    * 외부 리소스 접근 경로 상대경로에서 절대경로로 변경

* feat: 게시글 수정 기능 구현

* feat: 게시글 삭제 기능 구현

Squashed commit of the following:

commit 44fa3af15a2b1b6da8b8229f06a26c315cfa493c
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 14:11:07 2019 +0900

    docs: TODO.md 추가

commit b01f06e590c2b8b42a40c8da36adb01705bfbf7f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 14:01:39 2019 +0900

    refactor: html js부분 중복 제거

commit 51101469f093fd305653c6ed63d5be8aaa69ad24
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:52:07 2019 +0900

    fix: article-edit.html 나가기 버튼 오류 수정

commit 23ba3a40a3c427248c4ee8f1bdbf16a1119d1798
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:49:11 2019 +0900

    feat: 게시글 삭제 시 redirect

commit 70d5a2e9232f2baea54bbe3ac554696b89ad9149
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:29:53 2019 +0900

    feat: 게시글 삭제 후 남은 게시글 보여주기

commit 184ddc4acf42506d2f46d48eb4e79b4dae6173ce
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:21:21 2019 +0900

    refactor: 들여쓰기

commit 4e8b30e3dfa72ed4babfba2f4e3ffd9b571f8787
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:16:19 2019 +0900

    feat: 게시글 삭제 기능 구현

commit 5111c6e2d26adec5799a4546a3100a0e3f874835
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 01:43:53 2019 +0900

    refactor: Article 클래스 id 필드 추가

commit 2e71b5f6a5010bbe5cecca9a4f26616f53788450
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 01:42:44 2019 +0900

    chore: html 중복 제거

commit b88d426c35f40c12d1e069b9480789d0c7937563
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 16:54:29 2019 +0900

    refactor: UI 버그 수정

    * app.css, index.html 수정

commit 7c80edaf0f4452a5f610487086c466ce0da8292a
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 16:49:31 2019 +0900

    docs: 게시글 삭제 기능 TODO 작성

* refactor: InvalidArticleException 로 Article 예외 처리

* refactor : 피드백 반영

Squashed commit of the following:

commit 3502b6bbf150aeae8ca67faba9651d1deabf84f1
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:23:34 2019 +0900

    refactor: field injection에서 constructor injection으로 수정

commit 9cdcde68f444456e08d71853fc07a0861536048e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:14:39 2019 +0900

    refactor: ArticleController 클래스 PathVariable 자료형 int로 통일

commit 72a7c41d5e089876c4a126c44bf2f369c6602bf3
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:11:47 2019 +0900

    refactor: 테스트 코드 중복 제거

commit 71766eb20f8af1c57ad2f6453da7d0cedaec8b54
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 12:34:41 2019 +0900

    refactor: Article 클래스에서 게시물 수정 메서드(update) 구현

commit ff7daec7c63371a5f0901c9dedd25924dd998cee
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 12:33:23 2019 +0900

    docs: 피드백 관련 TODO.md 작성

* Squashed commit of the following:

commit b3fb54bf50e96576f2e6c2ad68da298c291d0a2e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 15:03:43 2019 +0900

    refactor: 수정한 게시글 내용 확인 테스트를 추가

commit da8e30ca3f936c90c1a0d49f9d84cbd64142d42b
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:53:12 2019 +0900

    refactor: test 코드 중복 제거

commit 5b1abb3a6ca22e256256ebbc475ac80437d9166e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:48:01 2019 +0900

    refactor: html 중복제거

commit 805f23d18afe93a0b327a8abbb9745ad0ff551ae
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:44:51 2019 +0900

    refactor: ArticleRepository 클래스의 find 메서드 findById 로 메서드명 변경

commit b4ebb395c7f166f685bcb819e43b1222de5c1ca5
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:42:20 2019 +0900

    refactor: ArticleDto에 toArticle 메서드를 구현

commit 8ad5c7f015098e682556ad578626d6b4a0795532
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:41:29 2019 +0900

    refactor: 테스트 코드 수정

    * ArticleNotFoundException 적용

commit 7eb3c5f3dbfa8aba6b30b80c337ffa104e96b36f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:37:21 2019 +0900

    refactor: ArticleNotFoundException 추가

commit 0bd73b3de30c220e2e9b869f9e525d0da5070759
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:35:48 2019 +0900

    refactor: build.gradle 컨벤션, 테스트 실패 부분 통과하도록 수정

* refactor: Controller 리턴 타입 String에서 ModelAndView로 변경

* refactor: ArticleRepository 클래스의 id 필드 AtomicInteger타입으로 변경

* refactor: ArticleControllerTests 리팩토링

* refactor: H2 DB를 사용하도록 수정

* docs: README.md 회원 등록/조회 내용 작성

* docs: TODO.md 회원 등록/조회 내용 작성

* refactor: Controller 분리

RequestMapping 어노테이션 활용

* docs: 게시글 관련 기능 TODO.md 작성

* chore: MySQL 적용

* refactor: html 리팩터링

* Squashed commit of the following:

commit 12f5dd899e4c7d9ae1f343354ac676053e104c40
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:53:00 2019 +0900

    feat: 회원 조회 기능 구현

commit ca6e79b27d71319f8ac7ba9c5064c35952c3ec5b
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:51:10 2019 +0900

    docs: 테스트 관련 todo 추가

commit 5e526558556d32f2668e318bf46e6c269e010b3a
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:44:48 2019 +0900

    docs: 회원가입 TODO 추가

commit b894e540c9cd36b5ddf47e5be057ee0ead8557bf
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:39:56 2019 +0900

    feat: 회원 가입 입력 정보 validation 구현

commit 224106abfdb871127d558d6c9fc78c33b1895e7d
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:11:40 2019 +0900

    refactor: 어노테이션 기반 Validation 으로 수정

commit 62348ce5a89dac0a2bcdfc558a41ce05077dc983
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:09:17 2019 +0900

    docs: TODO.md 회원 가입 규칙 수정

commit 5e2d29fed1b3b61f82d952132a0cbfd21d1ce755
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:35:57 2019 +0900

    feat: 회원 등록 기능 구현

commit 63831508990f975324bde991cbc9eb2e1a9f56c8
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:34:00 2019 +0900

    refactor: 패키지 구조 변경

* feat: 회원 등록/조회 기능 구현

Squashed commit of the following:

commit 12f5dd899e4c7d9ae1f343354ac676053e104c40
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:53:00 2019 +0900

    feat: 회원 조회 기능 구현

commit ca6e79b27d71319f8ac7ba9c5064c35952c3ec5b
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:51:10 2019 +0900

    docs: 테스트 관련 todo 추가

commit 5e526558556d32f2668e318bf46e6c269e010b3a
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:44:48 2019 +0900

    docs: 회원가입 TODO 추가

commit b894e540c9cd36b5ddf47e5be057ee0ead8557bf
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:39:56 2019 +0900

    feat: 회원 가입 입력 정보 validation 구현

commit 224106abfdb871127d558d6c9fc78c33b1895e7d
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:11:40 2019 +0900

    refactor: 어노테이션 기반 Validation 으로 수정

commit 62348ce5a89dac0a2bcdfc558a41ce05077dc983
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:09:17 2019 +0900

    docs: TODO.md 회원 가입 규칙 수정

commit 5e2d29fed1b3b61f82d952132a0cbfd21d1ce755
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:35:57 2019 +0900

    feat: 회원 등록 기능 구현

commit 63831508990f975324bde991cbc9eb2e1a9f56c8
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:34:00 2019 +0900

    refactor: 패키지 구조 변경

* chore: application.properties 파일 적용

* refactor: update 로직 수정

* feat: 회원 목록 조회를 위해 user-list.html

* feat: 회원 등록 규칙 위반 시 사용자에게 알림 기능 구현

* docs: 로그인 기능 README.md

* docs: 로그인 기능 TODO.md 작성

* feat: 로그인 구현

* feat: 로그인 시 사용자 이름 띄우기 구현

* refactor: html 중복 제거

* feat: 로그아웃 기능 구현

* feat: 로그인 한 유저 redirect 구현

* docs: 회원 수정/탈퇴 기능 README.md 작성

* docs: 회원 수정/탈퇴 기능 todo 작성

* feat: 회원 정보 수정 기능 구현

* feat: 회원 정보 탈퇴 기능 구현

* feat: 비밀 번호 확인 기능 구현

* fix: 회원 가입시 Validation 버그

* refactor: test 코드 중복 제거

* test: 로그인 상황에 대한 테스트 코드 추가 및 리팩터링

* refactor: controller, tests

Squashed commit of the following:

commit 262de58d826c152faae16d2cef260975337d1b96
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 04:25:50 2019 +0900

    refactor: 중복 제거

commit dadf1740c628018ffff834bb0502ee5c1442b151
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 04:14:12 2019 +0900

    refactor: Interceptor로 controller 중복 제거

commit 2d79e1073f1d479417718d78b67f07faebf0dae4
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 03:03:15 2019 +0900

    refactor: html 중복 제거

commit dc26841c605d30bc78a7c43ddb5993762cf4bd34
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:41:59 2019 +0900

    test: 테스트 코드 추가 및 리팩터링

commit dc05ce5fc914f40af63424d27f53ee84945286f2
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:41:19 2019 +0900

    fix: request에 세션 설정 안된 경우 처리

commit 27181a9d10ff923f9c985172b066b4aadbdf46c6
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:40:10 2019 +0900

    refactor: redirect 수행하도록 변경

commit ea1d50614ad5b046ae70f5fff61dc47e61a2b349
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:38:36 2019 +0900

    refactor: 에러메세지 상수화

* refactor: update 메서드의 반환값 추가

* refactor: test DB mysql에서 h2로 변경

* refactor: User 클래스 email필드, name 필드 null 체크 추가

* refactor: Optional의 메서드를 활용하여 리턴

* refactor: 중복 로직 메서드로 추출

* fix: 회원 탈퇴 기능 버그 수정

* refactor: @ParameterizedTest로 중복 코드 제거

* fix: 회원 탈퇴 테스트 코드 버그 수정

* refactor: matchPassword 메서드에서 authenticate 메서드로 변경

* refactor: repository 패키지 domain 안으로 이동

* fix: 정규표현식의 특수문자 추가

* refactor: UserService 구현

* add: User 클래스 toString 메서드 추가, 불필요한 테스트 코드 제거

* [게시판 회원 기능] 올라프 미션 제출 합니다. (#99)

* docs : README.md 작성

* feat: 게시글 작성 페이지 이동 구현

* index.html, article-edit.html 파일을 templates 폴더로 이동함

* AriticleController.java: /writing GET요청 처리

Squashed commit of the following:

commit 7fa33210c68665351585da9f8fbc4e2117248a2e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Tue Jul 9 17:26:55 2019 +0900

    docs: TODO 추가

commit d8e14dbdd71112723278e2e312ec46582a131d00
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Tue Jul 9 17:26:17 2019 +0900

    feat: 게시글 작성 페이지 이동

* feat: 게시글 작성 및 추가 기능 구현

* feat: 게시글 목록 조회

commit 9361045bbb8cfc607918c5ed4bda4ceee9aece6f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 10 18:01:03 2019 +0900

    feat: 게시글 목록 조회

* feat: 게시글 조회 기능

Squashed commit of the following:

commit 513b0f9f8dcf8cd2a2810db7d8e82c3efd13b317
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 08:42:08 2019 +0900

    feat: 게시글 조회 기능 구현

commit 55b1b0ea2760d83c12b1cc060e2fa0d03e9d8297
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 08:29:05 2019 +0900

    chore: 절대경로로 변경

    * 외부 리소스 접근 경로 상대경로에서 절대경로로 변경

* feat: 게시글 수정 기능 구현

* feat: 게시글 삭제 기능 구현

Squashed commit of the following:

commit 44fa3af15a2b1b6da8b8229f06a26c315cfa493c
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 14:11:07 2019 +0900

    docs: TODO.md 추가

commit b01f06e590c2b8b42a40c8da36adb01705bfbf7f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 14:01:39 2019 +0900

    refactor: html js부분 중복 제거

commit 51101469f093fd305653c6ed63d5be8aaa69ad24
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:52:07 2019 +0900

    fix: article-edit.html 나가기 버튼 오류 수정

commit 23ba3a40a3c427248c4ee8f1bdbf16a1119d1798
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:49:11 2019 +0900

    feat: 게시글 삭제 시 redirect

commit 70d5a2e9232f2baea54bbe3ac554696b89ad9149
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:29:53 2019 +0900

    feat: 게시글 삭제 후 남은 게시글 보여주기

commit 184ddc4acf42506d2f46d48eb4e79b4dae6173ce
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:21:21 2019 +0900

    refactor: 들여쓰기

commit 4e8b30e3dfa72ed4babfba2f4e3ffd9b571f8787
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:16:19 2019 +0900

    feat: 게시글 삭제 기능 구현

commit 5111c6e2d26adec5799a4546a3100a0e3f874835
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 01:43:53 2019 +0900

    refactor: Article 클래스 id 필드 추가

commit 2e71b5f6a5010bbe5cecca9a4f26616f53788450
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 01:42:44 2019 +0900

    chore: html 중복 제거

commit b88d426c35f40c12d1e069b9480789d0c7937563
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 16:54:29 2019 +0900

    refactor: UI 버그 수정

    * app.css, index.html 수정

commit 7c80edaf0f4452a5f610487086c466ce0da8292a
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 16:49:31 2019 +0900

    docs: 게시글 삭제 기능 TODO 작성

* refactor: InvalidArticleException 로 Article 예외 처리

* refactor : 피드백 반영

Squashed commit of the following:

commit 3502b6bbf150aeae8ca67faba9651d1deabf84f1
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:23:34 2019 +0900

    refactor: field injection에서 constructor injection으로 수정

commit 9cdcde68f444456e08d71853fc07a0861536048e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:14:39 2019 +0900

    refactor: ArticleController 클래스 PathVariable 자료형 int로 통일

commit 72a7c41d5e089876c4a126c44bf2f369c6602bf3
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:11:47 2019 +0900

    refactor: 테스트 코드 중복 제거

commit 71766eb20f8af1c57ad2f6453da7d0cedaec8b54
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 12:34:41 2019 +0900

    refactor: Article 클래스에서 게시물 수정 메서드(update) 구현

commit ff7daec7c63371a5f0901c9dedd25924dd998cee
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 12:33:23 2019 +0900

    docs: 피드백 관련 TODO.md 작성

* Squashed commit of the following:

commit b3fb54bf50e96576f2e6c2ad68da298c291d0a2e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 15:03:43 2019 +0900

    refactor: 수정한 게시글 내용 확인 테스트를 추가

commit da8e30ca3f936c90c1a0d49f9d84cbd64142d42b
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:53:12 2019 +0900

    refactor: test 코드 중복 제거

commit 5b1abb3a6ca22e256256ebbc475ac80437d9166e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:48:01 2019 +0900

    refactor: html 중복제거

commit 805f23d18afe93a0b327a8abbb9745ad0ff551ae
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:44:51 2019 +0900

    refactor: ArticleRepository 클래스의 find 메서드 findById 로 메서드명 변경

commit b4ebb395c7f166f685bcb819e43b1222de5c1ca5
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:42:20 2019 +0900

    refactor: ArticleDto에 toArticle 메서드를 구현

commit 8ad5c7f015098e682556ad578626d6b4a0795532
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:41:29 2019 +0900

    refactor: 테스트 코드 수정

    * ArticleNotFoundException 적용

commit 7eb3c5f3dbfa8aba6b30b80c337ffa104e96b36f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:37:21 2019 +0900

    refactor: ArticleNotFoundException 추가

commit 0bd73b3de30c220e2e9b869f9e525d0da5070759
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:35:48 2019 +0900

    refactor: build.gradle 컨벤션, 테스트 실패 부분 통과하도록 수정

* refactor: Controller 리턴 타입 String에서 ModelAndView로 변경

* refactor: ArticleRepository 클래스의 id 필드 AtomicInteger타입으로 변경

* refactor: ArticleControllerTests 리팩토링

* refactor: H2 DB를 사용하도록 수정

* docs: README.md 회원 등록/조회 내용 작성

* docs: TODO.md 회원 등록/조회 내용 작성

* refactor: Controller 분리

RequestMapping 어노테이션 활용

* docs: 게시글 관련 기능 TODO.md 작성

* chore: MySQL 적용

* refactor: html 리팩터링

* Squashed commit of the following:

commit 12f5dd899e4c7d9ae1f343354ac676053e104c40
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:53:00 2019 +0900

    feat: 회원 조회 기능 구현

commit ca6e79b27d71319f8ac7ba9c5064c35952c3ec5b
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:51:10 2019 +0900

    docs: 테스트 관련 todo 추가

commit 5e526558556d32f2668e318bf46e6c269e010b3a
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:44:48 2019 +0900

    docs: 회원가입 TODO 추가

commit b894e540c9cd36b5ddf47e5be057ee0ead8557bf
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:39:56 2019 +0900

    feat: 회원 가입 입력 정보 validation 구현

commit 224106abfdb871127d558d6c9fc78c33b1895e7d
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:11:40 2019 +0900

    refactor: 어노테이션 기반 Validation 으로 수정

commit 62348ce5a89dac0a2bcdfc558a41ce05077dc983
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:09:17 2019 +0900

    docs: TODO.md 회원 가입 규칙 수정

commit 5e2d29fed1b3b61f82d952132a0cbfd21d1ce755
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:35:57 2019 +0900

    feat: 회원 등록 기능 구현

commit 63831508990f975324bde991cbc9eb2e1a9f56c8
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:34:00 2019 +0900

    refactor: 패키지 구조 변경

* feat: 회원 등록/조회 기능 구현

Squashed commit of the following:

commit 12f5dd899e4c7d9ae1f343354ac676053e104c40
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:53:00 2019 +0900

    feat: 회원 조회 기능 구현

commit ca6e79b27d71319f8ac7ba9c5064c35952c3ec5b
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:51:10 2019 +0900

    docs: 테스트 관련 todo 추가

commit 5e526558556d32f2668e318bf46e6c269e010b3a
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:44:48 2019 +0900

    docs: 회원가입 TODO 추가

commit b894e540c9cd36b5ddf47e5be057ee0ead8557bf
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:39:56 2019 +0900

    feat: 회원 가입 입력 정보 validation 구현

commit 224106abfdb871127d558d6c9fc78c33b1895e7d
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:11:40 2019 +0900

    refactor: 어노테이션 기반 Validation 으로 수정

commit 62348ce5a89dac0a2bcdfc558a41ce05077dc983
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:09:17 2019 +0900

    docs: TODO.md 회원 가입 규칙 수정

commit 5e2d29fed1b3b61f82d952132a0cbfd21d1ce755
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:35:57 2019 +0900

    feat: 회원 등록 기능 구현

commit 63831508990f975324bde991cbc9eb2e1a9f56c8
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:34:00 2019 +0900

    refactor: 패키지 구조 변경

* chore: application.properties 파일 적용

* refactor: update 로직 수정

* feat: 회원 목록 조회를 위해 user-list.html

* feat: 회원 등록 규칙 위반 시 사용자에게 알림 기능 구현

* docs: 로그인 기능 README.md

* docs: 로그인 기능 TODO.md 작성

* feat: 로그인 구현

* feat: 로그인 시 사용자 이름 띄우기 구현

* refactor: html 중복 제거

* feat: 로그아웃 기능 구현

* feat: 로그인 한 유저 redirect 구현

* docs: 회원 수정/탈퇴 기능 README.md 작성

* docs: 회원 수정/탈퇴 기능 todo 작성

* feat: 회원 정보 수정 기능 구현

* feat: 회원 정보 탈퇴 기능 구현

* feat: 비밀 번호 확인 기능 구현

* fix: 회원 가입시 Validation 버그

* refactor: test 코드 중복 제거

* test: 로그인 상황에 대한 테스트 코드 추가 및 리팩터링

* refactor: controller, tests

Squashed commit of the following:

commit 262de58d826c152faae16d2cef260975337d1b96
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 04:25:50 2019 +0900

    refactor: 중복 제거

commit dadf1740c628018ffff834bb0502ee5c1442b151
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 04:14:12 2019 +0900

    refactor: Interceptor로 controller 중복 제거

commit 2d79e1073f1d479417718d78b67f07faebf0dae4
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 03:03:15 2019 +0900

    refactor: html 중복 제거

commit dc26841c605d30bc78a7c43ddb5993762cf4bd34
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:41:59 2019 +0900

    test: 테스트 코드 추가 및 리팩터링

commit dc05ce5fc914f40af63424d27f53ee84945286f2
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:41:19 2019 +0900

    fix: request에 세션 설정 안된 경우 처리

commit 27181a9d10ff923f9c985172b066b4aadbdf46c6
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:40:10 2019 +0900

    refactor: redirect 수행하도록 변경

commit ea1d50614ad5b046ae70f5fff61dc47e61a2b349
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:38:36 2019 +0900

    refactor: 에러메세지 상수화

* refactor: update 메서드의 반환값 추가

* refactor: test DB mysql에서 h2로 변경

* refactor: User 클래스 email필드, name 필드 null 체크 추가

* refactor: Optional의 메서드를 활용하여 리턴

* refactor: 중복 로직 메서드로 추출

* fix: 회원 탈퇴 기능 버그 수정

* refactor: @ParameterizedTest로 중복 코드 제거

* fix: 회원 탈퇴 테스트 코드 버그 수정

* refactor: matchPassword 메서드에서 authenticate 메서드로 변경

* refactor: repository 패키지 domain 안으로 이동

* fix: 정규표현식의 특수문자 추가

* refactor: UserService 구현

* add: User 클래스 toString 메서드 추가, 불필요한 테스트 코드 제거

* refactor: User 클래스 입력값 검증 로직 추가

* refactor: ControllerAdvice를 이용하여 에러 핸들링하도록 변경

* refactor: controller 클래스 패키지 이동 및 불필요한 코드 삭제

* test: UserService 테스트 코드

* test: UserDto 테스트 코드 구현

* test: ArticleDto 테스트 코드 작성

* [댓글 기능] 올라프 미션 제출합니다. (#151)

* refactor: entity 기본생성자 접근제어자 private으로 변경

* refactor: UserControllerExceptionHandler 클래스 위치 변경

사용하지 않는 파일 삭제

* refactor: test 코드 리팩터링

* refactor: 상수 접근제어자 추가

* rename: Controller 패키지 이름 변경 -> controller

* refactor: User Service 분리

* refactor: controller test 패키지 수정

* refactor: UserService 및 테스트 리팩터링

* refactor: ArticleReadService, ArticleWriteService 구현

* refactor: ArgumentResolver 구현

* docs: 댓글 기능 README.md 작성

* docs: todo.md 작성

* feat: 게시글 작성자 추가

* feat: Comment entity 구현

* refactor: findByIdAndAuthor 메서드 articleReadService로 이동

* feat: 댓글 생성/조회 기능 구현

* chore: controller test 위치 변경

* feat: 댓글 삭제 기능 구현

* refactor: exception handler 메서드명 변경

* refactor: OnDelete annotation 사용

* feat: 댓글 수정 기능 구현

* refactor: article 페이지 css 수정

* refactor: cascade 옵션 오류 수정

* refactor: BindException 처리 분리

* resolve conflict

* rename: 패키지명 변경

* refactor: 인증 로직 domain 계층으로 이동

* refactor: Repository 클래스 메서드 활용하도록 수정

* refactor: @Lob 활용

* refactor: 사용하지 않는 메서드 제거

* refactor: uri 변경 (comment -> comments)

* refactor: timestamp 필드 추가

* refactor: 에러 메시지 Exception 클래스 안으로 이동

* refactor: Dto의 entity 필드 제거

* refactor: 댓글 삭제 메서드

* refactor: User 유효성 검증 패턴 중복 제거

* refactor: ArgumentResolver

* refactor: config 파일 분리

* refactor: lombok 활용

* refactor: UserWriteService가 UserReadService를 활용하도록 수정

* styles: convention

* refactor: LoginUser -> SessionUser로 변경

* refactor: 에러메시지 중복 제거

* refactor: BindException 처리 방식 수정

* refactor: 파일 위치 변경

* refactor: findByIdAndAuthor 로직 변경

* refactor: LoginController 분리

* refactor: 회원정보 수정, 탈퇴 url 변경

* refactor: url id와 session 정보 비교

* refactor: signup 로직 수정

* refactor: 댓글 수정, 삭제 로직 변경

* refactor: 메서드명 변경 hasSameEmail -> isExist

* fix: 댓글 삭제 bug fix

* test: 테스트 코드 추가 및 refactor

* styles: convention

* styles: convention

* docs: README, TODO 작성 - 댓글 기능 AJAX

* refactor: CommonInterceptor 제거 (html에서 session으로 user접근)

* refactor: 메시지 변경

* feat: 댓글 생성 기능 AJAX로 구현

* test: 댓글 생성 테스트 추가

* feat: 댓글 수정 기능 Ajax로 구현

* refactor: session에서 user 가져오도록 수정

* feat: 댓글 개수 ajax로 구현

* feat: 댓글 보여주기 ajax로 구현

* feat: 댓글 삭제 ajax로 구현

* test: 댓글 목록 요청 테스트

* setting: 로그 설정 추가

* refactor: 로그 메세지 추가

* setting: lombok dependency 설정

* Revert "revert"

This reverts commit 6034a57b9e86613434b8fd2b474b3762ec125027.

* [게시글 생성/조회/수정/삭제] 올라프 미션 제출합니다. (#29)

* docs : README.md 작성

* feat: 게시글 작성 페이지 이동 구현

* index.html, article-edit.html 파일을 templates 폴더로 이동함

* AriticleController.java: /writing GET요청 처리

Squashed commit of the following:

commit 7fa33210c68665351585da9f8fbc4e2117248a2e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Tue Jul 9 17:26:55 2019 +0900

    docs: TODO 추가

commit d8e14dbdd71112723278e2e312ec46582a131d00
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Tue Jul 9 17:26:17 2019 +0900

    feat: 게시글 작성 페이지 이동

* feat: 게시글 작성 및 추가 기능 구현

* feat: 게시글 목록 조회

commit 9361045bbb8cfc607918c5ed4bda4ceee9aece6f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 10 18:01:03 2019 +0900

    feat: 게시글 목록 조회

* feat: 게시글 조회 기능

Squashed commit of the following:

commit 513b0f9f8dcf8cd2a2810db7d8e82c3efd13b317
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 08:42:08 2019 +0900

    feat: 게시글 조회 기능 구현

commit 55b1b0ea2760d83c12b1cc060e2fa0d03e9d8297
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 08:29:05 2019 +0900

    chore: 절대경로로 변경

    * 외부 리소스 접근 경로 상대경로에서 절대경로로 변경

* feat: 게시글 수정 기능 구현

* feat: 게시글 삭제 기능 구현

Squashed commit of the following:

commit 44fa3af15a2b1b6da8b8229f06a26c315cfa493c
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 14:11:07 2019 +0900

    docs: TODO.md 추가

commit b01f06e590c2b8b42a40c8da36adb01705bfbf7f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 14:01:39 2019 +0900

    refactor: html js부분 중복 제거

commit 51101469f093fd305653c6ed63d5be8aaa69ad24
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:52:07 2019 +0900

    fix: article-edit.html 나가기 버튼 오류 수정

commit 23ba3a40a3c427248c4ee8f1bdbf16a1119d1798
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:49:11 2019 +0900

    feat: 게시글 삭제 시 redirect

commit 70d5a2e9232f2baea54bbe3ac554696b89ad9149
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:29:53 2019 +0900

    feat: 게시글 삭제 후 남은 게시글 보여주기

commit 184ddc4acf42506d2f46d48eb4e79b4dae6173ce
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:21:21 2019 +0900

    refactor: 들여쓰기

commit 4e8b30e3dfa72ed4babfba2f4e3ffd9b571f8787
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:16:19 2019 +0900

    feat: 게시글 삭제 기능 구현

commit 5111c6e2d26adec5799a4546a3100a0e3f874835
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 01:43:53 2019 +0900

    refactor: Article 클래스 id 필드 추가

commit 2e71b5f6a5010bbe5cecca9a4f26616f53788450
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 01:42:44 2019 +0900

    chore: html 중복 제거

commit b88d426c35f40c12d1e069b9480789d0c7937563
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 16:54:29 2019 +0900

    refactor: UI 버그 수정

    * app.css, index.html 수정

commit 7c80edaf0f4452a5f610487086c466ce0da8292a
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 16:49:31 2019 +0900

    docs: 게시글 삭제 기능 TODO 작성

* refactor: InvalidArticleException 로 Article 예외 처리

* refactor : 피드백 반영

Squashed commit of the following:

commit 3502b6bbf150aeae8ca67faba9651d1deabf84f1
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:23:34 2019 +0900

    refactor: field injection에서 constructor injection으로 수정

commit 9cdcde68f444456e08d71853fc07a0861536048e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:14:39 2019 +0900

    refactor: ArticleController 클래스 PathVariable 자료형 int로 통일

commit 72a7c41d5e089876c4a126c44bf2f369c6602bf3
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:11:47 2019 +0900

    refactor: 테스트 코드 중복 제거

commit 71766eb20f8af1c57ad2f6453da7d0cedaec8b54
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 12:34:41 2019 +0900

    refactor: Article 클래스에서 게시물 수정 메서드(update) 구현

commit ff7daec7c63371a5f0901c9dedd25924dd998cee
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 12:33:23 2019 +0900

    docs: 피드백 관련 TODO.md 작성

* Squashed commit of the following:

commit b3fb54bf50e96576f2e6c2ad68da298c291d0a2e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 15:03:43 2019 +0900

    refactor: 수정한 게시글 내용 확인 테스트를 추가

commit da8e30ca3f936c90c1a0d49f9d84cbd64142d42b
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:53:12 2019 +0900

    refactor: test 코드 중복 제거

commit 5b1abb3a6ca22e256256ebbc475ac80437d9166e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:48:01 2019 +0900

    refactor: html 중복제거

commit 805f23d18afe93a0b327a8abbb9745ad0ff551ae
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:44:51 2019 +0900

    refactor: ArticleRepository 클래스의 find 메서드 findById 로 메서드명 변경

commit b4ebb395c7f166f685bcb819e43b1222de5c1ca5
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:42:20 2019 +0900

    refactor: ArticleDto에 toArticle 메서드를 구현

commit 8ad5c7f015098e682556ad578626d6b4a0795532
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:41:29 2019 +0900

    refactor: 테스트 코드 수정

    * ArticleNotFoundException 적용

commit 7eb3c5f3dbfa8aba6b30b80c337ffa104e96b36f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:37:21 2019 +0900

    refactor: ArticleNotFoundException 추가

commit 0bd73b3de30c220e2e9b869f9e525d0da5070759
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:35:48 2019 +0900

    refactor: build.gradle 컨벤션, 테스트 실패 부분 통과하도록 수정

* [게시글 생성/조회/수정/삭제] 효오 미션 제출합니다. (#36)

* [DOCS] 해야될 일 목록을 업로드합니다

* [DOCS] 기능 목록을 업데이트합니다

* [ADD] 프로젝트에 필요한 의존성을 추가합니다

* [ADD] Article과 ArticleRepository 도메인 객체를 추가합니다

* [TEST] ArticleRepository 테스트에 주석을 추가합니다

* [FIX] app.css 오류 코드를 수정합니다

* [ADD] 게시글 작성 후 작성된 게시글을 보여주는 기능을 추가합니다

1. Article이 생성될 때 데이터를 저장하도록 수정하였습니다.

* [ADD] IndexController를 추가합니다

index 페이지를 thymeleaf 템플릿 엔진에서 templates 디렉토리를 base로 하여 찾아줄 수
있도록 수정하였습니다.

* [ADD] 메인 페이지 게시글 목록 조회 기능을 추가하였습니다

* [ADD] 저장한 게시물을 조회하는 기능을 구현합니다

* [REFACTOR] ArticleRepository find 메소드 리팩토링

* [REFACTOR] article.html css, js 경로 수정하였습니다

* [ADD] HellowWordController 실습 파일을 업로드합니다

* [TEST] IndexController에서 사용하지 않는 라이브러리를 제거합니다

* [ADD] 게시글 수정 및 해당 페이지로 이동하는 기능을 추가하였습니다

* [REFACTOR] 컨벤션에 따른 수정 및 불필요한 라이브러리를 제거하였습니다

* [ADD] 게시물 update 기능을 추가합니다

* [ADD] 게시글 삭제 기능 구현 하였습니다

* [REFACTOR] Article 클래스의 field 변수를 수정합니다

* [REFACTOR] Custom exception class들을 추가합니다

* [REFACTOR] ArticleController 메서드들의 이름과 순서를 변경합니다

* [REFACTOR] Article.html파일의 script에서 initialValue를 수정합니다

Thymeleaf 템플릿 엔진을 통해 초기값을 지정해주도록 수정하였습니다.

* [DOCS] 기능 목록을 업데이트합니다

* [FIX] Custon Exception의 접근제어자를 변경합니다

* [REFACTOR] Template 파일들을 리펙토링합니다

1. Template 파일들의 중복되는 코드들을 추출하였습니다.
2. 좌측 상단 배너를 클릭하면 index 페이지로 이동하도록 수정하였습니다.

* [TEST] ArticleControllerTest의 articlePost메서드를 리펙토링 합니다

테스트에 사용할 지역변수들의 이름과 테스트 값을 변경하였습니다. input 값을 한글로
작성하는 경우 encoding 문제로 인해 성공하는 케이스가 실패하는 버그가 발생합니다.
이를 방지하기 위해 영어로 input 값들을 변경하였습니다.

* [TEST] 몇몇 Test 클래스들의 어미를 Tests에서 Test로 변경합니다

* [TEST] 불필요한 MyblogApplicationTest를 제거합니다

* [REFACTOR] ArticleRepositoryTest를 리펙토링 합니다

1. 필드 상수명을 변경하였습니다.
2. 메서드 순서를 정리하였습니다.
3. 수정, 삭제할 때 id가 없는 경우에 대한 테스트 케이스들을 추가하였습니다.

* [TEST] HelloWorldControllerTest에 DisplayName을 추가합니다

* [REFACTOR] ArticleControllerTest를 리펙토링합니다

1. 필드 상수명을 변경하였습니다
2. 테스트 메서드명을 정리하였습니다.
3. 불필요한 테스트를 제거하였습니다.

* [REFACTOR] ArticleRepository에서 Id를 할당하는 방식을 변경합니다

기존의 AutoIncrement 방식에서, 외부에서 id를 설정해 저장해주는 방식으로 변경하였습니다.

* [ADD] ArticleController에서 수정, 삭제 후 redirect하도록 수정하였습니다

* [FIX] index.html boarder 선이 스크롤 따라 움직이는 버그를 수정하였습니다

* [ADD] 업데이트 된 css 파일을 추가합니다

* [REFACTOR] AriticleController의 의존성을 받는 위치를 변경 하였습니다

* [FIX] coverUrl 부분을 리팩토링 하였습니다

* [REFACTOR] 나머지 html 파일의 경로를 templates 패키지로 이동하였습니다

* [FIX] thymeleaf를 적용한 coverUrl에서 오타를 수정하였습니다

* [REFACTOR] 사용하지 않는 라이브러리를 삭제합니다

* [REFACTOR] 테스트의 내용의 이름을 수정합니다

* [REFACTOR] atomic을 적용해봤습니다

* [REFACTOR] 객체에서 메세지를 보내서 확인하도록 수정하였습니다

* [REFACTOR] 예외를 외부에서 처리하도록 수정하였습니다

* [REFACTOR] 게시글 내용을 DTO로 전달하도록 수정하였습니다

* [REFACTOR] ArticleRepository final로 수정하였습니다

* [REFACTOR] IndexController 주입 방식을 변경하였습니다

기존에는 ArticleController에서 constructor injection, IndexController에서 field injection
모든 컨트롤러를 constructor injection 방식으로 통합하였습니다.

* [REFACTOR] 테스트에서 요청하는 부분을 추상화 하였습니다

* [REFACTOR] 요청하는 부분과 검증하는 부분을 분리하였습니다

* [게시판 회원 기능] 올라프 미션 제출합니다 (#64)

* docs : README.md 작성

* feat: 게시글 작성 페이지 이동 구현

* index.html, article-edit.html 파일을 templates 폴더로 이동함

* AriticleController.java: /writing GET요청 처리

Squashed commit of the following:

commit 7fa33210c68665351585da9f8fbc4e2117248a2e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Tue Jul 9 17:26:55 2019 +0900

    docs: TODO 추가

commit d8e14dbdd71112723278e2e312ec46582a131d00
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Tue Jul 9 17:26:17 2019 +0900

    feat: 게시글 작성 페이지 이동

* feat: 게시글 작성 및 추가 기능 구현

* feat: 게시글 목록 조회

commit 9361045bbb8cfc607918c5ed4bda4ceee9aece6f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 10 18:01:03 2019 +0900

    feat: 게시글 목록 조회

* feat: 게시글 조회 기능

Squashed commit of the following:

commit 513b0f9f8dcf8cd2a2810db7d8e82c3efd13b317
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 08:42:08 2019 +0900

    feat: 게시글 조회 기능 구현

commit 55b1b0ea2760d83c12b1cc060e2fa0d03e9d8297
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 08:29:05 2019 +0900

    chore: 절대경로로 변경

    * 외부 리소스 접근 경로 상대경로에서 절대경로로 변경

* feat: 게시글 수정 기능 구현

* feat: 게시글 삭제 기능 구현

Squashed commit of the following:

commit 44fa3af15a2b1b6da8b8229f06a26c315cfa493c
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 14:11:07 2019 +0900

    docs: TODO.md 추가

commit b01f06e590c2b8b42a40c8da36adb01705bfbf7f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 14:01:39 2019 +0900

    refactor: html js부분 중복 제거

commit 51101469f093fd305653c6ed63d5be8aaa69ad24
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:52:07 2019 +0900

    fix: article-edit.html 나가기 버튼 오류 수정

commit 23ba3a40a3c427248c4ee8f1bdbf16a1119d1798
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:49:11 2019 +0900

    feat: 게시글 삭제 시 redirect

commit 70d5a2e9232f2baea54bbe3ac554696b89ad9149
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:29:53 2019 +0900

    feat: 게시글 삭제 후 남은 게시글 보여주기

commit 184ddc4acf42506d2f46d48eb4e79b4dae6173ce
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:21:21 2019 +0900

    refactor: 들여쓰기

commit 4e8b30e3dfa72ed4babfba2f4e3ffd9b571f8787
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:16:19 2019 +0900

    feat: 게시글 삭제 기능 구현

commit 5111c6e2d26adec5799a4546a3100a0e3f874835
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 01:43:53 2019 +0900

    refactor: Article 클래스 id 필드 추가

commit 2e71b5f6a5010bbe5cecca9a4f26616f53788450
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 01:42:44 2019 +0900

    chore: html 중복 제거

commit b88d426c35f40c12d1e069b9480789d0c7937563
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 16:54:29 2019 +0900

    refactor: UI 버그 수정

    * app.css, index.html 수정

commit 7c80edaf0f4452a5f610487086c466ce0da8292a
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 16:49:31 2019 +0900

    docs: 게시글 삭제 기능 TODO 작성

* refactor: InvalidArticleException 로 Article 예외 처리

* refactor : 피드백 반영

Squashed commit of the following:

commit 3502b6bbf150aeae8ca67faba9651d1deabf84f1
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:23:34 2019 +0900

    refactor: field injection에서 constructor injection으로 수정

commit 9cdcde68f444456e08d71853fc07a0861536048e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:14:39 2019 +0900

    refactor: ArticleController 클래스 PathVariable 자료형 int로 통일

commit 72a7c41d5e089876c4a126c44bf2f369c6602bf3
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:11:47 2019 +0900

    refactor: 테스트 코드 중복 제거

commit 71766eb20f8af1c57ad2f6453da7d0cedaec8b54
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 12:34:41 2019 +0900

    refactor: Article 클래스에서 게시물 수정 메서드(update) 구현

commit ff7daec7c63371a5f0901c9dedd25924dd998cee
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 12:33:23 2019 +0900

    docs: 피드백 관련 TODO.md 작성

* Squashed commit of the following:

commit b3fb54bf50e96576f2e6c2ad68da298c291d0a2e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 15:03:43 2019 +0900

    refactor: 수정한 게시글 내용 확인 테스트를 추가

commit da8e30ca3f936c90c1a0d49f9d84cbd64142d42b
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:53:12 2019 +0900

    refactor: test 코드 중복 제거

commit 5b1abb3a6ca22e256256ebbc475ac80437d9166e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:48:01 2019 +0900

    refactor: html 중복제거

commit 805f23d18afe93a0b327a8abbb9745ad0ff551ae
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:44:51 2019 +0900

    refactor: ArticleRepository 클래스의 find 메서드 findById 로 메서드명 변경

commit b4ebb395c7f166f685bcb819e43b1222de5c1ca5
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:42:20 2019 +0900

    refactor: ArticleDto에 toArticle 메서드를 구현

commit 8ad5c7f015098e682556ad578626d6b4a0795532
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:41:29 2019 +0900

    refactor: 테스트 코드 수정

    * ArticleNotFoundException 적용

commit 7eb3c5f3dbfa8aba6b30b80c337ffa104e96b36f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:37:21 2019 +0900

    refactor: ArticleNotFoundException 추가

commit 0bd73b3de30c220e2e9b869f9e525d0da5070759
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:35:48 2019 +0900

    refactor: build.gradle 컨벤션, 테스트 실패 부분 통과하도록 수정

* refactor: Controller 리턴 타입 String에서 ModelAndView로 변경

* refactor: ArticleRepository 클래스의 id 필드 AtomicInteger타입으로 변경

* refactor: ArticleControllerTests 리팩토링

* refactor: H2 DB를 사용하도록 수정

* docs: README.md 회원 등록/조회 내용 작성

* docs: TODO.md 회원 등록/조회 내용 작성

* refactor: Controller 분리

RequestMapping 어노테이션 활용

* docs: 게시글 관련 기능 TODO.md 작성

* chore: MySQL 적용

* refactor: html 리팩터링

* Squashed commit of the following:

commit 12f5dd899e4c7d9ae1f343354ac676053e104c40
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:53:00 2019 +0900

    feat: 회원 조회 기능 구현

commit ca6e79b27d71319f8ac7ba9c5064c35952c3ec5b
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:51:10 2019 +0900

    docs: 테스트 관련 todo 추가

commit 5e526558556d32f2668e318bf46e6c269e010b3a
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:44:48 2019 +0900

    docs: 회원가입 TODO 추가

commit b894e540c9cd36b5ddf47e5be057ee0ead8557bf
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:39:56 2019 +0900

    feat: 회원 가입 입력 정보 validation 구현

commit 224106abfdb871127d558d6c9fc78c33b1895e7d
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:11:40 2019 +0900

    refactor: 어노테이션 기반 Validation 으로 수정

commit 62348ce5a89dac0a2bcdfc558a41ce05077dc983
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:09:17 2019 +0900

    docs: TODO.md 회원 가입 규칙 수정

commit 5e2d29fed1b3b61f82d952132a0cbfd21d1ce755
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:35:57 2019 +0900

    feat: 회원 등록 기능 구현

commit 63831508990f975324bde991cbc9eb2e1a9f56c8
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:34:00 2019 +0900

    refactor: 패키지 구조 변경

* feat: 회원 등록/조회 기능 구현

Squashed commit of the following:

commit 12f5dd899e4c7d9ae1f343354ac676053e104c40
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:53:00 2019 +0900

    feat: 회원 조회 기능 구현

commit ca6e79b27d71319f8ac7ba9c5064c35952c3ec5b
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:51:10 2019 +0900

    docs: 테스트 관련 todo 추가

commit 5e526558556d32f2668e318bf46e6c269e010b3a
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:44:48 2019 +0900

    docs: 회원가입 TODO 추가

commit b894e540c9cd36b5ddf47e5be057ee0ead8557bf
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:39:56 2019 +0900

    feat: 회원 가입 입력 정보 validation 구현

commit 224106abfdb871127d558d6c9fc78c33b1895e7d
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:11:40 2019 +0900

    refactor: 어노테이션 기반 Validation 으로 수정

commit 62348ce5a89dac0a2bcdfc558a41ce05077dc983
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:09:17 2019 +0900

    docs: TODO.md 회원 가입 규칙 수정

commit 5e2d29fed1b3b61f82d952132a0cbfd21d1ce755
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:35:57 2019 +0900

    feat: 회원 등록 기능 구현

commit 63831508990f975324bde991cbc9eb2e1a9f56c8
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:34:00 2019 +0900

    refactor: 패키지 구조 변경

* chore: application.properties 파일 적용

* refactor: update 로직 수정

* feat: 회원 목록 조회를 위해 user-list.html

* feat: 회원 등록 규칙 위반 시 사용자에게 알림 기능 구현

* docs: 로그인 기능 README.md

* docs: 로그인 기능 TODO.md 작성

* feat: 로그인 구현

* feat: 로그인 시 사용자 이름 띄우기 구현

* refactor: html 중복 제거

* feat: 로그아웃 기능 구현

* feat: 로그인 한 유저 redirect 구현

* docs: 회원 수정/탈퇴 기능 README.md 작성

* docs: 회원 수정/탈퇴 기능 todo 작성

* feat: 회원 정보 수정 기능 구현

* feat: 회원 정보 탈퇴 기능 구현

* feat: 비밀 번호 확인 기능 구현

* fix: 회원 가입시 Validation 버그

* refactor: test 코드 중복 제거

* test: 로그인 상황에 대한 테스트 코드 추가 및 리팩터링

* refactor: controller, tests

Squashed commit of the following:

commit 262de58d826c152faae16d2cef260975337d1b96
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 04:25:50 2019 +0900

    refactor: 중복 제거

commit dadf1740c628018ffff834bb0502ee5c1442b151
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 04:14:12 2019 +0900

    refactor: Interceptor로 controller 중복 제거

commit 2d79e1073f1d479417718d78b67f07faebf0dae4
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 03:03:15 2019 +0900

    refactor: html 중복 제거

commit dc26841c605d30bc78a7c43ddb5993762cf4bd34
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:41:59 2019 +0900

    test: 테스트 코드 추가 및 리팩터링

commit dc05ce5fc914f40af63424d27f53ee84945286f2
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:41:19 2019 +0900

    fix: request에 세션 설정 안된 경우 처리

commit 27181a9d10ff923f9c985172b066b4aadbdf46c6
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:40:10 2019 +0900

    refactor: redirect 수행하도록 변경

commit ea1d50614ad5b046ae70f5fff61dc47e61a2b349
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:38:36 2019 +0900

    refactor: 에러메세지 상수화

* refactor: update 메서드의 반환값 추가

* refactor: test DB mysql에서 h2로 변경

* refactor: User 클래스 email필드, name 필드 null 체크 추가

* refactor: Optional의 메서드를 활용하여 리턴

* refactor: 중복 로직 메서드로 추출

* fix: 회원 탈퇴 기능 버그 수정

* refactor: @ParameterizedTest로 중복 코드 제거

* fix: 회원 탈퇴 테스트 코드 버그 수정

* refactor: matchPassword 메서드에서 authenticate 메서드로 변경

* refactor: repository 패키지 domain 안으로 이동

* fix: 정규표현식의 특수문자 추가

* refactor: UserService 구현

* add: User 클래스 toString 메서드 추가, 불필요한 테스트 코드 제거

* [게시판 회원 기능] 올라프 미션 제출 합니다. (#99)

* docs : README.md 작성

* feat: 게시글 작성 페이지 이동 구현

* index.html, article-edit.html 파일을 templates 폴더로 이동함

* AriticleController.java: /writing GET요청 처리

Squashed commit of the following:

commit 7fa33210c68665351585da9f8fbc4e2117248a2e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Tue Jul 9 17:26:55 2019 +0900

    docs: TODO 추가

commit d8e14dbdd71112723278e2e312ec46582a131d00
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Tue Jul 9 17:26:17 2019 +0900

    feat: 게시글 작성 페이지 이동

* feat: 게시글 작성 및 추가 기능 구현

* feat: 게시글 목록 조회

commit 9361045bbb8cfc607918c5ed4bda4ceee9aece6f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 10 18:01:03 2019 +0900

    feat: 게시글 목록 조회

* feat: 게시글 조회 기능

Squashed commit of the following:

commit 513b0f9f8dcf8cd2a2810db7d8e82c3efd13b317
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 08:42:08 2019 +0900

    feat: 게시글 조회 기능 구현

commit 55b1b0ea2760d83c12b1cc060e2fa0d03e9d8297
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 08:29:05 2019 +0900

    chore: 절대경로로 변경

    * 외부 리소스 접근 경로 상대경로에서 절대경로로 변경

* feat: 게시글 수정 기능 구현

* feat: 게시글 삭제 기능 구현

Squashed commit of the following:

commit 44fa3af15a2b1b6da8b8229f06a26c315cfa493c
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 14:11:07 2019 +0900

    docs: TODO.md 추가

commit b01f06e590c2b8b42a40c8da36adb01705bfbf7f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 14:01:39 2019 +0900

    refactor: html js부분 중복 제거

commit 51101469f093fd305653c6ed63d5be8aaa69ad24
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:52:07 2019 +0900

    fix: article-edit.html 나가기 버튼 오류 수정

commit 23ba3a40a3c427248c4ee8f1bdbf16a1119d1798
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:49:11 2019 +0900

    feat: 게시글 삭제 시 redirect

commit 70d5a2e9232f2baea54bbe3ac554696b89ad9149
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:29:53 2019 +0900

    feat: 게시글 삭제 후 남은 게시글 보여주기

commit 184ddc4acf42506d2f46d48eb4e79b4dae6173ce
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:21:21 2019 +0900

    refactor: 들여쓰기

commit 4e8b30e3dfa72ed4babfba2f4e3ffd9b571f8787
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 09:16:19 2019 +0900

    feat: 게시글 삭제 기능 구현

commit 5111c6e2d26adec5799a4546a3100a0e3f874835
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 01:43:53 2019 +0900

    refactor: Article 클래스 id 필드 추가

commit 2e71b5f6a5010bbe5cecca9a4f26616f53788450
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Fri Jul 12 01:42:44 2019 +0900

    chore: html 중복 제거

commit b88d426c35f40c12d1e069b9480789d0c7937563
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 16:54:29 2019 +0900

    refactor: UI 버그 수정

    * app.css, index.html 수정

commit 7c80edaf0f4452a5f610487086c466ce0da8292a
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Thu Jul 11 16:49:31 2019 +0900

    docs: 게시글 삭제 기능 TODO 작성

* refactor: InvalidArticleException 로 Article 예외 처리

* refactor : 피드백 반영

Squashed commit of the following:

commit 3502b6bbf150aeae8ca67faba9651d1deabf84f1
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:23:34 2019 +0900

    refactor: field injection에서 constructor injection으로 수정

commit 9cdcde68f444456e08d71853fc07a0861536048e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:14:39 2019 +0900

    refactor: ArticleController 클래스 PathVariable 자료형 int로 통일

commit 72a7c41d5e089876c4a126c44bf2f369c6602bf3
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:11:47 2019 +0900

    refactor: 테스트 코드 중복 제거

commit 71766eb20f8af1c57ad2f6453da7d0cedaec8b54
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 12:34:41 2019 +0900

    refactor: Article 클래스에서 게시물 수정 메서드(update) 구현

commit ff7daec7c63371a5f0901c9dedd25924dd998cee
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 12:33:23 2019 +0900

    docs: 피드백 관련 TODO.md 작성

* Squashed commit of the following:

commit b3fb54bf50e96576f2e6c2ad68da298c291d0a2e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 15:03:43 2019 +0900

    refactor: 수정한 게시글 내용 확인 테스트를 추가

commit da8e30ca3f936c90c1a0d49f9d84cbd64142d42b
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:53:12 2019 +0900

    refactor: test 코드 중복 제거

commit 5b1abb3a6ca22e256256ebbc475ac80437d9166e
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:48:01 2019 +0900

    refactor: html 중복제거

commit 805f23d18afe93a0b327a8abbb9745ad0ff551ae
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:44:51 2019 +0900

    refactor: ArticleRepository 클래스의 find 메서드 findById 로 메서드명 변경

commit b4ebb395c7f166f685bcb819e43b1222de5c1ca5
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:42:20 2019 +0900

    refactor: ArticleDto에 toArticle 메서드를 구현

commit 8ad5c7f015098e682556ad578626d6b4a0795532
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:41:29 2019 +0900

    refactor: 테스트 코드 수정

    * ArticleNotFoundException 적용

commit 7eb3c5f3dbfa8aba6b30b80c337ffa104e96b36f
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:37:21 2019 +0900

    refactor: ArticleNotFoundException 추가

commit 0bd73b3de30c220e2e9b869f9e525d0da5070759
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 14 14:35:48 2019 +0900

    refactor: build.gradle 컨벤션, 테스트 실패 부분 통과하도록 수정

* refactor: Controller 리턴 타입 String에서 ModelAndView로 변경

* refactor: ArticleRepository 클래스의 id 필드 AtomicInteger타입으로 변경

* refactor: ArticleControllerTests 리팩토링

* refactor: H2 DB를 사용하도록 수정

* docs: README.md 회원 등록/조회 내용 작성

* docs: TODO.md 회원 등록/조회 내용 작성

* refactor: Controller 분리

RequestMapping 어노테이션 활용

* docs: 게시글 관련 기능 TODO.md 작성

* chore: MySQL 적용

* refactor: html 리팩터링

* Squashed commit of the following:

commit 12f5dd899e4c7d9ae1f343354ac676053e104c40
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:53:00 2019 +0900

    feat: 회원 조회 기능 구현

commit ca6e79b27d71319f8ac7ba9c5064c35952c3ec5b
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:51:10 2019 +0900

    docs: 테스트 관련 todo 추가

commit 5e526558556d32f2668e318bf46e6c269e010b3a
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:44:48 2019 +0900

    docs: 회원가입 TODO 추가

commit b894e540c9cd36b5ddf47e5be057ee0ead8557bf
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:39:56 2019 +0900

    feat: 회원 가입 입력 정보 validation 구현

commit 224106abfdb871127d558d6c9fc78c33b1895e7d
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:11:40 2019 +0900

    refactor: 어노테이션 기반 Validation 으로 수정

commit 62348ce5a89dac0a2bcdfc558a41ce05077dc983
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:09:17 2019 +0900

    docs: TODO.md 회원 가입 규칙 수정

commit 5e2d29fed1b3b61f82d952132a0cbfd21d1ce755
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:35:57 2019 +0900

    feat: 회원 등록 기능 구현

commit 63831508990f975324bde991cbc9eb2e1a9f56c8
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:34:00 2019 +0900

    refactor: 패키지 구조 변경

* feat: 회원 등록/조회 기능 구현

Squashed commit of the following:

commit 12f5dd899e4c7d9ae1f343354ac676053e104c40
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:53:00 2019 +0900

    feat: 회원 조회 기능 구현

commit ca6e79b27d71319f8ac7ba9c5064c35952c3ec5b
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:51:10 2019 +0900

    docs: 테스트 관련 todo 추가

commit 5e526558556d32f2668e318bf46e6c269e010b3a
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:44:48 2019 +0900

    docs: 회원가입 TODO 추가

commit b894e540c9cd36b5ddf47e5be057ee0ead8557bf
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:39:56 2019 +0900

    feat: 회원 가입 입력 정보 validation 구현

commit 224106abfdb871127d558d6c9fc78c33b1895e7d
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:11:40 2019 +0900

    refactor: 어노테이션 기반 Validation 으로 수정

commit 62348ce5a89dac0a2bcdfc558a41ce05077dc983
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 17:09:17 2019 +0900

    docs: TODO.md 회원 가입 규칙 수정

commit 5e2d29fed1b3b61f82d952132a0cbfd21d1ce755
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:35:57 2019 +0900

    feat: 회원 등록 기능 구현

commit 63831508990f975324bde991cbc9eb2e1a9f56c8
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Wed Jul 17 15:34:00 2019 +0900

    refactor: 패키지 구조 변경

* chore: application.properties 파일 적용

* refactor: update 로직 수정

* feat: 회원 목록 조회를 위해 user-list.html

* feat: 회원 등록 규칙 위반 시 사용자에게 알림 기능 구현

* docs: 로그인 기능 README.md

* docs: 로그인 기능 TODO.md 작성

* feat: 로그인 구현

* feat: 로그인 시 사용자 이름 띄우기 구현

* refactor: html 중복 제거

* feat: 로그아웃 기능 구현

* feat: 로그인 한 유저 redirect 구현

* docs: 회원 수정/탈퇴 기능 README.md 작성

* docs: 회원 수정/탈퇴 기능 todo 작성

* feat: 회원 정보 수정 기능 구현

* feat: 회원 정보 탈퇴 기능 구현

* feat: 비밀 번호 확인 기능 구현

* fix: 회원 가입시 Validation 버그

* refactor: test 코드 중복 제거

* test: 로그인 상황에 대한 테스트 코드 추가 및 리팩터링

* refactor: controller, tests

Squashed commit of the following:

commit 262de58d826c152faae16d2cef260975337d1b96
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 04:25:50 2019 +0900

    refactor: 중복 제거

commit dadf1740c628018ffff834bb0502ee5c1442b151
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 04:14:12 2019 +0900

    refactor: Interceptor로 controller 중복 제거

commit 2d79e1073f1d479417718d78b67f07faebf0dae4
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 03:03:15 2019 +0900

    refactor: html 중복 제거

commit dc26841c605d30bc78a7c43ddb5993762cf4bd34
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:41:59 2019 +0900

    test: 테스트 코드 추가 및 리팩터링

commit dc05ce5fc914f40af63424d27f53ee84945286f2
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:41:19 2019 +0900

    fix: request에 세션 설정 안된 경우 처리

commit 27181a9d10ff923f9c985172b066b4aadbdf46c6
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:40:10 2019 +0900

    refactor: redirect 수행하도록 변경

commit ea1d50614ad5b046ae70f5fff61dc47e61a2b349
Author: school0bhy <house1217@ajou.ac.kr>
Date:   Sun Jul 21 02:38:36 2019 +0900

    refactor: 에러메세지 상수화

* refactor: update 메서드의 반환값 추가

* refactor: test DB mysql에서 h2로 변경

* refactor: User 클래스 email필드, name 필드 null 체크 추가

* refactor: Optional의 메서드를 활용하여 리턴

* refactor: 중복 로직 메서드로 추출

* fix: 회원 탈퇴 기능 버그 수정

* refactor: @ParameterizedTest로 중복 코드 제거

* fix: 회원 탈퇴 테스트 코드 버그 수정

* refactor: matchPassword 메서드에서 authenticate 메서드로 변경

* refactor: repository 패키지 domain 안으로 이동

* fix: 정규표현식의 특수문자 추가

* refactor: UserService 구현

* add: User 클래스 toString 메서드 추가, 불필요한 테스트 코드 제거

* refactor: User 클래스 입력값 검증 로직 추가

* refactor: ControllerAdvice를 이용하여 에러 핸들링하도록 변경

* refactor: controller 클래스 패키지 이동 및 불필요한 코드 삭제

* test: UserService 테스트 코드

* test: UserDto 테스트 코드 구현

* test: ArticleDto 테스트 코드 작성

* [게시판 회원 기능] 효오 미션 제출합니다. (#90)

* [DOCS] 해야될 일 목록을 업로드합니다

* [DOCS] 기능 목록을 업데이트합니다

* [ADD] 프로젝트에 필요한 의존성을 추가합니다

* [ADD] Article과 ArticleRepository 도메인 객체를 추가합니다

* [TEST] ArticleRepository 테스트에 주석을 추가합니다

* [FIX] app.css 오류 코드를 수정합니다

* [ADD] 게시글 작성 후 작성된 게시글을 보여주는 기능을 추가합니다

1. Article이 생성될 때 데이터를 저장하도록 수정하였습니다.

* [ADD] IndexController를 추가합니다

index 페이지를 thymeleaf 템플릿 엔진에서 templates 디렉토리를 base로 하여 찾아줄 수
있도록 수정하였습니다.

* [ADD] 메인 페이지 게시글 목록 조회 기능을 추가하였습니다

* [ADD] 저장한 게시물을 조회하는 기능을 구현합니다

* [REFACTOR] ArticleRepository find 메소드 리팩토링

* [REFACTOR] article.html css, js 경로 수정하였습니다

* [ADD] HellowWordController 실습 파일을 업로드합니다

* [TEST] IndexController에서 사용하지 않는 라이브러리를 제거합니다

* [ADD] 게시글 수정 및 해당 페이지로 이동하는 기능을 추가하였습니다

* [REFACTOR] 컨벤션에 따른 수정 및 불필요한 라이브러리를 제거하였습니다

* [ADD] 게시물 update 기능을 추가합니다

* [ADD] 게시글 삭제 기능 구현 하였습니다

* [REFACTOR] Article 클래스의 field 변수를 수정합니다

* [REFACTOR] Custom exception class들을 추가합니다

* [REFACTOR] ArticleController 메서드들의 이름과 순서를 변경합니다

* [REFACTOR] Article.html파일의 script에서 initialValue를 수정합니다

Thymeleaf 템플릿 엔진을 통해 초기값을 지정해주도록 수정하였습니다.

* [DOCS] 기능 목록을 업데이트합니다

* [FIX] Custon Exception의 접근제어자를 변경합니다

* [REFACTOR] Template 파일들을 리펙토링합니다

1. Template 파일들의 중복되는 코드들을 추출하였습니다.
2. 좌측 상단 배너를 클릭하면 index 페이지로 이동하도록 수정하였습니다.

* [TEST] ArticleControllerTest의 articlePost메서드를 리펙토링 합니다

테스트에 사용할 지역변수들의 이름과 테스트 값을 변경하였습니다. input 값을 한글로
작성하는 경우 encoding 문제로 인해 성공하는 케이스가 실패하는 버그가 발생합니다.
이를 방지하기 위해 영어로 input 값들을 변경하였습니다.

* [TEST] 몇몇 Test 클래스들의 어미를 Tests에서 Test로 변경합니다

* [TEST] 불필요한 MyblogApplicationTest를 제거합니다

* [REFACTOR] ArticleRepositoryTest를 리펙토링 합니다

1. 필드 상수명을 변경하였습니다.
2. 메서드 순서를 정리하였습니다.
3. 수정, 삭제할 때 id가 없는 경우에 대한 테스트 케이스들을 추가하였습니다.

* [TEST] HelloWorldControllerTest에 DisplayName을 추가합니다

* [REFACTOR] ArticleControllerTest를 리펙토링합니다

1. 필드 상수명을 변경하였습니다
2. 테스트 메서드명을 정리하였습니다.
3. 불필요한 테스트를 제거하였습니다.

* [REFACTOR] ArticleRepository에서 Id를 할당하는 방식을 변경합니다

기존의 AutoIncrement 방식에서, 외부에서 id를 설정해 저장해주는 방식으로 변경하였습니다.

* [ADD] ArticleController에서 수정, 삭제 후 redirect하도록 수정하였습니다

* [FIX] index.html boarder 선이 스크롤 따라 움직이는 버그를 수정하였습니다

* [ADD] 업데이트 된 css 파일을 추가합니다

* [REFACTOR] AriticleController의 의존성을 받는 위치를 변경 하였습니다

* [FIX] coverUrl 부분을 리팩토링 하였습니다

* [REFACTOR] 나머지 html 파일의 경로를 templates 패키지로 이동하였습니다

* [FIX] thymeleaf를 적용한 coverUrl에서 오타를 수정하였습니다

* [REFACTOR] 사용하지 않는 라이브러리를 삭제합니다

* [REFACTOR] 테스트의 내용의 이름을 수정합니다

* [REFACTOR] atomic을 적용해봤습니다

* [REFACTOR] 객체에서 메세지를 보내서 확인하도록 수정하였습니다

* [REFACTOR] 예외를 외부에서 처리하도록 수정하였습니다

* [REFACTOR] 게시글 내용을 DTO로 전달하도록 수정하였습니다

* [REFACTOR] ArticleRepository final로 수정하였습니다

* [REFACTOR] IndexController 주입 방식을 변경하였습니다

기존에는 ArticleController에서 constructor injection, IndexController에서 field injection
모든 컨트롤러를 constructor injection 방식으로 통합하였습니다.

* [REFACTOR] 테스트에서 요청하는 부분을 추상화 하였습니다

* [REFACTOR] 요청하는 부분과 검증하는 부분을 분리하였습니다

* [ADD] ArticleRepository를 적용하였습니다

* [FIX] 아이디를 못찾는 경우 예외처리를 하였습니다

* [REFACTOR] HTML 중복을 제거하였습니다

* [DOCS] README.md 파일을 업데이트 합니다

* [ADD] sighup 페에지에서 유효성 체크하는 기능을 추가하였습니다

* [ADD] User Entity를  추가하였습니다.

- 팩터리 메서드를 적용하였습니다.

* [ADD] UserDto에 유효성 체크 Annotation을 적용하였습니다.

- 이름은 2글자 이상 10글자 이하로 숫자나 특수문자를 허용하지 않는다.
- email 형식을 따른다.
- 패스워드는 8글자 이상 소문자, 대문자, 숫자, 특수문자를 포함해야 한다.

* [REFACTOR] UserDto 상수를 적용하였습니다.

* [ADD] 회원가입 후 Post 요청 하는 기능을 추가하였습니다.

- 로그인을 유지하고 있으면 처음 페이지로 이동한다.
- UserDto에 올바르지 않은 값이 들어오면 예외를 던진다.
- 예외 발견시 회원가입 페이지로 이동

* [ADD] 회원가입 요청 시 이메일 중복을 확인하는 기능을 추가하였습니다.

* [ADD] 회원가입 요청시 유효성 체크하는 기능을 추가하였습니다.

- 중복되는 Email을 입력하는 경우 예외를 던집니다.
- 두 개의 비밀번호가 같지 않은 경우 예외를 던집니다.

* [ADD] 에러 발생 시 경고창을 띄우는 기능을 추가하였습니다.

* [ADD] UserService에서 회원 정보를 저장하는 기능을 분리하였습니다.

* [REFACTOR] 유효성 검사를 위한 패턴을 변경하고 리팩토링 하였습니다.

- 패턴, 사이즈, 오류 메세지를 상수화 하였습니다.

* [REFACTOR] 경로를 지정하고 패턴을 변경하였습니다.

* [REFACTOR] 예외를 분리하도록 수정하였습니다.

* [TEST] 회원가입 요청에 대한 테스트를 추가하였습니다.

* [DOCS] README 파일을 업데이트 하였습니다.

* [ADD] Logger를 사용하기 위해 추가하였습니다.

* [REFACTOR] Article 팩터리 메서드를 적용하였습니다.

* [REFACTOR] User의 팩터리 메서드의 매개변수를 변경하였습니다.

* [REFACTOR] 패키지를 이동하였습니다.

* [REFACTOR] 메서드 순서나 이름을 변경하였습니다.

* [REFACTOR] Test 메서드 순서나 이름을 변경하였습니다.

- ArticleRepository Article update 하는 테스트를 추가하…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants