MongoDB ๋ž€?
ยท
DB/Mongo
MongoDB๋Š” ๋†’์€ ์„ฑ๋Šฅ, ๋†’์€ ๊ฐ€์šฉ์„ฑ ๋ฐ ์‰ฌ์šด ํ™•์žฅ์„ฑ์„ ์ œ๊ณตํ•˜๋Š” ๊ต์ฐจ ํ”Œ๋žซํผ, Document ์ง€ํ–ฅ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ž…๋‹ˆ๋‹ค. Collection ์ด๋ž€? ์ปฌ๋ ‰์…˜์€ ๋ชฝ๊ณ DB ๋ฌธ์„œ๋“ค์˜ ๊ทธ๋ฃน์ž…๋‹ˆ๋‹ค. RDBMS ํ…Œ์ด๋ธ”๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ปฌ๋ ‰์…˜์€ ๋‹จ์ผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด์— ์กด์žฌํ•˜๋ฉฐ, ์ปฌ๋ ‰์…˜์€ ์Šคํ‚ค๋งˆ๋ฅผ ๊ฐ•์ œํ™”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Document ๋ž€? Document๋Š” ํ‚ค-๊ฐ’ ์Œ์˜ ์ง‘ํ•ฉ์ž…๋‹ˆ๋‹ค. ๋™์  ์Šคํ‚ค๋งˆ๋ž€ ๋™์ผํ•œ ์ปฌ๋ ‰์…˜์˜ Document๊ฐ€ ๋™์ผํ•œ ํ•„๋“œ ๋˜๋Š” ๊ตฌ์กฐ๋ฅผ ๊ฐ€์งˆ ํ•„์š”๊ฐ€ ์—†๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•˜๋ฉฐ, ์ปฌ๋ ‰์…˜ Document์˜ ๊ณตํ†ต ํ•„๋“œ์—๋Š” ๋‹ค๋ฅธ ์œ ํ˜•์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. RDBMS์™€ ์ฐจ์ด์  RDBMS MongoDB Database Database Table Collection Tuple/Row Document column ..
[Mongo] ๊ฐ„๋‹จํ•œ ์‹ค์Šต
ยท
DB/Mongo
์œ„ ์ฐฝ์€ ์˜ˆ์ œ๋ฅผ ์œ„ํ•œ ์‰˜์ฐฝ์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฅผ ๋„ฃ์Šต๋‹ˆ๋‹ค. db.inventory.insertMany([ { item: "journal", qty: 25, status: "A", size: { h: 14, w: 21, uom: "cm" }, tags: [ "blank", "red" ] }, { item: "notebook", qty: 50, status: "A", size: { h: 8.5, w: 11, uom: "in" }, tags: [ "red", "blank" ] }, { item: "paper", qty: 10, status: "D", size: { h: 8.5, w: 11, uom: "in" }, tags: [ "red", "blank", "plain" ] }, { item: "planner", q..
๊ฐœ๋ฐœ์ž์— ๋Œ€ํ•œ ๋‚˜์˜ ์ƒ๊ฐ
ยท
TIP
๊ฐœ๋ฐœ์ž๋ž€ ๊ฑด ํ˜„์žฌ ๊ธฐ์ˆ ๋กœ ๊ฐ€๋Šฅํ•œ ๋Œ€๋ถ€๋ถ„์˜ ๋ชจ๋“  ์ผ๋“ค์„ ๊ฐ€์žฅ ๋จผ์ € ๊ธฐ๊ณ„์—๊ฒŒ ์ผ์ž„ ์‹œ์ผœ๋ฒ„๋ฆฌ๋Š” ์ง์—…์ž…๋‹ˆ๋‹ค. ์‚ฌ๋žŒ์€ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋™๋ฌผ์ž…๋‹ˆ๋‹ค, ๋„๊ตฌ๊ฐ€ ๋‚˜์™”์œผ๋ฉด ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ๊ฒƒ์ด์ฃ . Hello World์˜ printf ๋ถ€๋ถ„์˜ ๋ชธ์ฒด (์–ด์…ˆ๋ธ”๋ฆฌ์–ด ์ˆ˜์ค€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ) ์กฐ์ฐจ ๋ ˆํผ๋Ÿฐ์Šค ์—†์ด๋Š” ๊ตฌํ˜„ํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿผ ํ‘œ์ค€์ž…์ถœ๋ ฅ ๋„๊ตฌ๋“ค์€ ๋‹ค ๊ฐ–๋‹ค ์“ฐ๋Š”๊ฒŒ ์‹ค๋ ฅ์ด๋ผ๊ณ  ๋งํ•˜๋ฉด์„œ ์ƒˆ๋กœ์šด ๋ ˆํผ๋Ÿฐ์Šค๋ฅผ ์“ฐ๋ฉด ์‹ค๋ ฅ์ด ์•„๋‹ˆ๋ผ๊ณ  ๋งํ•  ์ˆ˜ ์žˆ์„๊นŒ์š”.
JPA(Java Persistence API)๋ž€ ๋ฌด์—‡์ธ๊ฐ€?
ยท
Languages/JAVA
JPA(Java Persistence API)๋Š” ์ž๋ฐ” ORM ๊ธฐ์ˆ  ํ‘œ์ค€์ž…๋‹ˆ๋‹ค. JPA๋Š” ์•„๋ž˜ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ JDBC ์‚ฌ์ด์—์„œ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค. ORM(Object-Relational Mapping)์€ ์ด๋ฆ„ ๊ทธ๋Œ€๋กœ ๊ฐ์ฒด์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๋งคํ•‘ํ•œ๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค. ORM ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ๊ฐ์ฒด์™€ ํ…Œ์ด๋ธ”์„ ๋งคํ•‘ํ•ด์„œ ํŒจ๋Ÿฌ๋‹ค์ž„์˜ ๋ถˆ์ผ์น˜ ๋ฌธ์ œ๋ฅผ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค์— ์ €์žฅํ•  ๋•Œ, Insert SQL์„ ์ง์ ‘ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๊ฐ์ฒด๋ฅผ ๋งˆ์น˜ ์ž๋ฐ” ์ปฌ๋ ‰์…˜์— ์ €์žฅํ•˜๋“ฏ์ด ORM ํ”„๋ ˆ์ž„์›Œํฌ์— ์ €์žฅํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. JPA ์†Œ๊ฐœ ๊ณผ๊ฑฐ ์ž๋ฐ” ๋นˆ์ฆˆ(EJB)๋ผ๋Š” ๊ธฐ์ˆ  ํ‘œ์ค€์„ ๋งŒ๋“ค์—ˆ๋Š”๋ฐ ๊ทธ ์•ˆ์—๋Š” ์—”ํ‹ฐํ‹ฐ ๋นˆ์ด๋ผ๋Š” ORM ๊ธฐ์ˆ ๋„ ํฌํ•จ๋˜์–ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋„ˆ๋ฌด ๋ณต์žกํ•˜๊ณ  ๊ธฐ์ˆ  ์„ฑ์ˆ™๋„๋„ ๋–จ์–ด์กŒ์œผ๋ฉฐ ์ž๋ฐ” ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ(J2EE) ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„์—์„œ๋งŒ ๋™์ž‘ ..
์‚ผ๊ฒน์‚ด ํฌ์œผ~~
ยท
Life
์˜ค๋žœ๋งŒ์— ์‚ผ๊ฒน์‚ด์— ์†Œ์ฃผ ํฌ์œผ~~
์—ฐ๊ธฐ๊ธฐ์ž๋Š” ๋Œ€๋‹จํ•˜๋„ค์š”.
ยท
Life
ํ„ฑ๊ฑธ์ด ํ•˜๋Š”๋ฐฉ๋ฒ•
ยท
Life
ํ„ฑ๊ฑธ์ด๋Š” ์ด๋ ‡๊ฒŒ ํ•ด์•ผํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.
[Python] ์•ˆ๋“œ๋กœ์ด๋“œ ๋งˆ์šฐ์Šคํƒญ ์ด๋ฒคํŠธ
ยท
Languages/Python
ppadb์™€ pynput์„ ํ™œ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. ๋””๋ฐ”์ด์Šค ํ‚ค๊ฐ’์€ adb devices๋ฅผ ํ†ตํ•ด ์–ป์–ด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. from ppadb.client import Client as AdbClient from pynput.keyboard import Key, Listener import time # Default is "127.0.0.1" and 5037 client = AdbClient(host="127.0.0.1", port=5037) device = client.device("ce0*******642702") # device.shell("logcat", handler=dump_logcat) isNotPressRight = True isNotPressLeft = True isNotPressUp = True isN..
[scrcpy] scrcpy ๋ž€?
ยท
Tool/scrcpy
์•ˆ๋“œ๋กœ์ด๋“œ ๊ธฐ๊ธฐ๋ฅผ USB๋‚˜ over TCP/IP๋ฅผ ํ†ตํ•ด ์—ฐ๊ฒฐํ•˜๊ณ  ์ปดํ“จํ„ฐ์— ํ™”๋ฉด์„ ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฃจํŠธ ๊ถŒํ•œ์ด ์—†์–ด๋„ ๋ฉ๋‹ˆ๋‹ค. GNU/Linux, Windows and macOS์—์„œ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค. It focuses on: ๊ฐ€๋ฒผ์›€ (native, displays only the device screen) ์„ฑ๋Šฅ (30~60fps) ํ’ˆ์งˆ (1920×1080 or above) ๋‚ฎ์€ ์ง€์—ฐ์†๋„ (35~70ms) ์งง์€ ๊ตฌ๋™์‹œ๊ฐ„ (~1 second to display the first image) ์•ˆ๋“œ๋กœ์ด๋“œ ๊ธฐ๊ธฐ์— ๋ณ„๋„์˜ ์„ค์น˜๊ฐ€ ํ•„์š”์—†์Šต๋‹ˆ๋‹ค. Requirements ์•ˆ๋“œ๋กœ์ด๋“œ ๊ธฐ๊ธฐ API 21 (Android 5.0) ํ•„์š”. enabled adb debugging ๊ธฐ๊ธฐ์— ๋””๋ฒ„๊น…๋ชจ๋“œ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Windows ..
[c++] vsCode์—์„œ Helloworld
ยท
Languages/C_C++
์„ ํ–‰ ์ž‘์—… 2020/06/21 - [Tool/vsCode] - [vsCode] c++ ๊ฐœ๋ฐœํ™˜๊ฒฝ ๊ตฌ์ถ• 2020/06/21 - [์–ธ์–ด/C_C++] - [c++] choco๋กœ MinGW ์„ค์น˜ ๋ฐฉ๋ฒ• Check your MinGW installation Mingw-w64 ์„ค์น˜๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•ด๋ด…๋‹ˆ๋‹ค. powerShell์—์„œ ํ•ด๋‹น ์ปค๋งจ๋“œ๋ฅผ ์ž…๋ ฅํ•ด๋ด…๋‹ˆ๋‹ค: g++ --version gdb --version ์ปค๋งจ๋“œ๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ๋™์ž‘ํ–ˆ์œผ๋ฉด ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•ด์ค๋‹ˆ๋‹ค. mkdir projects cd projects mkdir helloworld cd helloworld code . Add a source code file File Explorer title bar์—์„œ, New File button ์„ ํด๋ฆญ..