UMC_Back

Week 1

oyatplum 2024. 3. 30. 21:52

 

1주차 : 자바 기초 & 스프링 입문

 

한 달 전에 동일한 스프링 입문 강의를 보면서 공부했었기 때문에 이해하는데 큰 어려움이 있지 않았다.

앞으로가... 걱정일뿐.. 에휴

 

https://oyatplum.tistory.com/43

https://oyatplum.tistory.com/44

https://oyatplum.tistory.com/45

https://oyatplum.tistory.com/46

 

눈물나는 나의 코딩 기록은 위를 참고해주세요~

 

 


 

자바 기초 정리

사진 업로드가 막혀서 자바는 노션 정리 링크로 대신합니당

https://dear-echinodon-f3e.notion.site/JAVA-7504b73bd70d40dcb4e4025567020d58?pvs=4

 

 

스프링 입문 정리

1. 웹 기초

  • 정적 컨텐츠
    • 관련 컨트롤러 X > html 파일 반환
  • MVC 패턴
    • Model, View, Controller
    • MVC 패턴은 소프트웨어 디자인 패턴 중 하나로 Controller를 통해서 Model로부터 받은 데이터를 View에 전달하여 사용자에게 제공하는 것
  • API
    • @ResponseBody 필요 - 메소드의 반환 값이 HTTP 응답의 body로 사용
    • 메소드가 반환하는 문자열 / 객체가 View를 통하지 않고 client에게 전달
    • HttpMesaageConveter
      • JsonConveter
      • StringConverter

2. 일반적인 웹 애플리케이션 계층 구조

  • 컨트롤러 : 웹 MVC의 컨트롤러
  • 도메인 : db에서 저장하고 관리하는 객체
  • 서비스 : 핵심 비즈니스 로직
  • 레포지토리 : 도메인 객체를 가지고 서비스가 동작하도록 구현

3. API와 Server

  • API
    • 서버와 클라이언트 간의 통신을 위한 규칙
    • 웹 API는 HTTP 프로토콜을 사용하여 통신하며, JSON 또는 XML과 같은 데이터 형식을 주고받음
  • Server
    • 서버는 이러한 API를 사용하여 클라이언트의 요청을 처리하고 응답을 제공

4. RESTful

  • Representational State Transfer(표현 상태 전송)의 약어로, 네트워크 아키텍처 원리 중 하나
  • 자원을 정의하고 이러한 자원에 대한 상태 전송을 HTTP 프로토콜을 통해 수행하는 방법을 기술
    • 자원(resource) : 모든 것을 자원으로 간주하고 각 자원은 고유한 식별자(URI)를 가지고 있음
    • 행위(verb) : HTTP 메서드(GET, POST, PUT, DELETE 등)를 통해 자원에 대한 행위를 정의. RESTful 아키텍처에서는 이를 통해 자원의 상태를 변경, 조회 가능.
    • 표현(representation) : 클라이언트가 요청할 때 서버는 해당 자원의 표현을 반환. 표현은 다양한 형식(XML, JSON, HTML 등)으로 제공.
    • 연결(connectedness) : 하이퍼링크를 통해 자원 간의 관계를 표현

추가적 사항

- 다형성(polymorphism)

MemberRepository repository = new MemoryMemberRepository();
  • 다형성은 상속과 인터페이스로 구현.
  • Java에서는 인터페이스를 구현한 클래스의 객체를 해당 인터페이스 타입의 변수에 할당할 수 있음. 이를 통해 다형성(polymorphism)구현
  • 상속 : 상속하면 기능 급격히 증가 > class간 호환성 하락 > 자식 class를 부모 class로서 작동하도록 해야 함
  • 자식 클래스를 부모 클래스로서 작동: 다형성은 자식 클래스 객체를 부모 클래스 타입의 변수에 할당하여 사용할 수 있다는 개념.
    • 이를 통해 여러 가지 하위 클래스들을 단일한 인터페이스나 부모 클래스로 다룰 수 있음.
      • 즉, 부모 클래스로 선언된 변수는 실제로 그 부모 클래스의 객체일 수도 있고, 그 부모 클래스를 상속받은 자식 클래스의 객체일 수도 있음. 이것은 코드의 유연성을 높이고, 코드를 보다 일반적으로 작성할 수 있게 해 줌.

+) Java에서는 동일한 패키지 내의 클래스들끼리는 import 없이도 서로 접근 가능

 

'UMC_Back' 카테고리의 다른 글

여행기 - 도시, 국가 검색 정리 (전반적인 스프링 코드 이해)  (0) 2024.08.18
Week 3_(2)  (0) 2024.04.29
Week 3_(1)  (0) 2024.04.28
Week 2  (0) 2024.04.06