repository 썸네일형 리스트형 [스프링부트| 스프링부트와 JPA 활용 1 | 웹 애플리케이션 개발 | 상품 도메인 개발] 상품 리포지토리,서비스 개발 @Repository // 이 클래스를 스프링의 리포지토리 컴포넌트로 등록하여 데이터 액세스 역할을 명시@RequiredArgsConstructor // Lombok 라이브러리의 어노테이션으로 final 또는 @NonNull 필드에 대한 생성자를 자동으로 생성public class ItemRepository { private final EntityManager em; // JPA의 EntityManager를 주입받아 데이터베이스 연산을 관리 public void save(Item item) { // Item 객체를 저장하거나 업데이트하는 메소드 if (item.getId() == null) { // Item의 ID가 null일 경우, 즉 새로 생성된 객체일 경우 .. 더보기 [스프링부트| 스프링부트와 JPA 활용 1 | 웹 애플리케이션 개발 | 회원 도메인 개발] 회원 리포지토리 개발 회원 기능 -회원 등록 -회원 조회상품 기능 -상품 등록 -상품 수정-상품 조회주문 기능-상품 주문-주문 내역 조회 -주문 취소개발 순서: 서비스, 리포지토리 계층을 개발하고, 테스트 케이스를 작성해서 검증, 마지막에 웹 계층 적용@Repository // 스프링 컨테이너에 이 클래스가 데이터 리포지토리 역할을 한다고 표시public class MemberRepository { @PersistenceContext // JPA 엔티티 매니저를 자동으로 주입받기 위한 어노테이션 private EntityManager em; // 엔티티 매니저 객체 선언, 데이터베이스 조작을 담당 public void save(Member member) { em.persist(member); //.. 더보기 [스프링| 스프링 입문 | 코드로 배우는 스프링] 컴포넌트 스캔과 자동 의존관계 설정 @Controller기능: @Controller 애노테이션은 해당 클래스가 웹 요청을 처리하는 컨트롤러임을 나타냅니다. 스프링 MVC에서 모델, 뷰, 컨트롤러(MVC) 패턴의 컨트롤러 역할을 합니다. 이 애노테이션이 붙은 클래스는 웹 요청과 응답을 처리하는 메서드를 포함하며, 스프링이 이를 컴포넌트로 인식하여 웹 요청을 처리할 수 있도록 관리합니다.@Service기능: @Service 애노테이션은 해당 클래스가 비즈니스 로직을 처리하는 서비스 계층임을 나타냅니다. 이 계층은 주로 비즈니스 요구사항을 구현하며, 데이터 접근 계층과 컨트롤러 계층 사이에서 중개자 역할을 합니다. 스프링 컨테이너는 이 애노테이션을 사용하여 비즈니스 로직 처리를 위한 서비스 컴포넌트를 관리합니다.@Repository기능: @Re.. 더보기 [스프링| 스프링 입문 | 코드로 배우는 스프링] 비즈니스 요구사항 정리 Service 계층에서 구현하는 메서드들은 Repository 계층의 메서드와는 다른 역할과 책임을 가지고 있습니다. 일반적으로, Repository 계층은 데이터의 저장과 조회와 같은 데이터 접근을 직접적으로 다루는 반면, Service 계층은 비즈니스 로직의 실행을 책임집니다. 이를 통해 애플리케이션의 비즈니스 요구사항을 충족시키고, 데이터를 가공하거나 복잡한 연산을 수행합니다. Service 계층의 주요 역할은 다음과 같습니다: 비즈니스 로직 구현: 데이터가 어떻게 처리되어야 하는지, 어떤 순서로 비즈니스 규칙을 적용해야 하는지를 정의하고 구현합니다. 예를 들어, 사용자 등록 시 유효성 검사, 중복 검사, 권한 부여 등의 추가 로직을 구현할 수 있습니다. 트랜잭션 관리: 여러 데이터 변경이 한 작업.. 더보기 이전 1 다음