본문 바로가기
2024 웹/Spring & Spring Boot

지도위의 스토리 .v2 로 다시 시작

by concho 2024. 3. 13.

만들 페이지
1. 홈
  1-1) 회원가입 페이지
  1-2) 로그인 페이지
2. 게시판 페이지
  2-1) 글쓰기 페이지
3. 지도 페이지
4. 갤러리 페이지

 

 

종속성 설정

Spring boot Web : RESTful 애플리케이션 제작을 위해

편의 : Lombok(@Getter, @Setter, @Data), DevTools

JPA : SQL과 데이터베이스 테이블 간의 매핑을 위해 사용
Thymeleaf :  HTML 템플릿을 통해 뷰를 구성하기 위해 사용

MariaDB : 마리아 DB 쓸라고 사용

 

디렉토리 설정
ㄴsrc/main/java/com/example/demo
ㄴ DemoApplication.java
    ㄴ controller  : 사용자의 요청을 처리하고 응답 반환
    ㄴ service : Controller로 부터 받은 비지니스 로직 구현
    ㄴ repository : DB와의 통신을 담당
    ㄴ domain : User 등 사용자 정보를 나타내는 도메인 모델

DemoApplication.java

  • 스프링 부트 애플리케이션의 메인 클래스입니다. @SpringBootApplication 애너테이션이 붙어 있으며, 스프링 부트 애플리케이션을 시작하는 부트스트래핑(bootstrapping) 클래스입니다.

controller

  • 웹 요청을 처리하는 컨트롤러(Controller) 클래스가 위치하는 패키지입니다. 클라이언트로부터 들어오는 HTTP 요청을 받고, 요청에 대한 처리를 적절한 서비스에 위임한 후, 응답을 반환합니다.
  • 예: UserController.java, ProductController.java

service

  • 비즈니스 로직을 처리하는 서비스(Service) 클래스가 위치하는 패키지입니다. 컨트롤러로부터 받은 요청을 처리하기 위한 핵심 비즈니스 로직을 구현합니다.
  • 예: UserService.java, ProductService.java

repository

  • 데이터베이스와의 통신을 담당하는 저장소(Repository) 인터페이스가 위치하는 패키지입니다. Spring Data JPA를 사용할 경우, 이곳에 JPA 리포지토리 인터페이스를 정의합니다.
  • 예: UserRepository.java, ProductRepository.java

domain

  • 애플리케이션의 도메인 모델이 정의되는 곳입니다. 이 패키지에는 비즈니스 로직의 핵심을 이루는 엔티티(Entity)나 도메인 클래스가 위치합니다.
  • 예: User.java, Product.java

 

CrudRepository 의 기본 메서드

  • save(S entity): 주어진 엔티티를 저장합니다. 새로운 엔티티의 추가 또는 기존 엔티티의 업데이트에 사용됩니다.
  • findById(ID id): 주어진 ID에 해당하는 엔티티의 인스턴스를 검색합니다. 결과는 Optional<T>로 반환됩니다.
  • existsById(ID id): 주어진 ID를 가진 엔티티의 존재 여부를 반환합니다.
  • findAll(): 모든 엔티티를 리스트로 반환합니다.
  • findAllById(Iterable<ID> ids): 주어진 ID 컬렉션에 해당하는 엔티티들을 검색합니다.
  • count(): 저장소에 있는 엔티티의 총 개수를 반환합니다.
  • deleteById(ID id): 주어진 ID를 가진 엔티티를 삭제합니다.
  • delete(T entity): 주어진 엔티티를 삭제합니다.
  • deleteAll(Iterable<? extends T> entities): 주어진 엔티티 컬렉션을 삭제합니다.
  • deleteAll(): 저장소의 모든 엔티티를 삭제합니다.

'2024 웹 > Spring & Spring Boot' 카테고리의 다른 글

spring mvc  (0) 2024.04.15
Spring  (0) 2024.04.11
[SpringBoot] Google 이메일 인증  (0) 2024.04.04
[Spring & Spring boot] directory 구조  (0) 2024.03.13
DispatcherServlet & MVC 아키텍처  (0) 2024.03.11

댓글