profile
๐Ÿ•” Start Today. ๐Ÿ•š
ํƒœ๊ทธ ๋ชฉ๋ก
์ „์ฒด๋ณด๊ธฐ (128)ํ• ์ผ(49)Java(14)๊ฐœ๋…(9)Spring(8)์•Œ๊ณ ๋ฆฌ์ฆ˜(6)์ž๋ฃŒ๊ตฌ์กฐ(6)sql(5)์—๋Ÿฌ(5)db(5)mysql(4)gil.log(3)protocol(2)ํƒ์ƒ‰(2)class(2)MyBatis(2)JavaScript(2)http(2)String(2)MVC(2)di(2)์„ ํƒ ์ •๋ ฌ(1)COALESCE(1)IoC(1)ํƒ์š• ์•Œ๊ณ ๋ฆฌ์ฆ˜(1)OOP(1)plan(1)ArrayList(1)EXPLAIN PLAN(1)linked list(1)stack(1)queue(1)iteration(1)TreeMap(1)group by(1)Command Object(1)recursion(1)Index(1)ifnull(1)์‹œ๊ฐ„๋ณต์žก๋„(1)์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜(1)DP(1)lambda(1)๋ฒ„๋ธ” ์ •๋ ฌ(1)๊ณ„ํš(1)collections(1)status code(1)๋ฉด์ ‘(1).find()(1)์‚ฐ์ถœ๋ฌผ(1)bean(1)comparable(1)View(1)annotation(1)distinct(1)cmd(1)domain(1)๋ฌธ๋ฒ•(1)entity(1)์Šคํ„ฐ๋””(1)stream(1)ํŠœ๋‹(1)๋‚™์„œ์žฅ(1)comparator(1)const(1)let(1)var(1)replace(1)HttpServletRequest(1)Math.class(1)ํ™˜๊ฒฝ(1)aop(1)LinkedHashMap(1)๊ด€์  ์ง€ํ–ฅ(1)ANSI SQL(1)Big O(1)BFS(1)jquery(1)HashTable(1)LinkedHashSet(1)์ ‘๊ทผ ์ œํ•œ์ž(1)์„œ์‹(1)HashSet(1)hint(1)HashMap(1)์ •๋ ฌ(1)Data Dictionary(1)๋™์  ์ฟผ๋ฆฌ(1)svn(1)Markdown(1)๋งˆํฌ๋‹ค์šด(1)servlet(1)@RequestParam(1)์ž๋ฐ”(1)wrapper(1)VO(1)Map(1)ReferenceType(1)DFS(1)ํ† ์ดํ”„๋กœ์ ํŠธ(1)๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ(1)์›์‹œํƒ€์ž…(1)์ฐธ์กฐํƒ€์ž…(1)optional(1)algorithm(1)iBatis(1)set(1)case(1)DTO(1)exception(1)BigInteger(1)TreeSet(1)PrimitiveType(1)Cheat Sheet(1)stomp(1)IntelliJ(1)web(1)์ƒํƒœ์ฝ”๋“œ(1)

[MySQL] DISTINCT, GROUP BY

DISTINCT๋Š” ์ค‘๋ณต๋˜๋Š” ๋ฐ์ดํ„ฐ ์ œ๊ฑฐ๋ฅผ ์œ„ํ•ด ์ฃผ๋กœ UNIQUEํ•œ Column์ด๋‚˜ Tuple(Record)๋ฅผ ์กฐํšŒํ•˜๋Š” ๊ฒฝ์šฐ์— ์‚ฌ์šฉํ•œ๋‹ค.์ •๋ ฌ(Filesort)ํ•˜์ง€ ์•Š๊ณ  ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•ด, GROUP BY์— ๋น„ํ•ด ์„ฑ๋Šฅ์ด ๋น ๋ฅด๋‹ค.DISTINCT๋Š” ๋‚ด๋ถ€์ ์œผ๋กœ GROUP BY์™€ ๋™

์•ฝ 4์‹œ๊ฐ„ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

gil.todo(201125);

๊ณ ๊ฐ ๋ฉ”์ธ ์Šฌ๋ผ์ด๋“œ์‡ผ, delivery, user, warehouse del_cd = 0 ์ ์šฉ

์•ฝ 5์‹œ๊ฐ„ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

[DB] MySQL NULL ์ฒ˜๋ฆฌ(IFNULL, CASE, COALESCE)

MySQL์—์„œ Column์˜ ๊ฐ’์ด Null์ธ ๊ฒฝ์šฐ๋ฅผ ์ฒ˜๋ฆฌํ•ด์ฃผ๋Š” ํ•จ์ˆ˜๋“ค์€ IFNULL, CASE, COALESCE๊ณผ ๊ฐ™์€ ํ•จ์ˆ˜๋“ค์ด ์žˆ๋‹ค.Orcale์˜ NVL()๊ณผ ๋น„์Šทํ•œ ๊ธฐ๋Šฅ์„ ํ•œ๋‹ค.ํ•ด๋‹น Column์˜ ๊ฐ’์ด NULL์„ ๋ฐ˜ํ™˜ํ•  ๋•Œ, ๋‹ค๋ฅธ ๊ฐ’์œผ๋กœ ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ํ•จ์ˆ˜

์–ด์ œ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

gil.todo(201124);

ํšŒ์‚ฌ์ž„์› ์›”๊ฐ„ ์‹ค์  ์ฐจํŠธ, ๊ณ ๊ฐ ๊ธฐ์—… ์ธ๋„ค์ผ ์Šฌ๋ผ์ด๋“œ ์ƒํ’ˆ ๋ฉ”์ธ

์–ด์ œ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

[jQuery] Selector(์„ ํƒ์ž)

javascript library์ค‘ jQuery๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฐ€์žฅ ํฐ ์ด์œ ๊ฐ€ jQuery Selector(์„ ํƒ์ž) ๋•Œ๋ฌธ์ด๋‹ค.jQuery Selector(์„ ํƒ์ž)๋Š” css Selector๋ฅผ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด ์ฝ”๋“œ ์„ ํƒ์ด ๋งค์šฐ ๊ฐ„๋‹จํ•˜๋‹ค.์š”์ฆ˜ ๋“ค์–ด์„œ๋Š” document.q

2์ผ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

gil.todo(201123);

Chain Maker ๊ฐœ๋ฐœ

2์ผ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

[MyBatis] DBMS๋ณ„ Like ๊ฒ€์ƒ‰

MyBatis์—์„œ Parameter๋ฅผ ํ†ตํ•ด ๊ฒ€์ƒ‰์„ ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, DBMS์— ๋งž๊ฒŒ ๋ฌธ์ž์—ด ํ•ฉ์น˜๊ธฐ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.์•„๋ž˜๋Š” ๋Œ€ํ‘œ์ ์ธ MySQL, Oracle, MS-SQL์—์„œ MyBatis Like ๊ฒ€์ƒ‰ ๋ฐฉ๋ฒ•์ด๋‹ค.

3์ผ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

gil.todo(201122);

Chain Maker ๊ฐœ๋ฐœ

3์ผ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

[javascript] .find()

ES5์—์„œ๋Š” ์ฃผ๋กœ Array.prototype.foreach(), Array.prototype.map(), Array.prototype.filter() ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • ๋˜๋Š” ์ „์ฒด ๊ฐ’์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ๋ฅผ ํ–ˆ๋‹ค.ํ•˜์ง€๋งŒ ์ด method๋“ค์˜ ๋‹จ์ ์€ ์ฒ˜๋ฆฌ๋ฅผ ํ•˜๋Š” ๋„์ค‘ ์ด ๋ชจ๋“  ํ•จ์ˆ˜

4์ผ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

gil.todo(201121);

Chain Maker ๊ฐœ๋ฐœ

4์ผ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

[MyBatis] iBatis, MyBatis ๋น„๊ต ์ •๋ฆฌ(Dynamic Query)

iBatis( ~ 2.3)์˜ ๋ฒ„์ „์ด ๋ณ€๊ฒฝ๋˜๋ฉด์„œ MyBatis(2.5 ~)๋กœ ๋ณ€๊ฒฝ์ด ๋˜์—ˆ๋‹ค.Apache projectํŒ€์—์„œ google code ํŒ€์œผ๋กœ ์ด๋™ํ•˜๋ฉด์„œ ๋ช…์นญ์ด ๋ณ€๊ฒฝ๋ณ€๊ฒฝ๋œ ์‚ฌํ•ญ๋“ค์„ ์ •๋ฆฌํ•ด๋ณด๋ฉด ์•„๋ž˜์™€ ๊ฐ™๋‹ค.Java ์š”๊ตฌ๋ฒ„์ „๋„ iBATIS๋Š” JDK 1.4 ์ด์ƒ์—์„œ

5์ผ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

gil.todo(201120);

Chain Maker๊ฐœ๋ฐœ

5์ผ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

[jQuery] $ ์‹๋ณ„์ž

$ ๊ธฐํ˜ธ๋Š” jQuery๋ฅผ ์˜๋ฏธํ•˜๊ณ , jQuery์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ์‹๋ณ„์ž๋‹ค.jQuery ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‚ด๋ถ€๋ฅผ ์‚ดํŽด๋ณด๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ์ž‘์„ฑ๋˜์–ด ์žˆ๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.$()๊ฐ€ ์˜๋ฏธํ•˜๋Š” ๊ฒƒ์€ jQuery๊ฐ€ ๋งž์ง€๋งŒ ๋” ์ •ํ™•ํ•œ ์˜๋ฏธ๋Š” ์ด๋ฆ„์ด $์ธ ํ•จ์ˆ˜ ๊ทธ ์ž์ฒด, $()๋Š” $

6์ผ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

gil.todo(201119);

Chain Maker ๊ฐœ๋ฐœ

6์ผ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

[Algorithm] ์žฌ๊ท€์™€ ๋ฐ˜๋ณต๋ฌธ

Algorithm ๋ฌธ์ œ๋ฅผ ํ’€๋•Œ ๋ณดํ†ต while์ด๋‚˜ for๋ฌธ ๊ฐ™์€ ๋ฐ˜๋ณต๋ฌธ์„ ์ด์šฉํ•ด ๋ฌธ์ œ๋ฅผ ํ’€๊ณค ํ–ˆ๋‹ค.ํ•˜์ง€๋งŒ ๋ฐ˜๋ณต๋ฌธ ๋งŒ์œผ๋กœ๋Š” ํ’€๊ธฐ ์–ด๋ ค์šด ๋ฌธ์ œ๋“ค์ด๋‚˜, ์žฌ๊ท€ ํ•จ์ˆ˜๋กœ ํ‘ธ๋Š” ๊ฒƒ์ด ๋” ๋น ๋ฅด๊ฒŒ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ๋ฌธ์ œ๋“ค์˜ ๊ฒฝ์šฐ(DFS, DP, Combination ๋“ฑ) ์žฌ๊ท€ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜

2020๋…„ 11์›” 18์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

gil.todo(201118);

Chain Maker ๊ฐœ๋ฐœ

2020๋…„ 11์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

[Java] Lambda Expressions(๋žŒ๋‹ค์‹)

Lambda Expressions(๋žŒ๋‹ค์‹)์€ ์ˆ˜ํ•™์ž ์•Œ๋ก ์กฐ(Alonzo Church)๊ฐ€ ๋ฐœํ‘œํ•œ ๋žŒ๋‹ค ๊ณ„์‚ฐ๋ฒ•์—์„œ ์‚ฌ์šฉ๋œ ์‹์œผ๋กœ, ์ด๋ฅผ ์ œ์ž ์กด ๋งค์นด์‹œ(John Macarthy)๊ฐ€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์— ๋„์ž…ํ–ˆ๋‹ค.Java8 ๋ฒ„์ „๋ถ€ํ„ฐ ๋žŒ๋‹ค์‹(Lamdaba Expressions)์„

2020๋…„ 11์›” 16์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

gil.todo(201117);

Chain Maker ๊ฐœ๋ฐœ

2020๋…„ 11์›” 16์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

[Java] Stream

Stream์€ Java 8์—์„œ ์ถ”๊ฐ€๋˜์—ˆ๊ณ , ๊ธฐ์กด Java I/O์—์„œ ๋‚˜์˜ค๋Š” InputStream, OutputStream๊ณผ๋Š” ๋‹ค๋ฅธ๊ฒƒ์œผ๋กœ ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋žจ์—์„œ ๋‹จ๊ณ„์ ์œผ๋กœ ์ •์˜๋œ ๊ณ„์‚ฐ์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด Interface์ด๋‹ค.Stream์€ stream ํ˜•ํƒœ์˜ ์š”์†Œ์— ํ•จ์ˆ˜ํ˜• ์—ฐ์‚ฐ

2020๋…„ 11์›” 15์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€

gil.todo(201116);

Chain Maker ๊ฐœ๋ฐœ

2020๋…„ 11์›” 15์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€