소스범벅
close
프로필 배경
프로필 로고

소스범벅

  • All (81)
    • ✨ Programming (21)
      • Java (3)
      • Spring (8)
      • Architecture (1)
      • Tool (8)
      • 문제&버그 (1)
    • ✨ Algorithm (55)
      • 백준 (31)
      • 프로그래머스 (24)
      • 개념 (0)
    • ✨ CS (2)
      • 자료구조 (0)
      • 운영체제 (0)
      • 네트워크 (2)
      • 데이터베이스 (0)
    • ✨ 독서 (3)
  • 깃허브
  • 방명록
[Spring] build.gradle 의존성 구성

[Spring] build.gradle 의존성 구성

Classpath란? 클래스나 jar파일이 존재하는 위치이다. Java 애플리케이션 실행 시 필요하다. JVM이 classpath를 통해 파일 경로를 따라 클래스 파일을 찾아서 로드한다. compileClasspath 와 runtimeClasspath 1. compileClasspath *.java 코드를 컴파일해서 *.class 파일로 만들 수 있게 하는 JDK에서 필요로 하는 라이브러리의 경로이다. 즉, 에러없이 컴파일 하기 위해 필요한 클래스와 jar의 위치를 나타낸다. 2. runtimeClasspath 컴파일된 자바 코드를 실행시킬 때 필요한 라이브러리의 경로이다. 즉, 애플리케이션이 정상적으로 실행되기 위해 필요한 클래스와 jar의 위치를 나타낸다. 의존성 구성 1. implementaion ..

  • format_list_bulleted ✨ Programming/Spring
  • · 2023. 8. 24.
  • textsms
[Spring] 의존성 주입의 세 가지 방법

[Spring] 의존성 주입의 세 가지 방법

1. 필드 주입 Field Injection 필드에 바로 의존 관계를 주입하는 방법이다. @Autowired가 필드에 붙어있다. 코드가 간결해보이지만, 외부에서 변경이 불가능한 문제가 있다. 동작 과정 주입받으려는 빈의 생성자를 호출해서 빈을 찾거나 빈 팩토리에 등록한다. 생성자 인자에 사용하는 빈을 찾거나 만든다. 필드에 주입한다. 주입할 빈이 없어도 빈 생성이 가능하다. ➡️ 에러가 발생하지 않는다. 앱이 실행되고 testService에 접근할 때 NPE(NullPointerException) 발생 @Controller public class TestController { @Autowired private TestService testService; } 2. 생성자 주입 Constructor Inje..

  • format_list_bulleted ✨ Programming/Spring
  • · 2023. 8. 18.
  • textsms
[Network] HTTP Method의 종류

[Network] HTTP Method의 종류

HTTP란? Hypertext Transfer Protocol HTML 문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜이다. 웹에서 이루어지는 모든 데이터 교환의 기초이다. HTTP는 클라이언트와 서버 간의 요청 ↔️ 응답 프로토콜로 작동한다. 서버에 요청을 해서 응답을 받으면 연결을 끊는다. ➡️ Connectionless & Stateless 요청의 요소 응답의 요소 HTTP 메시지의 요청과 응답 구조 1️⃣ start line 실행돼야 할 요청 또는 요청 수행에 대한 성공이나 실패가 기록돼 있다. 이 줄은 항상 한 줄로 끝난다. 2️⃣ HTTP headers 요청에 대한 설명 혹은 메시지 본문에 대한 설명이 들어간다. 3️⃣ empty line 요청에 대한 모든 메타 정보가 전송됐음을 알리..

  • format_list_bulleted ✨ CS/네트워크
  • · 2023. 8. 16.
  • textsms
[Network] REST API란?

[Network] REST API란?

API란? Application Programming Interface 프로그램 간에 소통을 위해 사전에 정의된 통신 규칙 프로그램들이 상호작용하는 것을 도와주는 매개체 REST란? Representational State Transfer 자원을 이름(자원의 표현)으로 구분하여 자원의 상태를 주고 받는 모든 것을 의미한다. HTTP URI로 자원을 명시하고, HTTP Method(GET, POST, PUT, DELETE, PATCH,...)를 통해 해당 자원(URI)에 대한 CRUD Operation을 적용하는 것 REST의 구성 요소 자원(Resource) : 모든 자원은 고유한 ID를 가지고 있다. ➡️ URI로 표현 행위(Verb) : 클라이언트가 각 자원에 요청하는 방법 ➡️ HTTP Method..

  • format_list_bulleted ✨ CS/네트워크
  • · 2023. 8. 12.
  • textsms
[Spring] Spring에서 사용하는 annotation

[Spring] Spring에서 사용하는 annotation

어노테이션 설명 @Controller • 자동으로 빈 등록 • Controller Bean • @Component로 감싸져있다. @RestController • 자동으로 빈 등록 • RESTfull Controller Bean • @Controller + @ResponseBody @Service • 자동으로 빈 등록 • Service Bean • @Component로 감싸져있다. @Repository • 자동으로 빈 등록 • Repository Bean • @Component로 감싸져있다. @Configuration • 수동으로 빈 등록 • 클래스에 붙임 • 설정 정보를 제공하는 클래스임을 표시 @Bean • 수동으로 빈 등록 • 메서드에 붙임 • 개발자의 컨트롤이 불가한 외부 라이브러리를 Bean으로 ..

  • format_list_bulleted ✨ Programming/Spring
  • · 2023. 8. 11.
  • textsms
[Spring] 스프링의 3대장 Controller, Service, Repository

[Spring] 스프링의 3대장 Controller, Service, Repository

클라이언트의 요청과 서버의 응답 그리고 Spring MVC 위의 그림은 Spring MVC 동작 과정을 담았다. 그림을 보면 개발자가 구현해야할 것은 보라색 박스임을 알 수 있다. 보라색 박스엔 스프링의 3대장이라고 할 수 있는 Controller, Service, Repository 가 포함돼 있다. 그 부분만 확대해 보면 아래와 같다. 각각의 역할은 무엇일까? Controller 프레젠테이션 계층(Presentation Layer) HTTP 요청을 받는다. HTTP 응답을 보낸다. 받은 요청을 비즈니스 계층으로 전달한다. 어노테이션 @Controller @RestController(@Controller + @ResponseBody) Service 비즈니스 계층(Business Layer) 모든 비즈니..

  • format_list_bulleted ✨ Programming/Spring
  • · 2023. 8. 7.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • ···
  • 14
  • navigate_next
전체 카테고리
  • All (81)
    • ✨ Programming (21)
      • Java (3)
      • Spring (8)
      • Architecture (1)
      • Tool (8)
      • 문제&버그 (1)
    • ✨ Algorithm (55)
      • 백준 (31)
      • 프로그래머스 (24)
      • 개념 (0)
    • ✨ CS (2)
      • 자료구조 (0)
      • 운영체제 (0)
      • 네트워크 (2)
      • 데이터베이스 (0)
    • ✨ 독서 (3)
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바