profile
๐Ÿ“žํ”ผ๋“œ๋ฐฑ ๋„ˆ๋ฌด๋‚˜ ํ™˜์˜

[SpringBoot] Custom Validation Exception ์ฒ˜๋ฆฌ

Custom Validation Exception ์ฒ˜๋ฆฌ

2023๋…„ 5์›” 29์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[CI/CD] Jenkins์™€ GitHub ์—ฐ๋™ํ•˜๊ธฐ

Jenkins์™€ GitHub ์—ฐ๋™ํ•˜๊ธฐ

2023๋…„ 5์›” 26์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[CI/CD] Jenkins credentials๋กœ application-{secret}.yml ํŒŒ์ผ ๊ด€๋ฆฌ

springboot ํ”„๋กœ์ ํŠธ๋ฅผ Git์œผ๋กœ ์ž‘์—… ํ›„ ๋ฐฐํฌ๋ฅผ ์ง„ํ–‰ํ•ด์•ผ ํ•œ๋‹ค.์ด ๊ณผ์ •์—์„œ DB์˜ ์„ค์ • ์ •๋ณด์™€ ๊ฐ™์€ ๋ฏผ๊ฐํ•œ ์ •๋ณด๋“ค์€ Git์— ์˜ฌ๋ผ๊ฐ€๋ฉด ์•ˆ ๋˜๊ณ  ๋ณด์•ˆ์ฒ˜๋ฆฌ๋ฅผ ํ•ด์„œ ๋ฐฐํฌํ•ด์•ผ ํ•œ๋‹ค.์•ˆ์ „ํ•œ ๋ฐฐํฌ๋ฅผ ์œ„ํ•ด Jenkins credentials์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด์ž(์ฐธ๊ณ 

2023๋…„ 5์›” 1์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[AWS] S3์™€ CloudFront ์—ฐ๋™ํ•˜๊ธฐ

S3์™€ CloudFront ์—ฐ๋™ํ•˜๊ธฐ

2023๋…„ 5์›” 1์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[OS] Process vs Thread

์ธํŠธ๋กœ (์šฉ์–ด ์ •๋ฆฌ) > 1. ์‹คํ–‰ ๋‹จ์œ„ - cpu core์—์„œ ์‹คํ–‰ํ•˜๋Š” ํ•˜๋‚˜์˜ ๋‹จ์œ„๋กœ ํ”„๋กœ์„ธ์Šค์™€ ์Šค๋ ˆ๋“œ๋ฅผ ํฌ๊ด„ํ•˜๋Š” ๊ฐœ๋… (๋ถ€์—ฐ ์„ค๋ช…์ด ์—†๋Š”) ํ”„๋กœ์„ธ์Šค - ํ•˜๋‚˜์˜ ์Šค๋ ˆ๋“œ๋งŒ ๊ฐ€์ง€๊ณ  ์ž‡๋Š” ๋‹จ์ผ ์Šค๋ ˆ๋“œ ํ”„๋กœ์„ธ์Šค ๋™์‹œ์„ฑ - ํ•œ ์ˆœ๊ฐ„์— ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์ผ์ด ์•„๋‹ˆ๋ผ, ์งง์€ ์ „ํ™˜์œผ๋กœ

2023๋…„ 4์›” 30์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[๋ฐฑ์ค€] ์ฒญ์†Œ๋…„ ์ƒ์–ด

๋ฐฑ์ค€ - ์ฒญ์†Œ๋…„ ์ƒ์–ด๋ฐฑํŠธ๋ž˜ํ‚น, ๊ตฌํ˜„ ๋ฌธ์ œ์˜€์œผ๋ฉฐ ๊นŠ์€ ๋ณต์‚ฌ๋ฅผ ํ†ตํ•œ ํƒ์ƒ‰์„ ํ†ตํ•ด ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ์˜€๋‹ค.๋‹ค๋งŒ, Java์˜ ๊ฐ์ฒด ์ฐธ์กฐ๋ฅผ ๋‹ค๋ฃจ๋Š” ๊ฒƒ์ด ๋ฏธ์ˆ™ํ•˜์—ฌ ๊นŠ์€ ๋ณต์‚ฌ๊ฐ€ ์•„๋‹Œ ์ฐธ์กฐ๊ฐ’ ๋ณต์‚ฌ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ๊ฝค๋‚˜ ๊ณ ์ƒํ•˜์˜€๋‹ค..๐Ÿ˜‚๐Ÿ˜‚๐Ÿ˜‚์ƒ์–ด๋Š” ํ•œ ๋ฒˆ์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์นธ์„ ์ด๋™ํ• 

2023๋…„ 4์›” 30์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

GibLab ์ €์žฅ์†Œ ๋ฏธ๋Ÿฌ๋ง GitHub

๋ณต์‚ฌํ•˜๊ณ ์ž ํ•˜๋Š” ์ €์žฅ์†Œ(gitlab)์˜ bare clone์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.์ƒˆ๋กœ์šด ์ €์žฅ์†Œ(github)๋กœ mirror-push๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.git lfs์™€ BFG Repo Cleaner๋ฅผ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.๋ณต์‚ฌํ•˜๊ณ ์ž ํ•˜๋Š” ์ €์žฅ์†Œ(gitlab)์˜ bare clone์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

2023๋…„ 4์›” 29์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[CI/CD] Jenkins์™€ Mattermost ์—ฐ๋™

์ œ๋ชฉ : ์ž„์˜์˜ ์ œ๋ชฉ์„ค๋ช… : ์„ค๋ช…์ฑ„๋„ : ๋ฉ”์„ธ์ง€๋ฅผ ๋ฐ›์„ ์ฑ„๋„ ์„ ํƒ์ด URL์ด Endpoint URL์ด๋ฉฐ ์•„๋ž˜ 2.2 ์„ค์ •์— ์ž…๋ ฅํ•œ๋‹ค.Jenkins ๊ด€๋ฆฌ - ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ด€๋ฆฌ - Available plugins์—์„œMattermost Notification Plugin์„ ์„ค์น˜

2023๋…„ 4์›” 29์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[Java] ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋“œ์™€ ๋™๊ธฐํ™” In Java

๊ณต์œ  ์ž์›: ์—ฌ๋Ÿฌ ์Šค๋ ˆ๋“œ๊ฐ€ ๋™์‹œ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ์ž์›์ž„๊ณ„ ์˜์—ญ: ๊ณต์œ  ์ž์›๋“ค ์ค‘ ์—ฌ๋Ÿฌ ์Šค๋ ˆ๋“œ๊ฐ€ ๋™์‹œ์— ์ ‘๊ทผํ–ˆ์„ ๋•Œ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธธ ์ˆ˜ ์žˆ๋Š” ๋ถ€๋ถ„์ด ๋•Œ, ์ƒ๊ธธ ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๊ฐ€ ๊ฒฝ์Ÿ์ƒํƒœ๊ฒฝ์Ÿ์ƒํƒœ: ๋‘˜ ์ด์ƒ์˜ ์Šค๋ ˆ๋“œ๊ฐ€ ๊ณต์œ  ์ž์›์„ ๋ณ‘ํ–‰์ ์œผ๋กœ ์ฝ๊ฑฐ๋‚˜ ์“ฐ๋Š” ๋™์ž‘์„ ํ•  ๋•Œ ํƒ€์ด๋ฐ์ด๋‚˜

2023๋…„ 4์›” 22์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[DB] MySQL ์„ฑ๋Šฅ ์ตœ์ ํ™”(INDEX)

MySQL๊ณผ ๊ธฐ๋ณธ ์Šคํ† ๋ฆฌ์ง€ ์—”์ง„์ธ 8.0 InnoDB์ธ๋ฑ์Šค๋ฅผ ํ™œ์šฉํ•œ ์ฟผ๋ฆฌ ์ตœ์ ํ™”Table: ๋””์Šคํฌ I/O๋ฅผ ์ค„์ด๋Š” ๊ฒƒ์ด ํ•ต์‹ฌORDER BY: ์ธ๋ฑ์Šค๋ฅผ ์ด์šฉํ•ด ์ •๋ ฌ์ด ์ฒ˜๋ฆฌ๋˜๋Š” ๊ฒฝ์šฐGROUP BY: ์ธ๋ฑ์Šค๋ฅผ ์ด์šฉํ•ด GROUP BY๋ฅผ ํ•˜๋Š” ๊ฒฝ์šฐํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋งŒ ์ฝ๊ฒŒ ๋œ๋‹ค.al

2023๋…„ 4์›” 16์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[DB] ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ๋ฑ์Šค

๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ”์— ๋Œ€ํ•œ ๊ฒ€์ƒ‰ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ์ž๋ฃŒ ๊ตฌ์กฐ์ด๋ฉฐ WHERE ์ ˆ ๋“ฑ์„ ํ†ตํ•ด ํ™œ์šฉ๋œ๋‹ค.๋ฐ์ดํ„ฐ๊ฐ€ ํŠน์ • ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌ๋˜์–ด ์žˆ๋‹ค๋ฉด ๊ฒ€์ƒ‰์„ ๋น ๋ฅด๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋‹ค.์ธ๋ฑ์Šค๋Š” ํ•ญ์ƒ ์ตœ์‹ ์˜ ์ •๋ ฌ ์ƒํƒœ๋ฅผ ์œ ์ง€์ธ๋ฑ์Šค๋„ ํ•˜๋‚˜์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐ์ฒด๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํฌ๊ธฐ์˜ ์•ฝ 10% ์ •

2023๋…„ 4์›” 16์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[๋ฐฑ์ค€] ํ–„๋ฒ„๊ฑฐ ๋ถ„๋ฐฐ

๋ฐฑ์ค€ - ํ–„๋ฒ„๊ฑฐ ๋ถ„๋ฐฐ

2023๋…„ 4์›” 15์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์ฝ”๋“œํŠธ๋ฆฌ] ํฌํƒ‘ ๋ถ€์ˆ˜๊ธฐ - Java

