본문 바로가기
반응형

전체 글69

@EventListener & @PostConstruct 애플리케이션을 실행할 때, 다른 리소스에서 호출하지 않고도 특정 메서드를 수행시키고 싶을 때 (예로, 초기 데이터를 저장하는 경우 등 초기화 작업 시) 다음 어노테이션 중 하나를 수행 시킬 메서드에 적용한다. 1) @EventListener(ApplicationReadyEvent.class) 2) @PostConstruct 1)의 경우 스프링 컨테이너가 완전히 초기화를 다 끝내고, 실행 준비가 되었을 때 발생하는 이벤트이다. 2)의 경우는 AOP같은 부분이 아직 처리되지 않은 시점에 호출 될 수 있어, 간혹 문제가 발생할 수 있음 가급적 1)를 쓰는게 좋을듯 싶다. @EventListener(ApplicationReadyEvent.class) public void initData() { log.info(.. 2022. 6. 9.
[백준] A와 B 2 https://www.acmicpc.net/problem/12919 12919번: A와 B 2 수빈이는 A와 B로만 이루어진 영어 단어 존재한다는 사실에 놀랐다. 대표적인 예로 AB (Abdominal의 약자), BAA (양의 울음 소리), AA (용암의 종류), ABBA (스웨덴 팝 그룹)이 있다. 이런 사실에 놀란 수빈 www.acmicpc.net 완탐 문제 문자열 연산의 종류 2가지 문자열의 뒤에 A를 추가한다. 문자열의 뒤에 B를 추가하고 문자열을 뒤집는다. 이때, S를 T로 바꿀 수 있다는 말은 T를 거꾸로 S로도 바꿀 수 있냐는 의미 T를 S로 바꿀때 1) T 맨뒤가 A인 경우 - A를 뺀다 - 뒤집고 맨뒤가 B인 경우 B를 뺀다 (B가 아닌 경우는 고려X) 2) T 맨뒤가 B인 경우 - 뒤집.. 2022. 6. 2.
[DB] 데이터 존재 확인 (COUNT vs EXISTS) 쿼리로 특정 조건의 데이터가 존재하는지 확인하는 법 (COUNT vs EXISTS) 백만건 row에 대해 1) COUNT : 646ms 2) EXISTS : 4ms COUNT보다 EXISTS가 100배 이상 빠른것으로 확인 (테이블의 row 개수가 많아질수록 더 많은 성능 차이를 보인다) 이유는 EXSISTS는 조건을 만족하는 데이터가 1건이라도 존재할 시 스캔 종료 앞으로 데이터 존재 확인은 EXISTS를 사용하자 2022. 6. 1.
[HTTP] REST 1. 정의 - REST는 클라이언트가 서버의 리소스에 접근하는 방식을 규정한 웹 아키텍처 스타일(제약조건의 집합) - 자원을 정의하고 자원에 대한 주소를 지정하는 방법 전반을 말함 - REST API는 REST를 기반으로 서비스 API를 구현한 것을 의미 2. REST 사용 이유 1) 애플리케이션의 분리 거대한 애플리케이션을 모듈별로 분리함에 따라, REST API를 서비스하면 어떤 다른 모듈이나 애플리케이션들이라도 REST API를 통해 상호간에 원활한 통신을 할 수 있음 2) 다양한 클라이언트의 등장 REST API를 사용하면서 데이터만 주고 받기 때문에 클라이언트가 부담없이 자유롭게 데이터를 사용할 수 있음 서버도 요청한 데이터만 깔끔하게 보내주면 되기 때문에 가벼워지고 유지보수도 용이 즉, 서버는.. 2022. 6. 1.
닭가슴살 샐러드 - 재료 - 1) 닭가슴살 200g 2) 야채 (파프리카 / 버터헤드 / 스텐포드 / 카이피라) 3) 삶은달걀 1~2개 4) 사과 1/3개, 바나나 1/3개 5) 소스 (플레인 요거트) 6) 후추 or 허브솔트 - 순서 - 1) 닭가슴살 칼집 내어 속살에 후추 뿌려준다. 2) 1분정도 후추가 스며들도록 나두고 , 그동안 야채를 썰어준다. 3) 닭가슴살 끓는 물에 투하 - 이때, 강불에서 끓이면 닭가슴살이 질겨질 수 있어, 약-중불에서 15~20분간 끓여주도록 한다. 4) 달걀을 끓는 물에 11분간 삶아준다. 5) 다 삶은 달걀은 찬물에 헹궈 반쪽으로 잘라준다 6) 과일은 취향껏 선택해서 잘라준다. 7) 닭가슴살 꺼내서 먹기좋게 잘라준다. 8) 소스 뿌려 맛있게 냠냠한다. 2022. 5. 28.
[PT] 1회차 (2022/05/28) 보호되어 있는 글 입니다. 2022. 5. 28.
[PT] 체험 (2022/05/23) 보호되어 있는 글 입니다. 2022. 5. 28.
[백준] 치킨배달 https://www.acmicpc.net/problem/15686 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net 전형적인 완탐문제이나, 무식하게 완탐하면 시간초과나 시간초과 코드 package algorithm.baekjoon.bj15686; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util... 2022. 5. 25.
서블릿(Servlet) 1) 서블릿이란 - 웹 애플리케이션을 만들때 요청에 따른 동적 페이지 생성을 위한 추상화된 자바 표준/인터페이스 의미 - 추상클래스인 HttpServlet을 상속받아 구현 서블릿은 생성(init), 요청처리(service), 소멸(destory)의 기본적인 구조를 가짐 HttpServlet안의 service 메서드는 http method에 따라 요청을 알맞게 처리할 수 있도록 분기처리가 되어있음 2) 흐름 a. 서블릿 request 및 response 객체 생성 b. 설정파일(web.xml)을 통해 매핑할 servlet 확인 c. 해당 서블릿 인스턴스가 없으면 init() 통한 생성 d. 서블릿 컨테이너에 스레드 생성 및 res,req를 인자로한 service 실행 e. 응답처리 3) 서블릿 컨테이너 -.. 2022. 5. 18.
반응형