목록프로그래밍/정리 (7)
어디까지 갈 수 있을까?
JOIN SELECT a.ANIMAL_ID, a.NAME from animal_ins a join animal_outs b on a.animal_id=b.animal_id where a.datetime>b.datetime order by a.datetime; join 자리에 left join, right join 들어갈 수 있음 NOT IN SELECT NAME, DATETIME from ANIMAL_INS where animal_id not in (SELECT animal_id from ANIMAL_OUTS) order by datetime limit 3; not in, limit 3(정렬된 그룹에서 위에 3개 뽑음) 생각 IF SELECT ANIMAL_ID, NAME, if(sex_upon_intak..
중복 관련 set(튜플) 값 바로 접근 할 때 dictionary 같은 열 요소 묶음 zip 원소 삽입/삭제 시 deque 최솟값, 최댓값 heapq 값이 있는지 확인 시 in 비슷한 유형끼리 묶고 싶으면 sort #요소마다 숫자가 작은 순서로, 길이가 짧은 순서로 정렬된다 길이가 안 맞으면 % 최소값 BFS 인덱스 값 찾기 index dp는 dp배열에 들어갈 값 먼저 정해놓고 시작하기 연속된 길이 투포인터 알고리즘 deque from collections import deque q=deque() q.append(값) #가장 오른쪽에 append q.pop() #가장 오른쪽 값 pop q.popleft() q.remove(값) heapq from heapq import heappush, heappop, ..
코어 CPU 프로세서, 컴퓨터에서 일하는 것 싱글 코어 - 한 명이 일 함 클럭 : CPU의 계산속도 싱글코어 → 클럭↑ -> 탐 ->멀티코어 등장 스레드 : 하나의 코어인데 여러개의 코어가 일하고 잇는 것처럼 보임 1코어 2스레드 - 2코어 성능 프로세스와 스레드 작업 흐름에 여러갈래가 생기는 경우 -> 멀티프로세스 -> 프로세스마다 독립된 메모리영역 가져 비효율 발생(작업 스위칭하면 코드 다시 로드해야됨) ->멀티 스레드 자원은 프로세스 단위로 받고 작업/스케줄링은 스레드 단위로 받는다 각 스레드는 어떤 메소드를 항상 실행하고 있음
@Component 해당 어노테이션이 있는 클래스를 객체로 생성해 bean으로 관리 @Controller, @Service, Repository @Component 클래스를 구체화 한 것 시각적으로 역할을 명시하기 위해 사용 @Autowired 스프링 컨테이너에 있는 bean 중 타입에 맞는 객체를 주입해달라 @RequestMapping 해당 url로 들어오는 요청에 대한 처리를 해당 클래스에서 한다 @RestController @Controller+@ResponseBody @ResponseBody를 모든 메소드에 적용한다 #POST방식의 요청 @RequestBody http body를 자바 객체에 담을 수 있다 Json을 Java Object로 변환 @ResponseBody 자바 객체를 http bod..
반응형 웹 URL, URI 정적 웹 : html 그대로 보여줌 동적 웹 : 변수에 의해 html 값이 달라짐 HTTP : 컴퓨터들끼리 HTML파일을 주고받을 수 있도록 하는 소통방식에 관한 약속 velog.io/@pear/HTTP-%EC%9A%94%EC%B2%AD%EA%B3%BC-%EC%9D%91%EB%8B%B5 velog.io/@deokyeong1020/HTTP-%EC%9B%B9%EC%84%9C%EB%B9%84%EC%8A%A4-%EA%B4%80%EB%A0%A8-%EC%9A%A9%EC%96%B4 post : 전달하려는 정보가 HTTP BODY에 포함되어 전달되는 것 get : 전달하려는 정보를 URL로 보내는 것 REST에서 CRUD는 다음과 같이 정의 POST - 생성 GET - 읽기 PUT - 수정 ..
스프링 빈 스프링 IOC 컨테이너가 관리하는 자바 객체 DI(Dependency Injection) 스프링이 관리하는 객체를 가져와 사용하는 것, 부품 조립 스프링 객체 생성, 객체 라이프 사이클 관리, 의존 주입 모두 해줌 강한 결합 개발자가 객체 직접 관리(new로 생성해서) 느슨한 결합 스프링에서 객체 생성된 것을 주입받음 객체 사용만 하는 것 IOC(Inversion Of Control) 스프링이 객체 생성 같은 프로그램의 흐름을 주도, 느슨한 결합 생성자가 하나 있다면 @Autowired 안써도 스프링이 객체 알아서 주입해준다 서블릿 웹에서 JAVA 프로그래밍을 구현하기 위해 탄생 서블릿 컨테이너 서블릿을 실행하는 주체 Servlet과 웹 서버가 통신할 수 있는 방법 제공 대표적 : 톰캣 OOP..
오버로딩 오버라이딩 제네릭 객체지향 interface abstract JVM 클래스 속성과 기능의 집합, 설계도 객체 클래스 인스턴스 모두 포함 인스턴스 객체를 new해 힙 공간에 올린 것 싱글톤 패턴 하나의 인스턴스만 생성해 사용하는 것 new 객체 생성 메모리구조 데이터 영역 프로그램의 시작과 함께 할당, 프로그램 종료되면 소멸 스택 영역 함수 호출과 함께 할당, 호출 완료되면 소멸 힙 영역 사용자 할당(new를 통해) BufferedReader 가변 길이 문자열 받음 파라미터(매개변수) 함수 선언 시 정의되는 변수 아규먼트(전달인자) 함수 호출 시 전달하는 값 final 값을 정의하고 다시 바꾸지 않을 때 사용 반드시 초기화 해줘야 한다 static 정적 데이터 프로그램 실행 직후부터 끝날때 까지 ..