springboot4 스프링 입문) 7. 회원 관리 예제 - 백엔드 개발(2) (회원 서비스 개발 ~ 회원 서비스 테스트) 지난 포스트에 이어 회원 관리 서비스 예제를 개발한다. - 비즈니스 요구사항 정리 - 회원 도메인, 리포지토리 작성 - 리포지토리 테스트 케이스 작성 - 회원 서비스 개발 { throw new IllegalStateException("이미 존재하는 회원입니다."); }); } checkNameDuplication() 메서드 내용은 join() 내부에 작성할 수도 있으나, 따로 메서드로 만들어 기능을 분리시켰다. Optional.ifPresent() : Optional이 감싼 객체가 존재할 때 (null이 아닐 때) 지정한 코드를 실행한다. 같은 방식으로 전체 회원 조회 기능, id로 회원을 찾는 기능 등을 추가한다. 전체 MemberService 소스코드는 다.. 2023. 4. 3. 스프링 입문) 6. 회원 관리 예제 - 백엔드 개발(1) (비즈니스 요구사항 정리 ~ 회원 리포지토리 테스트 케이스 작성) 스프링으로 간단한 회원 관리 서비스 예제를 개발해본다. 일반적인 웹 애플리케이션의 구조는 다음과 같다. - 컨트롤러 : 웹 MVC의 컨트롤러 역할. 서버로 들어오는 요청을 처리한다. - 서비스 : 핵심 비즈니스 로직. 서버가 제공하는 기능을 실제로 구현한다. - 리포지토리 : 데이터베이스에 접근하여 도메인 객체 등의 데이터를 DB에 저장하고 관리한다. - 도메인 : 비즈니스 도메인 객체. ex) 회원, 주문, 쿠폰 등 다음 과정을 거쳐 개발을 진행한다. - 비즈니스 요구사항 정리 - 회원 도메인, 리포지토리 작성 - 리포지토리 테스트 케이스 작성 - 회원 서비스 개발 - 회원 서비스 테스트 비단 지금의 예제 뿐 아니라, 대부분의 서비스 개.. 2023. 4. 2. 스프링 입문) 2. 라이브러리 살펴보기 IntelliJ 프로젝트 화면 좌측 메뉴의 [External Libraries]나 우측의 [Gradle] 버튼을 눌러보면 정말 많은 라이브러리가 다운 받아져있는 것을 확인할 수 있다. build.gradle을 살펴보면 내가 선택한 라이브러리는 다음 3가지밖에 없는데도 불구하고, 실제로 다운받아진 라이브러리는 정말 많다. 심지어 하나는 testImplementation이라는 이름으로 프로젝트를 생성할 때 자동으로 추가된 라이브러리다. 선택한 라이브러리에 비해 다운받아진 라이브러리가 많은 이유는 간단하다. 내가 선택한 해당 라이브러리들이 동작하려면 다른 라이브러리도 필요하기 때문이다. 이를 라이브러리의 의존 관계라 하며, Gradle, Maven과 같은 빌드 도구들은 내가 쓰려는 라이브러리를 지정하면 그 라.. 2023. 3. 20. 스프링 입문) 1. 프로젝트 생성 스프링 프레임워크(Spring Framework)은 java 기반의 애플리케이션 개발 프레임워크로, 간단히 스프링(Spring)이라고도 부른다. 스프링은 다양하고 편리한 기능들을 제공해 서버 개발에서 많이 쓰인다. 나 역시 배우는 입장이기 때문에 Spring의 모든 기능을 꿰고 있지 않고, 어떤 점에서 장점을 가지고 있는지 명확하게 설명하기에는 아직 지식이 부족하다. 다만 한가지 느끼는 점은 내용은 쉽지 않지만 차근차근 공부하다 보면 나름 이해가 간다는 것이다. 다른 프레임워크나 언어로 만들어진 프로그램들은 공부를 해도 도통 무슨 내용인지 이해하기 힘든 부분들이 많았는데, 스프링은 공부를 하다보면 이게 어떻게 돌아가는지 어느정도 감을 잡을 수 있었다. 이런 점은 개인 성향일수도 있지만, 많은 개발자들 사.. 2023. 3. 12. 이전 1 다음