์ฝ”๋“œํŠธ๋ฆฌ - ํฌํƒ‘ ๋ถ€์ˆ˜๊ธฐํฌํƒ‘ ์ •๋ณด arr (N \* M)๊ณต๊ฒฉ ์‹œ์  ์ฒดํฌ ๋ฐฐ์—ด lastAttack (N \* M)๊ณต๊ฒฉ ๊ด€๋ จ ์—ฌ๋ถ€ ์ฒดํฌ ๋ฐฐ์—ด isAttacked (N \* M)์ข…๋ฃŒ ์กฐ๊ฑด ํ™•์ธ(ํฌํƒ‘์ด 1๊ฐœ๋งŒ ์žˆ๋Š” ๊ฒฝ์šฐ)๊ณต๊ฒฉ์ž ์„ ์ •๊ณต๊ฒฉ์ž์˜ ๊ณต๊ฒฉ๋ ˆ์ด์ € ๊ณต๊ฒฉ or ํฌํƒ„ ๊ณต๊ฒฉํฌํƒ‘

2023๋…„ 4์›” 12์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[์ฝ”๋“œํŠธ๋ฆฌ] ํฌํƒ‘ ๋ถ€์ˆ˜๊ธฐ - Python

๐Ÿ“ƒ ๋ฌธ์ œ ์ฝ”๋“œํŠธ๋ฆฌ - ํฌํƒ‘ ๋ถ€์ˆ˜๊ธฐ ํ’€์ด ์‚ฌ์šฉํ•œ ๋ฐฐ์—ด > - ํŒ€์›์˜ ์œ„์น˜ ์ •๋ณด arr (N * N) > - ํŒ€์›๋“ค์˜ ๋™์„  move_arr (N * N) > - ๋ชจ๋“  ํŒ€์˜ ํŒ€์›๋“ค ์œ„์นซ๊ฐ’์„ ๋‹ด์€ ๋ฐฐ์—ด total_team (ํŒ€์› ์ˆ˜ * M) ์ˆœ์„œ ๊ฐ ํŒ€์˜

