일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 한정 분기
- JAVA SPRING
- 자바
- C언어
- 페이코 추천인
- php 프로그래밍 입문 예제
- SWEA
- Java
- php 프로그래밍 입문 솔루션
- 백준
- 페이코 초대코드
- 플러터
- 파이썬
- php 프로그래밍 입문 연습문제
- spring
- php 프로그래밍 입문 문제풀이
- php 프로그래밍 입문
- 스프링
- Flutter
- 플러터 개발환경 설정
- C
- php 프로그래밍 입문 3판
- programmers
- 페이코 친구코드
- 배열
- php
- 자바 스프링
- php 프로그래밍
- 최단 경로
- 페이코 추천인코드
- Today
- Total
목록Java Spring (96)
ImJay
[Java Spring] 3-2. IP(인터넷 프로토콜) 내가 원하는 곳까지 데이터를 전달하기 위해서는 우선 나와 상대방의 IP 주소가 필요하다. 이 때 IP(인터넷 프로토콜)의 역할은 다음과 같다. 지정한 IP 주소(IP Address)에 데이터 전달 패킷(Packet)이라는 통신 단위로 데이터 전달 패킷에는 출발지 IP, 목적지 IP, 전송 데이터 등이 담겨 있다. 클라이언트가 이 패킷을 전송하고, 서버가 패킷으로 응답을 하면서 통신이 이루어진다. 그러나, 이러한 IP 프로토콜은 다음과 같은 한계가 있다. 비연결성 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송 비신뢰성 중간에 패킷이 사라지면? 패킷이 순서대로 안오면? 프로그램 구분 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘..
[Java Spring] 3-1. 인터넷 통신 인터넷에서 컴퓨터 둘은 어떻게 통신할까? 내가 보내고자 하는 데이터는 복잡한 인터넷 망을 거쳐서 목적지에 전달된다. 이 과정에서 발생하는 복잡한 일들을 이해하기 위해서는 우선 IP(인터넷 프로토콜)에 대해 이해해야 한다.
[Java Spring] 3-0. 모든 개발자를 위한 HTTP 웹 기본 지식 모든 개발자를 위한 HTTP 웹 기본 지식 - 인프런 | 강의 실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., [사진] 📣 확인해주세요!본 강의는 자바 스프링 완전 정복 시리즈의 세 번째 강의입니다. 우아한형제들 최연소 기술 www.inflearn.com
[Java Spring] 2-61. 스코프와 프록시 이번에는 프록시 방식을 사용해보자. @Component @Scope(value = "request", proxyMode = ScopedProxyMode.TARGET_CLASS) public class MyLogger { } 여기가 핵심이다. proxyMode = ScopedProxyMode.TARGET_CLASS 를 추가해주자. 적용 대상이 인터페이스가 아닌 클래스면 TARGET_CLASS 를 선택 적용 대상이 인터페이스면 INTERFACES 를 선택 이렇게 하면 MyLogger의 가짜 프록시 클래스를 만들어두고 HTTP request와 상관 없이 가짜 프록시 클래스를 다른 빈에 미리 주입해 둘 수 있다. 이제 나머지 코드를 Provider 사용 이전으..
[Java Spring] 2-61. 스코프와 Provider 첫번째 해결방안은 앞서 배운 Provider를 사용하는 것이다. 간단히 ObjectProvider를 사용해보자. package hello.core.web; import hello.core.common.MyLogger; import jakarta.servlet.http.HttpServletRequest; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.ObjectProvider; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.R..
[Java Spring] 2-60. request 스코프 예제 만들기 웹 환경 추가 웹 스코프는 웹 환경에서만 동작하므로 web 환경이 동작하도록 라이브러리를 추가하자. build.gradle에 추가 //web 라이브러리 추가 implementation 'org.springframework.boot:spring-boot-starter-web' 이제 hello.core.CoreApplication 의 main 메서드를 실행하면 웹 애플리케이션이 실행되는 것을 확인할 수 있다. Tomcat started on port(s): 8080 (http) with context path '' Started CoreApplication in 0.914 seconds (JVM running for 1.528) 참고: s..
[Java Spring] 2-59. 웹 스코프 지금까지 싱글톤과 프로토타입 스코프를 학습했다. 싱글톤은 스프링 컨테이너의 시작과 끝까지 함께하는 매우 긴 스코프이고, 프로토타입은 생성과 의존관계 주입, 그리고 초기화까지만 진행하는 특별한 스코프이다. 이번에는 웹 스코프에 대해서 알아보자 웹 스코프의 특징 웹 스코프는 웹 환경에서만 동작한다. 웹 스코프는 프로토타입과 다르게 스프링이 해당 스코프의 종료시점까지 관리한다. 따라서 종료 메서드가 호출된 다. 웹 스코프 종류 request: HTTP 요청 하나가 들어오고 나갈 때 까지 유지되는 스코프, 각각의 HTTP 요청마다 별도의 빈 인스턴스가 생성되고, 관리된다. session: HTTP Session과 동일한 생명주기를 가지는 스코프 application..
[Java Spring] 2-58. 프로토타입 스코프 - 싱글톤 빈과 함께 사용시 Provider로 문제 해결 싱글톤 빈과 프로토타입 빈을 함께 사용할 때, 어떻게 하면 사용할 때 마다 항상 새로운 프로토타입 빈을 생성할 수 있을까? 스프링 컨테이너에 요청 가장 간단한 방법은 싱글톤 빈이 프로토타입을 사용할 때 마다 스프링 컨테이너에 새로 요청하는 것이다. public class PrototypeProviderTest { @Test void providerTest() { AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(ClientBean.class, PrototypeBean.class); ClientBean cl..
[Java Spring] 2-57. 프로토타입 스코프 - 싱글톤 빈과 함께 사용시 문제점 스프링 컨테이너에 프로토타입 스코프의 빈을 요청하면 항상 새로운 객체 인스턴스를 생성해서 반환한다. 하지만 싱글 톤 빈과 함께 사용할 때는 의도한 대로 잘 동작하지 않으므로 주의해야 한다. 그림과 코드로 설명하겠다. 먼저 스프링 컨테이너에 프로토타입 빈을 직접 요청하는 예제를 보자. 프로토타입 빈 직접 요청 스프링 컨테이너에 프로토타입 빈 직접 요청1 1. 클라이언트A는 스프링 컨테이너에 프로토타입 빈을 요청한다. 2. 스프링 컨테이너는 프로토타입 빈을 새로 생성해서 반환(x01)한다. 해당 빈의 count 필드 값은 0이다. 3. 클라이언트는 조회한 프로토타입 빈에 addCount() 를 호출하면서 count 필드..
[Java Spring] 2-56. 프로토타입 스코프 싱글톤 스코프의 빈을 조회하면 스프링 컨테이너는 항상 같은 인스턴스의 스프링 빈을 반환한다. 반면에 프로토타입 스 코프를 스프링 컨테이너에 조회하면 스프링 컨테이너는 항상 새로운 인스턴스를 생성해서 반환한다. 싱글톤 빈 요청 싱글톤 스코프의 빈을 스프링 컨테이너에 요청한다. 스프링 컨테이너는 본인이 관리하는 스프링 빈을 반환한다. 이후에 스프링 컨테이너에 같은 요청이 와도 같은 객체 인스턴스의 스프링 빈을 반환한다. 프로토타입 빈 요청1 프로토타입 스코프의 빈을 스프링 컨테이너에 요청한다. 스프링 컨테이너는 이 시점에 프로토타입 빈을 생성하고, 필요한 의존관계를 주입한다. 프로토타입 빈 요청2 3. 스프링 컨테이너는 생성한 프로토타입 빈을 클라이언트에..