호우주의보
close
프로필 배경
프로필 로고

호우주의보

  • 분류 전체보기 (32)
    • TIL (4)
    • 공부 (15)
      • App (1)
      • A.I. (1)
      • Web (0)
      • 기타 (5)
      • Spring (5)
      • SQL (3)
    • 알고리즘 (3)
      • 프로그래머스 (3)
    • 대외활동 (10)
    • 일상 (0)
    • 쿠아데브 (0)
  • 홈
  • 태그
  • 방명록

스프링 의존관계

컴포넌트 스캔과 자동 의존관계 설정의존관계한 객체가 다른 객체를 필요로 하는 관계를 의미한다.컨트롤러 등록package hello.hello_spring.controller;import hello.hello_spring.service.MemberService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;@Controllerpublic class MemberController { private final MemberService memberService; @Autowired public MemberController(MemberServic..

  • format_list_bulleted Spring
  • · 2024. 8. 12.
  • textsms
스프링 - 회원 관리 예제

스프링 - 회원 관리 예제

비즈니스 요구사항 정리데이터: 회원 ID, 이름기능: 회원 등록, 조회아직 데이터 저장소 선정 X (가상의 시나리오)일반적인 웹 애플리케이션 구조컨트롤러 → 웹 MVC의 컨트롤러 역할서비스 → 서비스 클래스의 핵심 비즈니스 로직(ex: 중복 가입 불가)레포지토리 → 도메인 객체를 DB에 저장하고 관리도메인 → 비즈니스 도메인 객체회원 관리 예제의 클래스 의존 관계아직 데이터 저장소가 선정되지 않아서, 레포지토리는 인터페이스로 구현데이터 저장소는 RDB, NoSQL 등 다양한 저장소를 고민중인 상황개발을 진행하기 위해 초기 개발 단계에서 메모리 기반의 데이터 저장소 사용회원 도메인과 레포지토리 만들기domain/Member.javapackage hello.hello_spring.domain;public c..

  • format_list_bulleted Spring
  • · 2024. 8. 12.
  • textsms

MVC와 템플릿 엔진

웹을 개발하는 종류에는 크게 3가지 종류가 있다.정적 컨텐츠 → 하드코딩MVC와 템플릿 엔진 → JSP, PHP, HTML을 동적으로API정적 컨텐츠공식 문서에 Static Content 검색정적 컨텐츠는 모두 resources/static 에 작성된다.작동 순서웹 브라우저에서 서버에 요청을 보낸다.내장 톰켓 서버에서 관련 컨트롤러를 찾는다.관련 컨트롤러가 없으니 static 폴더에서 관련 정적 컨텐츠를 찾는다.컨텐츠를 브라우저로 반환한다.MVC와 템플릿 엔진MVCModel → 데이터와 비즈니스 로직 관리View → 화면을 그리는 요소Controller → 사용자의 요청을 처리하고 적절한 모델과 뷰 호출Controller @Controller public class HelloController { ..

  • format_list_bulleted Spring
  • · 2024. 8. 12.
  • textsms

백엔드 진화과정

Web Html인터넷이 시작되면서 웹도 시작됐다.웹은 절대적으로 HTML로 구현된다.웹에서 보여지는 정보들은 모두 하드코딩 되어있다.ServletWeb의 대중화로 인해 Web을 통한 데이터 입출력의 필요성이 생긴다.자바에서 웹 프로그래밍을 지원한다.자바 코드안에 html을 넣는다.웹은 절대적으로 HTML로 구현된다.Servlet에 HTML을 구현한다. → 개발자들이 죽어나간다.import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax...

  • format_list_bulleted 기타
  • · 2024. 8. 9.
  • textsms

RESTful API

클라이언트가 서버에게 보내는 요청은 크게 4가지로 이루어진다 → CRUDCRUDc는 create의 약자로 데이터를 서버에 올리는 요청을 한다.r은 read의 약자로 서버에서 데이터를 불러오는 요청을 한다.u는 update의 약자로 서버의 데이터를 바꾸는 요청을 한다.d는 delete의 약자로 서베의 데이터를 지우는 요청을 한다.데이터를 다룰 때 큰 틀에서 보면 대부분의 요청이 이 4가지 요청에 속한다.모든 데이터는 CRUD 관점에서 바라봐야하며 CRUD 특정 기능이 없는 기획이라면 그 의도가 명확해야 한다.CRUD의 요청 주소CRUD 요청은 각각의 주소를 가진다.도메인/create도메인/read도메인/update도메인/delete이러면 하나의 데이터 별로 주소가 4개씩 생기기 때문에 주소가 너무 많아진다..

  • format_list_bulleted 기타
  • · 2024. 8. 9.
  • textsms

객체지향 SOLID

SOLIDsolid는 약자로 이루어져있습니다.S → single responsiblity: 단일 책임의 원칙O → open closed: 개방 폐쇄 원칙L → Liskov subsituation: 리스코프 치환 원칙I → interface segregation: 인터페이스 분리 원칙D → dependency inversion: 의존 역전 원칙단일 책임의 원칙객체는 한 가지 역할(책임)만 가져야 한다. = 객체가 변경되는 이유는 단 한가지여야 한다.책임은 변경의 축이기 때문에 분할되는 것이 중요하다.→ 여러개의 책임을 가지게 된다면 요구사항의 변경이 일어났을 때 연쇄적인 변화가 발생할 것이다.어떻게 해결할 수 있나추상화를 통해 객체를 설계하는 과정에서 적절한 한 개의 역할만 갖도록 구상→ 책임의 분배는 정..

  • format_list_bulleted 기타
  • · 2024. 8. 9.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (32)
    • TIL (4)
    • 공부 (15)
      • App (1)
      • A.I. (1)
      • Web (0)
      • 기타 (5)
      • Spring (5)
      • SQL (3)
    • 알고리즘 (3)
      • 프로그래머스 (3)
    • 대외활동 (10)
    • 일상 (0)
    • 쿠아데브 (0)
최근 글
인기 글
최근 댓글
태그
  • #혼공파
  • #개발진행
  • #혼공머신
  • #DSP2024
  • #프로그래머스
  • #React Native
  • #Til
  • #혼공학습단
  • #혼공
  • #코칭스터디
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.