Modify 주석 추가

This commit is contained in:
Daeil Choi
2023-02-06 12:04:50 +09:00
parent 110324776d
commit 3f5f5cbc4b
11 changed files with 52 additions and 3 deletions

View File

@@ -19,17 +19,27 @@ repositories {
}
dependencies {
// spring data jpa
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
// security
implementation 'org.springframework.boot:spring-boot-starter-security'
// 웹 페이지를 쉽게 생성하기 위한 thymeleaf
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
// spring web mvc
implementation 'org.springframework.boot:spring-boot-starter-web'
// Thymeleaf에서 SpringSecurity를 Integration
implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity5'
// lombok
compileOnly 'org.projectlombok:lombok'
// developmentOnly 'org.springframework.boot:spring-boot-devtools'
runtimeOnly 'com.h2database:h2'
annotationProcessor 'org.projectlombok:lombok'
// developmentOnly 'org.springframework.boot:spring-boot-devtools'
// h2
runtimeOnly 'com.h2database:h2'
// starter test
testImplementation 'org.springframework.boot:spring-boot-starter-test'
// security test
testImplementation 'org.springframework.security:spring-security-test'
// junit test
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.0'
}

View File

@@ -3,6 +3,10 @@ package com.example.springsecuritystudy;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* SpringSecurity 학습용 Application
*/
@SpringBootApplication
public class SpringSecurityStudyApplication {

View File

@@ -1,5 +1,8 @@
package com.example.springsecuritystudy.common;
/**
* 이미 등록된 유저를 재등록하려고 할때 발생하는 Exception
*/
public class AlreadyRegisteredUserException extends RuntimeException {
public AlreadyRegisteredUserException(String message) {

View File

@@ -1,5 +1,8 @@
package com.example.springsecuritystudy.common;
/**
* 유저를 찾을 수 없을 때 발생하는 Exception
*/
public class UserNotFoundException extends RuntimeException {
public UserNotFoundException(String message) {

View File

@@ -12,6 +12,9 @@ import com.example.springsecuritystudy.user.UserService;
import lombok.RequiredArgsConstructor;
/**
* 초기 상태 등록 Config
*/
@Configuration
@RequiredArgsConstructor
@Profile(value = "!test")
@@ -21,6 +24,12 @@ public class InitializeConfig {
private final PostService postService;
private final NoticeService noticeService;
/**
* <h2>유저 등록</h2>
* 1. user / user<br/> 2. admin / admin
* <h2>게시글 등록 4개</h2>
* <h2>공지사항 등록 2개</h2>
*/
@PostConstruct
public void adminAccount() {
User user = userService.signup("user", "user");
@@ -30,5 +39,6 @@ public class InitializeConfig {
postService.savePost(user, "테스트3", "테스트3입니다.");
postService.savePost(user, "여름 여행계획", "여름 여행계획 작성중...");
noticeService.saveNotice("환영합니다", "환영합니다 여러분");
noticeService.saveNotice("게시글 작성 방법 공지", "1. 회원가입\n2. 로그인\n3. 게시글 작성\n4. 저장\n* 본인 외에는 게시글을 볼 수 없습니다.");
}
}

View File

@@ -3,7 +3,10 @@ package com.example.springsecuritystudy.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
/**
* JPA auditor enable
*/
@Configuration
@EnableJpaAuditing
public class AuditorConfig {
public class JpaAuditorConfig {
}

View File

@@ -4,6 +4,9 @@ import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.filter.HiddenHttpMethodFilter;
/**
* WebMVC Config
*/
@Configuration
public class MvcConfig {

View File

@@ -5,6 +5,9 @@ import org.springframework.context.annotation.Configuration;
import org.springframework.security.crypto.factory.PasswordEncoderFactories;
import org.springframework.security.crypto.password.PasswordEncoder;
/**
* PasswordEncoder Config
*/
@Configuration
public class PasswordEncoderConfig {

View File

@@ -9,6 +9,9 @@ import org.springframework.security.web.util.matcher.AntPathRequestMatcher;
import lombok.RequiredArgsConstructor;
/**
* Security 설정 Config
*/
@EnableWebSecurity
@RequiredArgsConstructor
public class SecurityConfig {

View File

@@ -15,6 +15,9 @@ import com.example.springsecuritystudy.post.PostDto;
import lombok.RequiredArgsConstructor;
/**
* 공지사항 서비스 Controller
*/
@Controller
@RequiredArgsConstructor
@RequestMapping("/notice")

View File

@@ -19,6 +19,10 @@ public class AdminController {
private final PostService postService;
/**
* 어드민인 경우 게시글 조회
* @return admin/index.html
*/
@GetMapping
public String getPostForAdmin(Authentication authentication, Model model) {
User user = (User) authentication.getPrincipal();