본문 바로가기
반응형

전체 글241

윈도 스크린샷 꿀팁, 캡처 및 스케치, 클립보드 히스토리 캡처 및 스케치보통 캡처를 할때 캡처 도구를 많이 사용합니다.스크린샷 관련되어서 쉽고 다양한 기능을 제공하기 위해 윈도우10부터는 다른 도구도 제공하는데요."캡처 및 스케치" 라는 도구입니다.이 도구는 윈도우 단축키로 아주 간단하게 사용이 가능한데요윈도우키 + 쉬프트키 + S를 누르시면 상단에 아래와 같은 아이콘이 뜨는걸 확인할 수 있을겁니다.1번 부분에서, 왼쪽부터 다음과 같은 기능을합니다.사각 영역 캡처자유 영역 캡처윈도우 창 선택 캡처전체화면 캡처 (듀얼 모니터면 두 모니터 내용 전체가 캡처)선택을 한 후, 2번처럼 캡처하려는 영역을 선택하여 캡처할 수 있습니다.클립보드 히스토리윈도에서는 클립보드에 내용을 복사해놨던 히스토리를 저장하는 기능을 제공합니다.아래와 같은 단축키를 눌러보시면 무슨 기능인지.. 2024. 10. 14.
react에서 useState로 배열 상태값 변경하기, spread syntax react에서는 배열에 대해 useState가 동작하지 않는다?react에서 아래와 같이 messages라는, 배열을 갖는 state를 변경하려고 시도하면 변경된 값이 반영안되는 것을 확인할 수 있습니다.이럴 때는, spread 문법을 사용해서 상태값을 변경해주면 됩니다.import React, { useState } from 'react';export default function Chat(props) { let [messages, setMessages] = useState(['test1', 'test2']); function change(){ messages.push("test"); setMessages(messages); } return ( { items.map((item, inde.. 2024. 10. 12.
Python CSV 파일 Open할 때 UnicodeDecodeError: utf-8 또는 cp949 codec can't decode byte 에러 해결법 Python CSV 파일을 오픈할 때 UnicodeDecodeError: utf-8 또는 cp949 codec can't decode byte 나는 경우가 있습니다.이럴 때, 어떻게 처리하는지 알아보겠습니다.해결방법1 : open시 encoding 지정우선, notepad++가 필요합니다.아래 주소에서 다운해주세요.https://notepad-plus-plus.org/downloads/ 이제 python에서 오픈하려는 파일을 notepad++로 열어보면,우측 아래에 ANSI / UTF-8 인지 나옵니다.ANSI라면, 아래와 같이 encoding='cp949'를 지정해서 파이썬에서 파일을 오픈합니다.open(file_name, 'w', encoding='cp949')UTF-8이라면, 아래와 같이 파이썬에서.. 2024. 10. 10.
nmap이란? nmap 사용방법, 윈도 포트스캔, nmap 사용법 nmap이란?nmap이란, 보안스캐너 툴의 일종으로,컴퓨터와 서비스를 찾거나, 원격 컴퓨터들의 자세한 정보를 알아낼 수 있습니다.자세한 정보에는 운영 체제, 장치 종류, 운영 시간, 서비스에 쓰이는 소프트웨어 제품, 그 제품의 정확한 버전, 방화벽 등을 확인할 수 있습니다.nmap으로는 아래와 같은 기능을 수행할 수 있습니다.1) 호스트 탐지 - 네트워크상의 컴퓨터들을 확인한다. 예를 들어 ping 응답이나 특정 포트가 열린 컴퓨터들을 나열한다.2) 포트 스캔 - 하나 혹은 그 이상의 대상 컴퓨터들에 열린 포트들을 나열한다.3) 버전 탐지 - 응용 프로그램의 이름과 버전 번호를 확인하기 위해 원격 컴퓨터의 네트워크 서비스에 주의를 기울인다.4) 운영 체제 탐지 - 원격으로 운영 체제와 네트워크 장치의 하.. 2024. 10. 8.
JavaScript말고 TypeScript를 써야 하는이유 : Null 과 Undefined Javascript에서의 변수는 처음에 초기화 되기 전 undefined 형식입니다.어떤 변수는 개발자가 null 로 지정한 후뒤에서 if (someObject === null) { someObject = a; } 이렇게 초기화를 하기도 합니다.하지만 늘 생각대로 코딩이 되지는 않습니다.초기화 될 줄 알았던 코드는 초기화가 안될 수 있고객체가 반환되리라 예상했던 부분에서는 제대로 반환이 안될 수 있습니다.예를 들어 아래와 같은 javascript 코드를 살펴보겠습니다.async function getPerson() { const [row] = await conn.execute("SELECT ... ") // 여기서 문제가 발생했다면? return { name: row[0].name, age: r.. 2024. 10. 6.
JavaScript말고 TypeScript를 써야 하는이유 : 더 생산적이고 안정적인 코드 JavaScript말고 TypeScript써야 하는이유를 한 줄 요약 하면 아래와 같이 표현할 수 있습니다.TypeScript == JavaScript + 생산성 + 안정성!TypeScript는 변수의 형식을 다른 정적 컴파일 언어처럼 작성하도록 되어 있습니다.이는 어쩌면 불필요하게 타이핑을 더 해야만 한다는 것일텐데요, 예를 들어 아래코드를 봅시다.const a = 100const b = "I am Ironman."function add(c, d) { return c + d}위코드를 typescript로 작성하면 아래와 같이 type지정을 위해 키보드를 더 눌러줘야 합니다.const a: number = 100const b: string = "I am Ironman."function add(c: nu.. 2024. 10. 4.
k8s 쿠버네티스 기본용어(node, pod, container) k8s란?k8s는 간단히 말하면 수많은 docker container들을 쉽게 관리하기 위한 툴입니다.k8s는 컨테이너화된 애플리케이션의 배치, 스케일링 및 관리를 자동화하기 위한 오픈소스 시스템입니다.응용프로그램을 구성하는 컨테이너를 논리적 단위로 그룹화하여 관리가 용이하도록 합니다.k8s는 kubernetes와 동일한 용어인데요, k와 s사이에 알파벳이 8개가 있어 축약되어 쓰기 위해 k8s로 불립니다.참고로 kubernetes는 그리스어로 키잡이라는 뜻을 가집니다.k8s node(노드)란?worker 또는 minion으로도 알려진 노드는 컨테이너(워크로드)가 배치되는 머신입니다.클러스터의 모든 노드는 이러한 컨테이너의 기본 네트워크 구성과 통신하기 위해 아래 언급된 구성 요소뿐만 아니라,컨테이너 런.. 2024. 10. 2.
oracle 쿼리 플랜 보기, 오라클 쿼리 실행 계획 보는법, 오라클 실행계획 해석, oracle plan 해석 oracle 쿼리 플랜 확인하는 법oracle 쿼리 플랜 확인하는 법은set autotrace on traceonly 를 실행한 후,쿼리를 실행하면 됩니다.아래와 같이 실행 예시를 보여드립니다.SQL> set autotrace onSQL> select * from scott.emp where empno=7900; EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO---------- ---------- --------- ---------- --------- ---------- ---------- ---------- 7900 JAMES CLERK 7698 03-DEC-81 .. 2024. 9. 28.
SSRF란?, SSRF 대응방안, SSRF 예제, SSRF / CSRF 차이 SSRF란?SSRF(Server-Side Request Forgery)는 서버 측 요청 위조라는 의미로,공격자가 서버의 취약한 부분을 액세스하여 공격하는 기법을 말합니다.공격자는 이를 통해 시스템의 정보를 탈취하거나, 시스템을 조작하는 등의 악의적인 행동을 할 수 있습니다.이러한 공격은 대체로 웹 애플리케이션이 사용자로부터 URL을 받아 그 URL에 요청을 보내는 경우에 발생합니다.SSRF(Server-Side Request Forgery) 대표적인 공격 시나리오를 표현하면 아래와 같습니다.@startuml actor Attacker participant Server database InternalSystemAttacker -> Server: Sends malicious URLServer -> Inter.. 2024. 9. 26.
java의 .class 파일의 맨 처음에는 CAFE BABE (카페 베이베) 가 적힌거 아시나요?, 파일 hex 값 보기 .class 파일의 맨 처음에는 CAFE BABE (카페 베이베) 가 적힌거 아시나요?hex editor로 .java 파일을 컴파일한 .class로 된 파일을 열어보면,아래와 같이 CAFEBABE로 시작하는 것을 확인할 수 있습니다.hex editor 확인방법vscode에서 ctrl + shift +x 버튼을 눌른 후, 플러그인 hex editor 플러그인을 설치해줍니다.vscode에 .class로 된 파일을 drag & drop 한 뒤, open anyway버튼 -> hex editor 를 선택하면, hex 값을 확인할 수 있습니다.CAFE BABE가 된 이유자바의 아버지 제임스 고슬링의 설명 :우리는 예전에 세인트 마이클스 앨리라는 곳에서 점심을 먹곤 했습니다. 지역 전설에 따르면 아주 먼 옛날 그레.. 2024. 9. 24.
오라클 프로시저 생성 방법 , 오라클 프로시저 수정, 오라클 프로시저 문법 오라클 프로시저 생성 문법, 오라클 프로시저 생성 방법오라클 프로시저 생성 문법은 아래와 같습니다.CREATE [OR REPLACE] PROCEDURE 프로시저명[(매개변수 IN 데이터타입, 매개변수 OUT 데이터타입, 매개변수 INOUT 데이터타입)]IS [주요 변수 선언;]BEGIN -- 실행구문; ... [EXCEPTION -- 예외 처리 구문;]END;아래는 PROC_TEST라는 프로시저를 생성하는 예제입니다.이 프로시저를 호출하면, TEST_TABLE이라는 테이블에서 col1, col2를 select합니다.CREATE OR REPLACE PROCEDURE PROC_TEST( pResult out SYS_REFCURSOR)ISBEGIN OPEN pResult FO.. 2024. 9. 22.
vue3 빌드하지않고 사용하기 vue3 without npmvue3에서는 빌드하지 않고, npm 없이 사용할 수 있는 방법이 있습니다.{{ message }}위 코드는 "Hello Vue"라는 값을 가진 message 변수의 값을 출력하는 예제입니다.브라우저에서 확인하면, HTML 코드 작성시에는 {{message}} 라고 써있던 부분이,아래와 같이 Hello Vue로 대체된 것을 확인할 수 있습니다.#javascript,#vue,#vue3,#vuejs 2024. 9. 20.
반응형