2023๋…„ 4์›” 12์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

ํšจ์œจ์ ์ธ ํšŒ์˜๋ž€?

ํšจ์œจ์ ์ธ ํšŒ์˜๋ž€ ๋ฌด์—‡์ธ๊ฐ€

2023๋…„ 4์›” 9์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

[SpringBoot] application.yml ๊ตฌ์„ฑ ํŒŒ์ผ ์„ค์ •

application.yml ํ•˜๋‚˜๋กœ ๊ณตํ†ต ์„ค์ • ์ •๋ณด๋“ค์„ ๊ด€๋ฆฌ\---์€ yml ํŒŒ์ผ ๋‚ด์—์„œ ํ”„๋กœํŒŒ์ผ ์˜์—ญ๋ณ„ ๊ฒฝ๊ณ„๋ฅผ ์„ค์ •ํ•˜๋Š” ๊ธฐ๋Šฅ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ ‘์† ์ •๋ณด๋‚ด/์™ธ๋ถ€ API ํ˜ธ์ถœ ์ •๋ณดapplication-db.yml, application-site.yml ๋“ฑ์œผ๋กœ ๋ถ„๋ฆฌํ•ด์„œ ๊ฐ ์„ค์ •

2023๋…„ 4์›” 2์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

[Java] Queue ํด๋ž˜์Šค

- FIFO(First In First Out) : ๋จผ์ € ๋“ค์–ด๊ฐ„ ๊ฒƒ์ด ๋จผ์ € ๋‚˜์˜จ๋‹ค.

2023๋…„ 3์›” 27์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[Java] Stack ํด๋ž˜์Šค

FILO(First In Last Out) : ๋จผ์ € ๋“ค์–ด๊ฐ„ ๊ฒƒ์ด ๋‚˜์ค‘์— ๋‚˜์˜จ๋‹ค.

2023๋…„ 3์›” 27์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[Softeer] ์ขŒ์„ ๊ด€๋ฆฌ

Softeer - ์ขŒ์„ ๊ด€๋ฆฌ

2023๋…„ 3์›” 25์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

[Java] String vs StringBuffer vs StringBuilder

๋ถˆ๋ณ€(immutable)๋ฌธ์ž์—ด ์ˆ˜์ • ์‹œ ์ƒˆ๋กœ์šด String ์ธ์Šคํ„ด์Šค๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค.๋ฉ€ํ‹ฐ์“ฐ๋ ˆ๋“œ ํ™˜๊ฒฝ์—์„œ ์•ˆ์ „(thread-safe)๋ฌธ์ž์—ด ์ถ”๊ฐ€, ์ˆ˜์ •, ์‚ญ์ œ ๋“ฑ์˜ ์—ฐ์‚ฐ์ด ๋นˆ๋ฒˆํ•˜๊ฒŒ ๋ฐœ์ƒํ•˜๋ฉด ํž™ ๋ฉ”๋ชจ๋ฆฌ(Heap)์— ๋งŽ์€ ์ž„์‹œ ๊ฐ€๋น„์ง€(Garbage)๊ฐ€ ์ƒ์„ฑ๋˜์–ด ํž™ ๋ฉ”๋ชจ๋ฆฌ ๋ถ€์กฑ์œผ๋กœ

2023๋…„ 3์›” 25์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท