๐Ÿ‘จ‍๐Ÿ’ป kimtongting
article thumbnail
[React] Axios / React API ํ†ต์‹  (๋ฆฌ์•กํŠธ api ํ†ต์‹ )

axios ๋ชจ๋“ˆํ™” axios๋Š” ํ†ต์‹ ์œผ๋กœ ํ•œ ๊ณณ์—์„œ๋งŒ ์“ฐ์ด๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์—, ์œ ์ง€๋ณด์ˆ˜ ๋ฐ ๊ฐ€๋…์„ฑ์„ ์œ„ํ•ด ๋ชจ๋“ˆํ™”๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด์ „ ๊ธ€์—์„œ ์ž‘์„ฑํ•œ ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์„ฑ์— ๋”ฐ๋ผ, 'utils' ๋””๋ ‰ํ† ๋ฆฌ์— api.js ๋ผ๋Š” react.js ๋ฅผ ์ƒ์„ฑํ•ด์„œ ์—ฌ๋Ÿฌ ํŽ˜์ด์ง€์—์„œ ํ™œ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค. api.js ์„ ์–ธ import axios from 'axios'; const API =axios.create({ //baseURL: `http://localhost:8080/common`, timeout: 30000, headers: { "Content-Type" : `application/json;charset=UTF-8`, "Access-Control-Allow-Origin": "*", "Accept": "applicat..

article thumbnail
[React] ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์„ฑ / ๋ฆฌ์•กํŠธ ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์„ฑ

ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์„ฑ ํ”„๋กœ์ ํŠธ๋ฅผ ๊ตฌ์„ฑํ•  ๋•Œ, ์ œ์ผ ๋จผ์ € ์„ ํ–‰๋˜์–ด์•ผํ•˜๋ฉฐ ๋ˆ„๊ตฌ๋‚˜๊ฐ€ ํ•œ ๋ˆˆ์— ๋ณผ ์ˆ˜ ์žˆ๋Š” ๊ตฌ์กฐ๋กœ ๋งŒ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์‹œ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž๋“ค ์—ญ์‹œ ๊ธฐ์กด์— ๋ˆ„๊ตฐ๊ฐ€ ๋งŒ๋“ค์—ˆ๋˜ ํ”„๋กœ์ ํŠธ ๋ฃฐ์— ๋”ฐ๋ฅด๋‹ค ๋ณด๋‹ˆ, ์‹ค์ œ๋กœ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ๊ตฌ์„ฑํ•  ์ผ์€ ์—†์–ด์„œ ์ค‘์š”๋„๋Š” ๋‚ฎ๊ฒŒ ํ‰๊ฐ€๋˜์ง€๋งŒ, ์„ค๊ณ„๋ฅผ ํ•˜์‹œ๋Š” ๋ถ„๋“ค์—๊ฒŒ๋Š” ๊ต‰์žฅํžˆ ์ค‘์š”ํ•œ ์ž‘์—…์ด ์•„๋‹ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” React๋ฅผ ๋ฒ ์ด์Šค๋กœ ์„ค๋ช…ํ•˜๊ธฐ ๋•Œ๋ฌธ์— Web์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๊ตฌ์กฐ๋ฅผ ์„ค๋ช…ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ตœ์ƒ์œ„ ๋””๋ ‰ํ† ๋ฆฌ ๊ฒฐ๊ตญ ๋งˆ์ง€๋ง‰์— ์ตœ์ƒ๋‹จ(src ํ•˜์œ„)์—์„œ ๋ณด๊ฒŒ ๋  ๋””๋ ‰ํ† ๋ฆฌ๋Š” '3'๊ฐœ ๋˜๋Š” '4'๊ฐœ ์ž…๋‹ˆ๋‹ค. ๋ฐ”๋กœ 'components', 'resources', 'views', ('utils') * 'components' : ํŠน์ • ๊ธฐ๋Šฅ์ด ๋“ค์–ด๊ฐ„ ํŽ˜์ด์ง€๋“ค์„ ..

article thumbnail
[Node.js] MyBatis / nodejs ์—์„œ Mybatis ์‚ฌ์šฉํ•˜๊ธฐ / ๋งˆ์ด๋ฐ”ํ‹ฐ์Šค Node.js MyBatis

Node.js ์—์„œ์˜ MyBatis ์ฃผ๋ณ€ ์ง€์ธ๋“ค์—๊ฒŒ NodeJS๋ฅผ ๊ถŒ์œ ํ•˜๋ฉด์„œ ์Šคํ„ฐ๋””๋ฅผ ํ•˜๋‹ค MyBatis์— ๋Œ€ํ•ด ์กฐ์‹ฌ์Šค๋Ÿฝ๊ฒŒ ๋ฌป๊ธธ๋ž˜ ๋‹ต๋ณ€์„ ํ•ด์คฌ๋˜ ๊ธฐ์–ต์ด ์žˆ๋‹ค. Spring Framework ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ Restful API ๋ฅผ ์ž์ฃผ ์‚ฌ์šฉํ–ˆ๋˜ MyBatis, ์ตœ๊ทผ์—๋„ ๊ด€๋ จ ์งˆ๋ฌธ์ด ๋“ค์–ด์™”๊ณ , ๋ถ„๋ช… ๋ˆ„๊ตฐ๊ฐ€๋Š” ๊ถ๊ธˆํ•ด ํ•˜์‹ค ๊ฒƒ์ด๊ธฐ์—! ๊ทธ ๋ถ„๋“ค์„ ์œ„ํ•ด ๊ณต์œ ํ•œ๋‹ค. ์„ค์น˜ $ npm install mybatis-mapper ์„ ์–ธ const mysql = require('postgresql'); //RDBMS const mybatisMapper = require('mybatis-mapper'); //์„ค์น˜ํ•œ Mybatis lib ๋งตํ•‘ //๋ณ„๋„๋กœ ์„ค์ •์„ ๋นผ์ฃผ๋Š”๊ฒŒ ์ข‹์œผ๋‚˜, ์˜ˆ์‹œ๋ฅผ ์œ„ํ•ด ํ•œ ๊ณณ์— ์„ ์–ธ. const connec..

article thumbnail
[React] localStorage์™€ sessionStorage

localStorage ์™€ sessionStorage๋ž€? localStorage์™€ sessionStorage ๋‘๊ฐ€์ง€ ๋ฐฉ๋ฒ• ๋ชจ๋‘ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ „์—ญ์— ์ ‘๊ทผ ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ณตํ†ต์ ์ด ์žˆ๋‹ค. ๊ฐ storage์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋Š” ๋ชจ๋‘ ๋ฌธ์ž์—ด๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค๋ฅธ ํƒ€์ž…์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ์—๋Š” JSON ํ˜•ํƒœ๋กœ ๋ณ„๋„ ๊ฐ€๊ณต์ด ํ•„์š”ํ•˜๋‹ค. ๋‘๊ฐ€์ง€ ๋ฐฉ๋ฒ•์˜ ์ฐจ์ด์ ์€ ์ €์žฅ๋˜๋Š” ๋ฐ์ดํ„ฐ์˜ ๋ฒ”์œ„๊ฐ€ ๋‹ค๋ฅด๋‹ค๋Š” ์ ์ด๋‹ค. localStorage๋Š” ๋™์ผํ•œ pc์•ˆ์—์„œ ๋™์ผํ•œ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์‚ฌ์šฉํ–ˆ์„ ๋•Œ์— ์‚ฌ์šฉํ•œ๋‹ค. ๋ฐ์ดํ„ฐ๋ฅผ ์ง์ ‘ ์‚ญ์ œํ•˜์ง€ ์•Š๋Š” ํ•œ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋‹ซ์•„๋„ ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ๋Š” ์žฅ์ ์ด ์žˆ๊ณ , ์ฃผ๋กœ ๋กœ๊ทธ์ธ ์‹œ '์•„์ด๋””์ €์žฅ' ๊ธฐ๋Šฅ์„ ํƒ‘์žฌํ•œ ๋ชจ๋ฐ”์ผ์›น์—์„œ ์ž์ฃผ ์“ฐ์ธ๋‹ค. sessionStorage๋Š” ๋ธŒ๋ผ์šฐ์ € ์ฐฝ์ด ๋‹ซํžˆ๋ฉด ์„ธ์…˜์ด ์ข…๋ฃŒ๋˜๋ฉด์„œ..

article thumbnail
[React] string ์•ˆ์— ${๋ณ€์ˆ˜๋ช…} ์•ˆ๋จ / ${} / ${๋ณ€์ˆ˜๋ช…}

์„ ์–ธ ' ๋Œ€์‹  ` ๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ•œ๋‹ค. ' ์€ single quotation ์ด๊ณ  ` ๋Š” Grave ํ‚ค๋ณด๋“œ์˜ ์ˆซ์ž1 ์™ผ์ชฝ์— ์žˆ๋Š” ๊ธฐํ˜ธ์ด๋‹ค. username์˜ value ๊ฐ€ 'test' ๋ผ๊ณ  ๊ฐ€์ •ํ•ด๋ณด์ž. 'hello ${username}' ์˜ ์ถœ๋ ฅ์€ hello ${username} ๋กœ ๋ชจ๋“  ๊ฐ’์„ String ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•œ๋‹ค. `hello ${username}` ์˜ ์ถœ๋ ฅ์€ hello test ๊ฐ€ ๋œ๋‹ค