스터디노트
-
MySQL IFNULL, CASE WHEN, COALESCE스터디노트/DB 2021. 12. 15. 17:03
MySQL에서 NULL 처리 IFNULL SELECT IFNULL('컬럼', 'null시 대체 값') FROM 테이블; CASE WHEM SELECT CASE WHEN 조건1 THEN 반환 값 ELSE 조건에서 필터링 되지 않는 경우 END AS something FROM 테이블; COALESCE : 지정한 표현식 중 NULL이 아닌 첫번째 값을 반환한다. SELECT COALESCE('컬럼', 'null시 대체 값') FROM 테이블; SELECT COALESCE('컬럼1', '컬럼2', '컬럼3') -- 컬럼1~컬럼3에서 null이 아닌 첫번째 값을 반한다. FROM 테이블;
-
TypeScript 세팅해보기스터디노트/TypeScript 2021. 11. 29. 20:29
TypeScript란??? 어느 규모의 프로젝트에서도 적용 가능하며 자바스크립트를 기반으로한 강력한 타입 프로그래밍 언어 https://www.typescriptlang.org/ 초기 세팅 npm install -g typescript ts-node tsc main.ts # .ts파일을 node로 실행하기 위해 .js파일로 컴파일해야한다. npm install -g ts-node # ts-node는 .js파일로 컴파일하는 과정을 알아서 해주는 툴이다. ts-node main.ts tsc main.ts -w # .ts파일을 수정할 때 마다 tsc main.ts를 할 필요 없이 백그라운드로 실행해 수정될 때마다 반영시킬수있다. 간단한 실습 참고자료 https://www.typescriptlang.org/
-
React Life Cycle스터디노트/Front-end 2021. 11. 25. 20:15
class 컴포넌트의 life cycle Mount 컴포넌트가 처음 실행될 때 componentWillMount 호출 -> render로 DOM에 컴포넌트 부착 후 Mount가 완료되면 componentDidMount 호출 componentWillMount에서는 props나 state를 변경하면 안된다. componentDidMount에서 DOM에 접근 가능(setTimeout 등) 함수 컴포넌트의 life cycle useEffect 데이터의 개수에 따라 여러번 사용 // state가 변경 될 때마다 실행 useEffect(() => { // something }, [// state]); // 마운트 될 때 처음 한번만 실행 useEffect(() => { // something }, []); // 컴..
-
replace into vs insert into스터디노트/DB 2021. 11. 24. 13:01
replace into MySQL이나 MariaDB에서 테이블에 데이터를 insert하는 명령어 테이블의 키를 기준으로 해서 동일한 키를 입력하면 해당 데이터는 삭제하고 넣으려는 데이터로 대체하여 insert한다. Primary Key 기준으로 작동 예제 이름 : 김태호, 급여 : 10의 데이터를 -> 이름 : 김태호, 급여 : 20으로 변경해보기 create table salary ( name varchar(50) not null comment '이름' primary key, salary int null comment '급여' ) comment '샐러리'; INSERT INTO salary (name, alary) VALUES ('김태호', 10..
-
웹 문서화면 이미지 다운로드 (dom-to-image)스터디노트/Front-end 2021. 11. 23. 15:32
dom-to-image 웹에서 일부 내용을 이미지 파일로 내보낼 수 있게 해주는 라이브러리 DOM요소를 벡터나 레스터 이미지로 변환하는데 사용 사용법 domtoimage.toBlob(document.getElementById('태그 Id')) .then((blob) => { window.saveAs(blob, 'xxx.png'); }) 참고자료 https://www.npmjs.com/package/dom-to-image https://github.com/tsayen/dom-to-image
-
Java - Abstract, Interface스터디노트/Back-end 2021. 11. 19. 15:14
Abstract class란?? 추상 메서드를 포함하는 클래스 객체를 만들 수 없다. 추상 메서드 구현을 위한 서브 클래스가 필요하다 Interface란?? 상수 + 추상 메서드의 집합 변수를 가질 수 없다. 모든 메서드는 public 모든 메서드는 추상 메서드 extends 부모 클래스에서 선언/정의를 하고 자식 클래스에서 메서드/변수를 그대로 사용할 수 있다. implements 부모는 객체만 선언하며 정의는 자식 클래스에서 오버라이딩한다. abstract extends + implements 일부는 재정의, 일부는 그대로 사용
-
UUID스터디노트/알게된 내용 정리하기 2021. 11. 18. 13:08
UUID란?? 네트워크 상에서 고유성이 보장되는 id를 만들기 위한 표준 규약 128비트 숫자, 32자리의 16진수로 표현 8-4-4-4-12 글자마다 하이픈으로 5개의 그룹으로 구분한다. 중앙관리시스템이 있는 환경이라면 각 세션에 일련번호를 부여함으로 유일성을 보장할 수 있지만 분산 환경에서는 개별 시스템이 id를 발급하더라도 유일성이 보장되야한다. 범용고유식별자 UUID (Universally Unique IDentifier) UUID in JavaScript let uuid = 'xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx'.replace(/[xy]/g, function(c) { var r = Math.random()*16|0, v = c == 'x' ? ..