본문 바로가기

전체 글

(28)
[스프링 MVC] #1 김영한님의 스프링 MVC 1편 강의를 듣고 복습 겸 정리하는 포스팅입니다!!아직 공부하는 중인 학생이라 부족한 부분이 있을 수 있습니다. 혹시라도 틀린 부분이 있다면 언제든지 댓글로 남겨주세요. 감사합니다 🙇‍♂️ 웹 서버 (Web Server)HTTP 기반정적 리소스 제공, 부가기능요청된 파일 그대로 응답 웹 애플리케이션 서버(WAS - Web Application Server)HTTP 기반으로 동작웹 서버 기능을 포함한 서버 프로그램 코드를 실행해서 애플리케이션 로직을 수행 동적 HTML, HTTP API(JSON)서브릿, JSP, 스프링 MVC웹 시스템 구성WAS + DB만으로도 시스템 구성 가능→ 하지만 과부하, 안정성 측면에서 비효율적WAS하나만 가지고 운영한다면 WAS가 너무 많은 역할을 담..
[스프링 핵심 원리] - 기본편 #9 섹션 10 : 빈 스코프스프링 빈은 기본적으로 싱글톤 스코프(빈이 존재할 수 있는 범위)로 생성된다. 스프링이 지원하는 스코프 싱글톤 : 기본 스코프, 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프포로토타입 : 프로토타입 빈의 생성과 의존관계 주입까지만 관여하고 더는 관여하지 않은 매우 짧은 범위의 스코프웹 관련 스코프request : 웹 요청이 들어오고 나갈때 까지 유지되는 스코프session : 웹 세션이 생성되고 종료될 때까지 유지되는 스코프application : 웹의 서블릿 컨텍스와 같은 범위로 유지되는 스코프import static org.assertj.core.api.Assertions.assertThat;public class SingletonTest { @Tes..
[Python] 리스트 아직 많이 부족한 학생의 정보처리기사 실기를 준비하며 공부하는 내용입니다. 개인 공부 하는 내용이라 틀린 부분이 있을 수도 있습니다. 만약 틀린 부분이 있다면 댓글로 언제든지 알려주세요 🙇‍♂️🙇‍♂️ 리스트 슬라이싱🔹 기본 문법리스트[start:stop:step]항목설명start시작 인덱스 (포함)stop끝 인덱스 (불포함)step몇 칸씩 건너뛸지✅ 예제 리스트nums = [10, 20, 30, 40, 50, 60]# 인덱스: 0 1 2 3 4 5# 인덱스: -6 -5 -4 -3 -2 -1✂️ 슬라이싱 예제1. nums[1:4]1번 인덱스부터 4번 전까지 → [20, 30, 40]2. nums[:3]처음부터 3번 전까지 → [10, 20, 30]3. nums[3:]3번 ..
[스프링 핵심 원리] - 기본편 #8 섹션 9 : 빈 생명주기 콜백데이터베이스 커넥션 풀이나, 네트워크 소켓처럼 애플리케이션 시작 시점에 필요한 연결을 미리 해두고, 애플리케이션 종료 시점에 연결을 모두 종료하는 작업을 진행하려면 객체의 초기화와 종료 작업이 필요하다.  스프링 빈객체 생성 -> 의존관계 주입따라서 초기화 작업은 의존관계 주입이 모두 완료되고 난 다음에 호출한다.  스프링 빈의 이벤트 라이프사이클스프링 컨테이너 생성 -> 스프링 빈 생성 -> 의존관계 주입  -> 초기화 콜백  -> 사용 -> 소멸 전 콜백 -> 스프링 종료 초기화 콜백 : 빈이 생성되고, 빈의 의존관계 주입이 완료된 후 호출소멸 전 콜백 : 빈이 소멸되기 직전에 호출 스프링은 의존관계 주입이 완료되면 초기화 콜백을 실행하고, 컨테이너가 종료되기 전에는 소멸..
[스프링 핵심 원리] - 기본편 #7 섹션 8 : 의존관계 자동 주입의존관계 주입의 4가지 방법생성자 주입수정자 주입(setter 주입)필드 주입일반 메서드 주입 생성자 주입@Componentpublic class OrderServiceImpl implements OrderService { private final MemberRepository memberRepository; private final DiscountPolicy discountPolicy; @Autowired public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicy discountPolicy) { this.memberRepository = memberRepository..
[스프링 핵심 원리] - 기본편 #6 섹션 7 : 컴포넌트 스캔컴포넌트 스캔 - 스프링은 설정 정보가 없어도 자동으로 스프링 빈을 등록한다.@Component 어노테이션이 붙은 모든 클래스를 스프링 빈으로 등록한다. @Autowired - 의존관계를 자동으로 주입한다.스프링 컨테이너는 타입을 기반으로 빈을 찾아 자동으로 주입한다. basePackages : 탐색할 패키지의 시작 위치를 지정한다. 이 패키지를 포함한 하위 패키지를 모두 탐색한다.@Configuration@ComponentScan( basePackages = "hello.core.member", excludeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION, classes = Configurat..
국민취업지원제도 신청자격 (1유형, 2유형, 알바, 주의사항) 국민취업지원제도란?국민취업지원제도는 취업을 희망하는 사람들에게 맞춤형 취업 지원 서비스를 제공하고, 저소득 구직자에게 생계 지원을 통해 안정적으로 구직활동을 할 수 있도록 돕는 제도입니다. 고용보험 가입 여부와 상관없이 참여할 수 있습니다. 국민취업지원제도의 첫 신청은 고용24 사이트 상단의 취업지원 탭의 국민취업지원제도로 들어가시면 신청할 수 있습니다 !   신청일 : 2/11일안내 전화  : 2/21일 (상담 일정 조율)1차 상담 : 3/7일2차 상담 : 3/14일3차 상담 및 수당 신청: 3/20일 이런 일정으로 대략 한 달 정도 걸렸습니다! 저의 경우 여행 일정이 껴 있어 1차 상담까지 조금 오래 걸렸지만, 아마 대부분의 분들은 신청부터 상담까지 한 달 정도 걸릴 것 같습니다! 유형별 조건 및 혜..
[스프링 핵심 원리] - 기본편 #5 섹션 6 : 싱글톤 컨테이너스프링은 대부분 웹 애플리케이션을 주로 만듬웹 애플리케이션의 특징 - 고객 요청이 매우 많음그런데, 스프링 없는 순수한 DI 컨테이너는 호출할 때마다 다른 객체를 생성한다. 하단의 테스트 결과를 봐면memberService1 = hello.core.member.MemberServiceImpl@62bd765memberService2 = hello.core.member.MemberServiceImpl@23a5fd2 로 서로 다른 객체가 생성되는 것을 확인할 수 있다.만약 고객 트래픽이 초당 100이 나오면 초당 100개의 객체가 생성되고 소멸되므로 메모리 낭비가 심각해진다.  이를 해결하기 위한 방안이 싱글톤이다.해당 객체가 딱 하나만 생성되고, 이를 공유하도록 설계한다. => 싱..