본문 바로가기

전체 글132

회원 관리 예제 - 웹 MVC 개발 MemberController를 통해 회원 등록하고 조회하는 방법을 알아볼 것이다. 1. 회원 웹 기능 - 홈 화면 추가2. 회원 웹 기능 - 등록3. 회원 웹 기능 - 조회 1. 홈 화면 추가 Controller 밑에 package hello.hellospring.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.GetMapping; @Controller public class HomeController { @GetMapping("/") //홈 화면이 되는 것임. public String home() { return "home"; //.. 2025. 5. 18.
스프링 빈과 의존관계 인프런 강의 공부 내용이다.스프링 빈 등록하는 방법 다음과 같은 의존관계를 가능케 하는 방법이라고 보면 된다.스프링 빈으로 등록해서 쓰면 많은 이점이 있기 때문에 보통 등록해서 사용한다. cf) 스프링은 스프링 컨테이너에 스프링 빈을 등록할 때, 기본으로 싱글톤으로 등록한다.쉽게 말해 helloController, memberService, memberRepository 각각 하나씩 등록한다는 뜻이다.memberService가 아니라 orderService가 memberRepository를 내놓으라고 하면 같은 객체를 내어놓는다는 것이다.이렇게 메모리 절약 가능. 메모리 도출할 때 좋음 1. 컴포넌트 스캔을 통한 자동 의존관계 설정: @service, @controller, @repository 붙여서 .. 2025. 5. 18.
비즈니스 예제 [[/비즈니스 요구사항 정리]][[/회원 도메인과 리포지토리 만들기]] [[/회원 리포지토리 테스트 케이스 작성]] [[/회원 서비스 개발]][[/회원 서비스 테스트]] 비즈니스 요구사항 정리 - 데이터: 회원ID, 이름- 기능: 회원 등록, 조회- 아직 데이터 저장소가 선정되지 않음(가상의 시나리오): nosql 등 데베 종류가 아직 선정 x 일반적인 웹 애플리케이션의 계층 구조 - 컨트롤러: 웹 MVC의 컨트롤러 역할- 서비스: 핵심 비즈니스 로직 구현- 리포지토리: 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리- 도메인: 비즈니스 도메인 객체ex. 회원, 주문, 쿠폰 등등 주로 데베에 저장 및 관리 클래스 의존 관계 - 아직 데이터가 선정되지 않았기 때문에, 우선 인터페이스를 두어 구.. 2025. 5. 12.
[Chapter5] 동적 계획 알고리즘 Dynamic Programming(DP) 알고리즘: 입력 크기가 작은 부분 문제들 해결 -> 그 해들을 이용해 보다 큰 크기의 부분 문제들 해결 -> 최종적으로 원래 주어진 입력의 문제 해결 - 최적성의 원리: 큰 문제를 해결하기 위해서는 작은 문제들이 해결되어야 한다.- 최적화 구조: 그런 구조를 가짐 그리디와 DP는 모두 최적성 원리&최적화 구조 가지고 있음그리디 알고리즘과 DP는 모두 최적해를 구하는 것이 목적그리디는 0-1의 경우 최적해 보장이 안 되지만, DP는 항상 최적해를 보장해준다. 그리디 알고리즘DP목적최적해 구하기(최적성 원리 & 최적화 구조)최적해 항상 보장?X(0-1의 경우 안 됨)O 분할 정복 알고리즘DP 알고리즘해 구하는 과정해 중복 가능 여부부분 문제의 해 중복 x부분 문.. 2025. 4. 28.