계층형 아키텍처 패턴 중 Application Layer에 속한다.
시스템의 핵심 비지니스 로직을 구현하는 계층이다.
(컨텐츠 정보 저장, 컨텐츠 추천, 회원 가입, 로그인, 탈퇴 등)
view(웹/앱 여부 등)의 종류와 데이터베이스의 종류에 영향을 받지 않는 독립적인 계층이다.
- 구현
클래스에 @Service Annotation을 사용한다.
파아미터로 전달된 데이터들의 검증 작업을 수행한다.
Repository 계층을 활용하여 데이터베이스에 접근한다.
애플리케이션의 세부 영역별로 클래스를 생성하여 구현한다.
- PostService.java
@Service
public class PostService {
public PostDto getPost(Integer id) {
System.out.println("find post data from database by " + id);
System.out.println("validate data from database");
System.out.println("process data if necessary");
}
}
- PostController.java
@RestController
@RequestMapping(value = "/post")
public class PostController {
PostService postService = new Postservice();
@GetMapping
public PostDto getPost(@RequestParam Integer id) {
PostDto result = postService.getPost(id);
return result;
}
...
}
'BackEnd > spring' 카테고리의 다른 글
| [Spring Boot] Spring Security를 사용하여 권한 설정하는 방법 (0) | 2023.07.25 |
|---|---|
| [Spring Boot] 의존성 주입 / 객체 생성 방법 - 멤버변수와 생성자, @Configuration과 @Bean (0) | 2023.06.14 |
| [Spring Boot] HTTP Method와 데이터베이스 CRUD (0) | 2023.06.09 |
| [Spring Boot] Request 파라미터 - Query String / Path Parameter / Request Body (0) | 2023.06.07 |
| [Spring Boot] @RequestMapping과 URI (0) | 2023.06.07 |