๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • A space that records me :)

์ „์ฒด ๊ธ€78

[Python] MAC์—์„œ psycopg2 ๋ชจ๋“ˆ ์„ค์น˜ํ•˜๊ธฐ [2021.12.13] ํšŒ์‚ฌ์—์„œ mvc์˜ Model, Mapper, xml, handler๋“ฑ์„ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•ด์ฃผ๋Š” generator๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. 2020๋…„๋„ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ ๋•Œ ํŒ€์žฅ๋‹˜๊ป˜์„œ python์œผ๋กœ ๊ฐœ๋ฐœํ•˜์‹  generator๋กœ ๋„ˆ๋ฌด ํŽธํ•ด์„œ ๋‘๋ฃจ๋‘๋ฃจ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์—ˆ๋‹ค. ์ด generator๋Š” mysql์ ‘์†์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ž‘์„ฑ๋˜์–ด ์žˆ์–ด์„œ, postgresql๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœ์ ํŠธ์— ์ ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ˆ˜์ •ํ–ˆ์–ด์•ผ ํ–ˆ๋‹ค. python์—์„œ postgresql์— ์ ‘์†ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” psycopg2 ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•œ๋‹ค. mac์—์„œ psycoge2๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ ์ž‘์—…์„ ํ•˜๋ฉด ๋œ๋‹ค. $ brew install postgresql $ /opt/homebrew/opt/python@3.9/bin/python3.9 -m.. 2021. 12. 13.
[JAVA] java์—์„œ shell command ์‹คํ–‰ 2021.11.24 SpringBoot ๋ฐฑ์—”๋“œ ์„œ๋ฒ„์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋“ฑ๋ก๋œ command๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๊ทธ ์‘๋‹ต์„ ๋ฐ›์•„์˜ค๋Š” ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. ๋ณธ๊ฒฉ์ ์œผ๋กœ ๊ตฌํ˜„ํ•˜๊ธฐ์— ์•ž์„œ ์–ด๋–ป๊ฒŒ ์‹คํ–‰ํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ๋ฐ›์•„์˜ค๋Š”์ง€ ํ•œ๋ฒˆ ๊ฐ„๋‹จํ•œ ์˜ˆ์ œ๋ฅผ ๋งŒ๋“ค์–ด ๋ณด์•˜๋‹ค. ์‹คํ–‰ํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ๋ฐ›์•„์˜ค๋Š” ๊ฒƒ์€ ์ƒ๊ฐ๋ณด๋‹ค ๋งค์šฐ ์‰ฌ์› ๋‹ค. ๋ถ„๋ช… ์ถ”๊ฐ€์ ์ธ ์˜ˆ์™ธ์ฒ˜๋ฆฌ๋Š” ํ•„์š” ํ•  ๊ฒƒ์ด๋‹ค. ๊ฐœ๋ฐœํ™˜๊ฒฝ Spring Boot JAVA 8 Mac OS Java ์ฝ”๋“œ๋กœ shell ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์—๋Š” ๋‘๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค. ์ฒซ๋ฒˆ์งธ๋Š” Runtime ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๊ณ , ๋‘๋ฒˆ์งธ๋Š” ProcessBuilder ์ธ์Šคํ„ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค. Runtime ProcessBuilder (Spring boot์—์„œ๋Š” ProcessBuilder๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•œ๋‹ค.) 1. O.. 2021. 11. 24.
[PostgreSQL] pg_basebackup vs pg_rewind [2021.11.22] PostgreSQL์˜ ๋ฐฑ์—… ๋ช…๋ น ์ค‘ pg_basebackup๊ณผ pg_rewind ๊ฐ„์˜ ์ฐจ์ด์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์•˜๋‹ค. 1. ์ •์˜ pg_basebackup pg_basebackup is used to take a base backup of a running PostgreSQL database cluster. ... Backups are always taken of the entire database cluster; it is not possible to back up individual databases or database objects. ... The backup will include all files in the data directory and tablespaces, includ.. 2021. 11. 22.
[PostgreSQL] PGDATA ๊ฒฝ๋กœ ๋ณ€๊ฒฝ PostgreSQL ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ๊ฒฝ๋กœ์ธ /var/lib ๋กœ ์„ธํŒ…ํ–ˆ๋‹ค๊ฐ€ ๋””๋ ‰ํ† ๋ฆฌ ์šฉ๋Ÿ‰ ๋ฌธ์ œ๊ฐ€ ์šฐ๋ ค๋˜์–ด ๊ฒฝ๋กœ๋ฅผ ๋ณ€๊ฒฝํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. ๊ฒฝ๋กœ ๋ณ€๊ฒฝํ•˜๊ธฐ๋กœ ๊ฒฐ์ •๋˜๊ธฐ ์ „์— ์ด๋ฏธ Pgpool๊ณผ Watchdog ์„ธํŒ…๊นŒ์ง€ ๋ชจ๋‘ ๋งˆ์นœ ์ƒํƒœ์˜€๊ธฐ ๋•Œ๋ฌธ์— Pgpool, Watchdog์˜ ์ผ๋ถ€ ์„ค์ •๊ฐ’๋“ค์„ ๋™์‹œ์— ์ˆ˜์ •ํ•ด์•ผ ํ–ˆ๋‹ค. ๋ณ€๊ฒฝ์‚ฌํ•ญ์€ ๊ทธ๋‹ค์ง€ ๋งŽ์ง€ ์•Š์•˜๊ณ , ๊น”๋”ํ•˜๊ฒŒ ๋๋‚ฌ๋‹ค. ๋ณ€๊ฒฝํ•  ๊ฒฝ๋กœ PGDATA : /data/postgresql/data/ 1. ๊ฒฝ๋กœ ์ƒ์„ฑ mkdir -p /data/postgresql/ mv /var/lib/pgsql/13/data /data/postgresql/ mkdir -p /data/postgresql/archive/ 2. PostgreSQL ์„ค์ • ๋ณ€๊ฒฝ 2.1. postgres ๋ช…๋ น์–ด ์‹คํ–‰์‹œ ์˜ต์…˜ ๋ณ€๊ฒฝ /.. 2021. 11. 21.
[JS/JQuery] ๋น„๋ฐ€๋ฒˆํ˜ธ ์ƒ์„ฑ๊ทœ์น™ ๊ฒ€์‚ฌ ํ•จ์ˆ˜ // ๋น„๋ฐ€๋ฒˆํ˜ธ ์œ ํšจ์„ฑ ์ฒดํฌ // ํŠน์ˆ˜๋ฌธ์ž+์˜๋ฌธ+์ˆซ์ž ํ˜ผํ•ฉ function chkPW(id, pw){ if(pw == null || pw == undefined) { kbnAlert("๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•ด ์ฃผ์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค."); return false; } // !/^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@$!%*#?&])[A-Za-z\d$@$!%*#?&]{8,}$/.test(pw) var num = pw.search(/[0-9]/g); var eng = pw.search(/[a-z]/ig); var spe = pw.search(/[`~!@@#$%^&*|โ‚ฉโ‚ฉโ‚ฉ'โ‚ฉ";:โ‚ฉ/?]/gi); // ์˜๋ฌธ, ์ˆซ์ž, ํŠน์ˆ˜๋ฌธ์ž ํ˜ผํ•ฉ, 8์ž ์ด์ƒ if(num < 0 || eng < 0 || spe < 0 || .. 2021. 11. 14.
[JS/JQuery] ํ˜„์žฌ ์‹œ์Šคํ…œ์˜ OS๋ฅผ ์•Œ์•„๋‚ด๋Š” ํ•จ์ˆ˜ function getDeviceOS() { var os = navigator.userAgent; var ua = navigator.userAgent; if (ua.match(/Win(dows )?NT 6\.0/)) { os = "Windows Vista"; } else if (ua.match(/Win(dows )?(NT 5\.1|XP)/)) { os = "Windows XP"; } else { if ((ua.indexOf("Windows NT 5.1") != -1) || (ua.indexOf("Windows XP") != -1)) { os = "Windows XP"; } else if ((ua.indexOf("Windows NT 7.0") != -1) || (ua.indexOf("Windows NT 6.. 2021. 11. 14.
[Spring] jasypt - properties ์•”ํ˜ธํ™” 2021.11.09 KISA ๊ฐœ๋ฐœ๋ณด์•ˆ ์ ๊ฒ€์—์„œ properties ์ค‘์š”๊ตฌ๋ฌธ ์•”ํ˜ธํ™”์ฒ˜๋ฆฌ๊ฐ€ ๋‚˜์˜ด. ๊ฐœ๋ฐœํ™˜๊ฒฝ STS 4 JAVA 1.8 jasypt-spring-boot-starter v 3.0.3 application.properties ์งˆ๋ณ‘๊ด€๋ฆฌ๋ณธ๋ถ€ ํ”„๋กœ์ ํŠธ ์šด์˜ ์˜คํ”ˆ์ „์— ์™ธ๋ถ€๋กœ ์˜คํ”ˆ๋˜๋Š” ์›น ํ”„๋กœ์ ํŠธ์˜ ๊ฐœ๋ฐœ ์†Œ์Šค์— ๋Œ€ํ•ด์„œ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๋ณด์•ˆ ์ ๊ฒ€์„ ์ง„ํ–‰ํ•˜์˜€๋‹ค. ์ตœ์ข…์ ์œผ๋กœ KISA์˜ Fortifyํˆด์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ณด์•ˆ ์ ๊ฒ€์„ ํ•˜์˜€๋Š”๋ฐ, application.properties์— ๋น„๋ฐ€๋ฒˆํ˜ธ์— ํ•ด๋‹น๋˜๋Š” ์ค‘์š” ์ •๋ณด๊ฐ€ ์•”ํ˜ธํ™” ๋˜์ง€ ์•Š์•˜๋‹ค๋Š” ์ ๊ฒ€ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ›์•˜๋‹ค. Spring Boot framework๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๋™์‹œ ํ”ํžˆ ๋””๋น„ ์ ‘์† ์ •๋ณด๋ฅผ application ์™ธ๋ถ€ ํ”„๋กœํผํ‹ฐ๋กœ ์„ค์ •ํ•ด ๋‘๊ธฐ ๋•Œ๋ฌธ์—, ๊ฐœ๋ฐœ๋‹น์‹œ ์ „ํ˜€ ์—ผ๋‘ํ•˜์ง€ ๋ชป.. 2021. 11. 9.
[Linux] zsh: command not found: ll yjkim@yjkimuicBookPro ~ % ll zsh: command not found: ll ll ๋ช…๋ น์ด ์—†์œผ๋‹ˆ๊นŒ ๋งค์šฐ ๋ถˆํŽธ.. mac์—์„œ alias๋ฅผ ์„ค์ •ํ•ด ์ฃผ์–ด์•ผํ•˜๊ณ , ์„ค์ •ํ•˜๋ฉด ๊ทธ ์„ธ์…˜์—๋Š” ์ ์šฉ๋˜์ง€๋งŒ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ข…๋ฃŒ ํ›„ ์žฌ์‹คํ–‰ํ•˜๋ฉด ์ ์šฉ์ด ๋˜์–ด ์žˆ์ง€ ์•Š๋‹ค. $ echo "alias ll='ls -lGaf'" >> ~/.bash_profile $ source ~/.bash_profile ์œ„ ๋ช…๋ น์–ด ์‹คํ–‰ํ•˜๋ฉด ๋œ๋‹ค. ๊ทธ๋Ÿผ ์ด์ œ ์ž˜๋‚˜์˜จ๋‹ค!! ์˜๊ตฌ์ ์œผ๋กœ ์ด alias๋ฅผ ์ ์šฉํ•˜์ž $ echo "source ~/.bash_profile" >> ~/.zshrc ์ด๋Ÿฌ๋ฉด MacOs์—์„œ ํ„ฐ๋ฏธ๋„์ด ์‹คํ–‰๋  ๋•Œ๋งˆ๋‹ค .zshrc ํŒŒ์ผ์ด ํ•จ๊ป˜ ์‹คํ–‰๋˜์–ด ์ ์šฉ๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. 2021. 11. 2.
[React Native] M1 WEB ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์„ค์ • 2021.10.31 ์ด์ œ ์šฐ๋ฆฌํšŒ์‚ฌ์—์„œ ๋ฆฌ์—‘ํŠธ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐœ๋ฐœ ๋„์ž…ํ•œ๋‹ค๊ณ  ํ•จ. ๊ทธ๋ž˜์„œ ํ•œ๋ฒˆ ์„ธํŒ…ํ•ด๋ณด์•˜๋‹ค.. Node, Watchman, React Native command line interface, Xcode๊ฐ€ ํ•„์š”ํ•˜๋‹ค. 1. ๊ธฐ๋ณธ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ๊ตฌ์„ฑ 1-1. Rosetta ์„ค์น˜ Intel ๊ธฐ๋ฐ˜ ์นฉ์šฉ ์•ฑ์„ ์‹คํ–‰ ํ•  ์ˆ˜ ์žˆ๋Š” lifeline์ด๋‹ค. Rosetta๋Š” ์• ๋ฎฌ๋ ˆ์ดํ„ฐ ํ˜•ํƒœ๋กœ ์ œ๊ณต๋˜๊ณ , ์‚ฌ์ „์— ์„ค์น˜๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฏ€๋กœ ์ˆ˜๋™ ์„ค์น˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค. $ /usr/sbin/softwareupdate --install-rosetta --agree-to-license 1-2. iTerm ์„ค์น˜ ๋ฐ ์„ค์ • iTerm์€ ๋งฅ์—์„œ ๊ฐœ๋ณธ์œผ๋กœ ์ œ๊ณตํ•˜๋Š” ํ„ฐ๋ฏธ๋„๋ณด๋‹ค ์ข€๋” ์œ ์šฉํ•œ ํ„ฐ๋ฏธ๋„ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด๋‹ค. ๊ตณ์ด ํ•„์š” ์—†์„ ๋“ฏํ•˜์—ฌ ์„ค์น˜ํ•˜์ง€ ์•Š์•˜.. 2021. 10. 31.