본문 바로가기

분류 전체보기93

[스프링입문] CH05. 회원 관리 예제 - 웹MVC 개발 1. 회원 웹 기능 - 홈 화면 추가 웰컴 페이지 우선순위 - 1. 컨트롤러에서 매핑되는 것 2. index.html ⇒ 컨트롤러가 정적파일보다 우선순위 높다 # 홈 컨트롤러 @Controller public class HomeController { @GetMapping("/") public String home() { return "home"; } } # 회원 관리용 홈 Hello Spring 회원 기능 회원 가입 회원 목록 2. 회원 웹 기능 - 등록 createMemberForm의 name과 MemberForm의 name 매핑 과정 : localhost:8080/members/new → localhost:8080/members/createMemberForm 이동 → 이름 등록 → action에 있는.. 2021. 8. 10.
[스프링입문] CH04. 스프링 빈과 의존관계 1. 스프링 빈 등록하는 2가지 방법 1.1 컴포넌트 스캔과 자동 의존관계 설정 목표 - 회원 컨트롤러가 회원 서비스와 회원 리포지토리를 사용할 수 있게 의존관계 준비 컴포넌트 스캔 원리 @Component 애노테이션이 있으면 스프링 빈으로 자동 등록 @Controller 컨트롤러가 스프링 빈으로 자동 등록된 이유도 컴포넌트 스캔 @Component를 포함하는 애노테이션도 스프링 빈으로 자동 등록 - @Controller - @Service - @Repository ⇒ @controller, @Service, @Repository → 스프링 빈에 자동 등록 @Autowired - 하나만 등록 가능한 스프링 컨테이너에 등록한 후 공유 (싱글톤) - 생성자에 사용하면 객체 생성 시점에 스프링 컨테이너에서 해.. 2021. 8. 10.
[스프링입문] CH03. 회원 관리 예제 - 백엔드 개발 1. 회원 관리 비지니스 요구사항 정리 비지니스 요구사항 - 데이터 : 회원ID, 회원이름 / 기능 : 회원 등록, 회원 조회 - 가정 : DB 선정X → 인터페이스로 구현하여 변경가능하도록 설계 (일반적인) 웹 애플리케이션 계층 구조 - 컨트롤러 : 웹 MVC의 컨트롤러 역할 - 서비스 : 비즈니스 도메인 객체를 가지고 핵심 비즈니스 동작 로직 구현 ex) 회원 중복가입 방지 등등 - 도메인 : 비즈니스 도메인 객체 ex) 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨 - 리포지토리 : 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 2. 회원 도메인과 리포지토리 만들기 Optional 클래스 Stream(스트림) clear() : 모든 데이터 삭제 public class Mem.. 2021. 8. 9.
Stream(스트림) 1. 스트림 API 1.1 스트림 API 개념 스트림 사용 이전(과거) - 많은 양의 데이터를 저장하기 위한 배열, 컬렉션 등의 데이터 접근 위해서는 반복문이나 반복자를 사용 → 코드 길이 긺, 가독성 떨어짐, 코드 재사용X - [ 해결법 ] : 스트림(stream) 정의 - 데이터를 추상화하며 다룸 - 다양한 방식으로 저장된 데이터를 읽고 쓰기 위한 공통된 방법 제공 ≫ 파일에 저장된 다양한 형태의 데이터들을 모두 같은 방법으로 다룰 수 있음 특징 스트림 컬렉션 내부 반복을 통해 작업 외부 반복을 통해 작업 단 한번만 사용 재사용 가능 원본 데이터를 변경하지 않음 필터-맵(filter-map) 기반의 API 사용하여 지연(lazy) 연산을 통해 성능 최적화 parallelStream() 메소드를 통한 .. 2021. 8. 9.
[자료구조] CH03. 배열, ArrayList 보호되어 있는 글 입니다. 2021. 8. 8.
[자료구조] CH02-3. Java 주피터 노트북 설치 및 사용법 보호되어 있는 글 입니다. 2021. 8. 6.