‡๐Ÿ‘ฉ‍๐Ÿ’ป ‡/º Java 26

[์•Œ๊ณ ๋ฆฌ์ฆ˜] ๋ฒ„๋ธ” ์ •๋ ฌ(Bubble sort)

๐Ÿ“๋ฒ„๋ธ” ์ •๋ ฌ์ด๋ž€? ๋ฒ„๋ธ” ์†ŒํŠธ๋Š” ์›์†Œ์˜ ์ด๋™์ด ๊ฑฐํ’ˆ์ด ์ˆ˜๋ฉด์œผ๋กœ ์˜ฌ๋ผ์˜ค๋Š” ๋“ฏํ•œ ๋ชจ์Šต์ด์–ด์„œ ์ง€์–ด์ง„ ์ด๋ฆ„์ด๋‹ค. ์‹œ๊ฐ„ ๋ณต์žก๋„๊ฐ€ O(n^2)์œผ๋กœ ์ƒ๋‹นํžˆ ๋А๋ฆฐ ์ •๋ ฌ ๋ฐฉ์‹์ด์ง€๋งŒ, ์ฝ”๋“œ๊ฐ€ ๋‹จ์ˆœํ•ด์„œ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค. ์‹œ๊ฐ„ ๋ณต์žก๋„ ๋น„๊ต ๊ตํ™˜ ์ตœ์•…์˜ ๊ฒฝ์šฐ O(n^2) O(n^2) ์ตœ์„ ์˜ ๊ฒฝ์šฐ O(n) O(1) ํ‰๊ท  O(n^2) O(n^2) ๋ฐฐ์—ด์˜ ์ธ์ ‘ํ•œ ๋‘ ์ˆ˜๋ฅผ ๊ฐ๊ฐ ๊บผ๋‚ด์™€ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋น„๊ต๋ฅผ ํ•˜๊ณ , ์™ผ์ชฝ ์›์†Œ๊ฐ€ ์˜ค๋ฅธ์ชฝ ์›์†Œ๋ณด๋‹ค ํฌ๋‹ค๋ฉด ๋‘ ์ˆ˜๋ฅผ ๋ฐ”๊ฟ”์ฃผ๋Š” ์ž‘์—…์„ ์ „์ฒด ๋ฐฐ์—ด์— ๋Œ€ํ•ด ์ˆ˜ํ–‰ํ•œ๋‹ค. ๊ทธ๋ ‡๊ฒŒ ์ „์ฒด ๋ฐฐ์—ด์„ ๋‹ค ํƒ์ƒ‰ํ•˜๊ฒŒ ๋˜๋ฉด, ๊ฐ€์žฅ ํฐ ์›์†Œ๊ฐ€ ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ์— ์œ„์น˜ํ•˜๊ฒŒ ๋œ๋‹ค.๋”ฐ๋ผ์„œ ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ ์›์†Œ๋ฅผ ์ œ์™ธํ•˜๊ณ  ๋‚˜๋จธ์ง€ ์›์†Œ๋“ค์— ๋Œ€ํ•ด ๋˜ ๊ฐ™์€ ์ž‘์—…์„ ์‹œํ–‰ํ•œ๋‹ค. ์ž‘์—… ๋‹จ์œ„๋ฅผ ํšŒ์ฐจ๋ผ๊ณ  ํ–ˆ์„ ๋•Œ, ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๊ฐ€ n์ธ ๊ฒฝ์šฐ n..

[์ž๋ฃŒ๊ตฌ์กฐ] ์ด์ง„ ํƒ์ƒ‰ ํŠธ๋ฆฌ ๊ตฌํ˜„ | Java

๐Ÿ“์ด์ง„ ํƒ์ƒ‰ ํŠธ๋ฆฌ๋ž€? ์ด์ง„ ํŠธ๋ฆฌ์˜ ์†์„ฑ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. 1. ์ค‘๋ณต๋œ ๋…ธ๋“œ๊ฐ€ ์—†์–ด์•ผํ•œ๋‹ค. 2. ๋ชจ๋“  ๋…ธ๋“œ์˜ ์™ผ์ชฝ ์„œ๋ธŒ ํŠธ๋ฆฌ์—๋Š” ํ•ด๋‹น ๋…ธ๋“œ๋ณด๋‹ค ์ž‘์€ ๊ฐ’์„ ์ง€๋‹Œ ๋…ธ๋“œ๋“ค๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค. 3. ๋ชจ๋“  ๋…ธ๋“œ์˜ ์˜ค๋ฅธ์ชฝ ์„œ๋ธŒ ํŠธ๋ฆฌ์—๋Š” ํ•ด๋‹น ๋…ธ๋“œ๋ณด๋‹ค ํฐ ๊ฐ’์„ ์ง€๋‹Œ ๋…ธ๋“œ๋“ค๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค. 4. ์ค‘๋ณต๋œ ๋…ธ๋“œ๊ฐ€ ์—†์–ด์•ผํ•œ๋‹ค. 5. ์™ผ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ์™€ ์˜ค๋ฅธ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ ๋˜ํ•œ ์ด์ง„ํƒ์ƒ‰ํŠธ๋ฆฌ์ด๋‹ค. ์ด์ง„ํƒ์ƒ‰ํŠธ๋ฆฌ์˜ ๋‹จ์  ์ด์ง„ํƒ์ƒ‰ํŠธ๋ฆฌ์˜ ์‚ฝ์ž…๊ณผ ์‚ญ์ œ ์—ฐ์‚ฐ์€ ํƒ์ƒ‰์ดํ›„ ์ด๋ฃจ์–ด์ง€๊ธฐ ๋•Œ๋ฌธ์— ํƒ์ƒ‰์— ํ•„์š”ํ•œ O(h)์ด ์†Œ์š”๋˜๋ฉฐ ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ ์ž…๋ ฅ๊ณผ ์‚ญ์ œ์—๋Š” O(1)์ด ์‚ฌ์šฉ๋œ๋‹ค. ๋”ฐ๋ผ์„œ ์ด ์†Œ์š”๋˜๋Š” ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” O(h)์ด๋ฉฐ ์ตœ์•…์˜ ๊ฒฝ์šฐ ํƒ์ƒ‰๊ณผ ๋™์ผํ•˜๊ฒŒ O(N)์ด ์†Œ์š”๋œ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ด์ง„ ํƒ์ƒ‰ ํŠธ๋ฆฌ๋Š” ํ•œ์ชฝ ๋ฐฉํ–ฅ์œผ๋กœ ๋…ธ๋“œ๊ฐ€ ์ง‘์ค‘๋œ ํŽธํ–ฅํŠธ๋ฆฌ์—์„œ๋Š” ..

[์•Œ๊ณ ๋ฆฌ์ฆ˜] ์ตœ๋‹จ ๊ฑฐ๋ฆฌ | A-Star ์•Œ๊ณ ๋ฆฌ์ฆ˜ (A* algorithm) ๊ตฌ

๐Ÿ“A* ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ž€? A* ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ค‘ ํ•˜๋‚˜๋กœ, ์ถœ๋ฐœ ๋…ธ๋“œ์—์„œ๋ถ€ํ„ฐ ๋ชฉํ‘œ ๋…ธ๋“œ๊นŒ์ง€ ๊ฐ€๋Š” ์ตœ๋‹จ ๊ฒฝ๋กœ๋ฅผ ์ฐพ์•„๋‚ธ๋‹ค. ์ตœ๋‹จ ๊ฒฝ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜ Visualization https://qiao.github.io/PathFinding.js/visual/ ๐Ÿ“์ฝ”๋“œ Node.js package astar; public class Node { Integer x; Integer y; Integer startd; Integer destd; Integer total; Node parents; public Node(Integer x, Integer y) { this.x = x; this.y = y; parents = null; } } Astar.java package astar; import java.util.*;..

[์ž๋ฃŒ๊ตฌ์กฐ] ๋ฆฌ์ŠคํŠธ (List) ๊ตฌํ˜„ (Java)

๐Ÿ“๋ฆฌ์ŠคํŠธ(List) ๋ž€? ์ˆœ์„œ๋ฅผ ๊ฐ€์ง€๋„๋ก ๋ฐ์ดํ„ฐ๋ฅผ ๋‚˜์—ดํ•œ ๊ฒƒ ๋ฆฌ์ŠคํŠธ์—์„œ๋Š” ๊ฐ๊ฐ์˜ ์š”์†Œ๋ฅผ ๋…ธ๋“œ๋ผ๊ณ  ํ•œ๋‹ค. ๋…ธ๋“œ๋Š” ๋ฐ์ดํ„ฐ์™€ ๋‹ค์Œ ๋…ธ๋“œ์˜ ์œ„์น˜๋ฅผ ์ €์žฅํ•œ๋‹ค. ๐Ÿ“๋‹จ์ผ ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ(List) ์˜ ๊ตฌํ˜„ ๐Ÿพ ํด๋ž˜์Šค ๊ตฌ์กฐ 1. ๋…ธ๋“œ ํด๋ž˜์Šค ๋ฐ์ดํ„ฐ์™€ ๋…ธ๋“œ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ํด๋ž˜์Šค package list; public class Node { Integer data; Node next; public Node(Integer data, Node next) { this.data = data; this.next = next; } } 2. ๋ฆฌ์ŠคํŠธ ํด๋ž˜์Šค head : ๋งจ ์ฒ˜์Œ ๋…ธ๋“œ๋ฅผ ์ €์žฅํ•œ๋‹ค. ๋ฆฌ์ŠคํŠธ ํด๋ž˜์Šค์˜ ๋ฉ”์†Œ๋“œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ๐Ÿพ์ƒ์„ฑ์ž head์— null์„ ์ €์žฅํ•œ๋‹ค. public LinkedList() { this.head = nu..

[Java] ์žฌ๊ท€ | ํ•˜๋…ธ์ด ํƒ‘

ํ•˜๋…ธ์ด ํƒ‘ ๊ฒŒ์ž„ https://vidkidz.tistory.com/649 ํ•˜๋…ธ์ด์˜ ํƒ‘ (Tower of Hanoi) ํ•˜๋…ธ์ดํƒ‘ (Tower of Hanoi) ํ”Œ๋ž˜์‹œ๊ฒŒ์ž„์ž…๋‹ˆ๋‹ค ๋‹ค์Œ ๋‘๊ฐ€์ง€ ์กฐ๊ฑด์„ ๋งŒ์กฑ์‹œํ‚ค๋ฉด์„œ ์ฒซ๋ฒˆ์งธ ๊ธฐ๋‘ฅ์— ์žˆ๋Š” ์›ํŒ๋“ค์„ ์„ธ๋ฒˆ์งธ ๊ธฐ๋“ฑ์œผ๋กœ ๊ทธ๋Œ€๋กœ ์˜ฎ๊ธฐ๋Š” ํผ์ฆ ๊ฒŒ์ž„์ž…๋‹ˆ๋‹ค 1. ํ•œ๋ฒˆ์— ํ•˜๋‚˜์˜ ์›ํŒ๋งŒ ์˜ฎ๊ธธ ์ˆ˜ ์žˆ vidkidz.tistory.com 2) ํ•˜๋…ธ์ด ํƒ‘ 3๊ฐœ์˜ ๊ธฐ๋‘ฅ์ด ์žˆ๊ณ  ์›๋ฐ˜์„ ์˜ฎ๊ธธ ๋•Œ ์ž‘์€ ์›๋ฐ˜์ด ํ•ญ์ƒ ํฐ ์›๋ฐ˜ ์œ„์— ์˜ค๊ฒŒ ์˜ฎ๊ธฐ๋Š” ๋ฐฉ๋ฒ• ์›๋ฐ˜์€ ํ•˜๋‚˜์”ฉ๋งŒ ์˜ฎ๊ธธ ์ˆ˜ ์žˆ๋‹ค. ์›๋ฐ˜์„ ์˜ฎ๊ธธ ๋•Œ ์–ด๋””์„œ ์–ด๋””๋กœ ์˜ฎ๊ฒผ๋Š”์ง€ ์ถœ๋ ฅํ•˜์‹œ์˜ค. ์›๋ฐ˜์˜ ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›๊ณ  ๋ชจ๋“  ์›๋ฐ˜์„ ๋‹ค๋ฅธ ๊ธฐ๋‘ฅ์œผ๋กœ ์˜ฎ๊ธธ ๋•Œ ๋ช‡๋ฒˆ์˜ ์ด๋™์ด ๋ฐœ์ƒํ•˜๋Š”์ง€ ์ถœ๋ ฅ ํ•˜์‹œ์˜ค ๊ธฐ๋‘ฅ ๋ฒˆํ˜ธ๋Š” 1~3๋ฒˆ ์›๋ฐ˜์€ ๊ฐ€์žฅ ์ž‘์€ ์›๋ฐ˜์ด 1 ํฐ ์›๋ฐ˜์ผ์ˆ˜๋ก ์ˆซ์ž๋ฅผ 1์”ฉ ..

[์ž๋ฃŒ๊ตฌ์กฐ] ํ (Queue) ๊ตฌํ˜„ (Java)

๐Ÿ“ํ(Queue) ๋ž€? ์„ ์ž…์„ ์ถœ('FIFO') ๋ฐฉ์‹์œผ๋กœ ๊ฐ€์žฅ ๋จผ์ € ๋“ค์–ด์˜จ ๋ฐ์ดํ„ฐ๊ฐ€ ๊ฐ€์žฅ ๋จผ์ € ๋‚˜๊ฐ„๋‹ค ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž…ํ•˜๋Š” ์—ฐ์‚ฐ๊ณผ ์‚ญ์ œํ•˜๋Š” ์—ฐ์‚ฐ์ด ์–‘์ชฝ์—์„œ ์ง„ํ–‰๋œ๋‹ค. ๐Ÿ“ํ ๊ตฌํ˜„ ๋ฉ”์†Œ๋“œ ๋ฐฐ์—ด์„ ์ด์šฉํ•ด์„œ ์ˆซ์ž๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ ์ €์žฅํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ณ€์ˆ˜ ์ƒ์„ฑ ๋ฐฐ์—ด์— ์ง์ ‘ ์ ‘๊ทผํ•ด์„œ ์ˆซ์ž๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ์œผ๋ฉด ์•ˆ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ ‘๊ทผ ์ œ์–ด์ž๋กœ ์ œ์–ด front ๋ณ€์ˆ˜ : ๋งจ ์•ž์— ๋ฐ์ดํ„ฐ๊ฐ€ ์–ด๋””์— ์ €์žฅ๋œ๊ฑด์ง€ ๊ฐ€๋ฆฌํ‚ด rear ๋ณ€์ˆ˜ : ๋‹ค์Œ ๋ฐ์ดํ„ฐ๊ฐ€ ์–ด๋””์— ์ €์žฅ๋ ๊ฑด์ง€ ๊ฐ€๋ฆฌํ‚ด num ๋ณ€์ˆ˜ : ํ˜„์žฌ ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ์˜ ์ˆ˜๋ฅผ ์ €์žฅํ•จ ๐Ÿพ ์ƒ์„ฑ์ž ํฌ๊ธฐ๋ฅผ ์ „๋‹ฌ๋ฐ›์•„์„œ ํ•ด๋‹น ํฌ๊ธฐ๋งŒํผ ์ •์ˆ˜๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฐ์—ด ์ƒ์„ฑ front ๋ฐ rear๋Š” 0 ์„ ์ €์žฅ ๐Ÿพ isEmpty; ํ๊ฐ€ ๋น„์–ด์žˆ๋Š”์ง€ ๊ฒ€์‚ฌ num๊ฐ€ 0์ด๋ฉด true ๋ฐ˜ํ™˜ ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด false ๋ฐ˜ํ™˜ ๐Ÿพ isF..

[Java] ์žฌ๊ท€ | ์œ ํด๋ฆฌ๋“œ ํ˜ธ์ œ๋ฒ•(์ตœ๋Œ€ ๊ณต์•ฝ์ˆ˜ ๊ตฌํ•˜๊ธฐ)

22์™€ 8์˜ ์ตœ๋Œ€ ๊ณต์•ฝ์ˆ˜๋Š” ์œ„์™€ ๊ฐ™์ด ์ •์‚ฌ๊ฐํ˜•์œผ๋กœ ๋ชจ๋‘ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์กŒ์„ ๋•Œ, ๊ฐ€์žฅ ์ž‘์€ ๊ธธ์ด์ธ 2๊ฐ€ ๋œ๋‹ค. ํฐ ์ˆ˜๋ฅผ ์ž‘์€ ์ˆ˜๋กœ ๋‚˜๋ˆ„์—ˆ์„ ๋•Œ ๋‚˜๋จธ์ง€๊ฐ€ 0์ด๋ฉด ์ž‘์€ ์ˆ˜๊ฐ€ ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜์ด๋‹ค. ๋‚˜๋จธ์ง€๊ฐ€ 0์ด ์•„๋‹ˆ๋ฉด ๋‚˜๋จธ์ง€์™€ ์ž‘์€ ๊ฐ’์œผ๋กœ ๋‹ค์‹œ ๋ฐ˜๋ณต ์ฝ”๋“œ public class Euclidean { int euclidean(int x, int y){ int m, n; if(x>y){ m = x; n = y; } else { m = y; n = x; } if(m%n == 0){ return n; } else { int g = m%n; System.out.printf("(%d, %d)", n, g); return euclidean(n, g); } } } public class StackMain { public static..

[์ž๋ฃŒ๊ตฌ์กฐ] ์Šคํƒ (Stack) ๊ตฌ์กฐ (Java)

๐Ÿ“์Šคํƒ์ด๋ž€? ํ›„์ž…์„ ์ถœ('LIFO') ๋ฐฉ์‹์œผ๋กœ ๊ฐ€์žฅ ์ตœ๊ทผ์— ๋“ค์–ด์˜จ ๋ฐ์ดํ„ฐ๊ฐ€ ๊ฐ€์žฅ ๋จผ์ € ๋‚˜๊ฐ„๋‹ค ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž… ์‚ญ์ œํ•˜๋Š” ์—ฐ์‚ฐ์ด ํ•œ์ชฝ์—์„œ๋งŒ ์ง„ํ–‰๋จ ๐Ÿ“์Šคํƒ ๊ตฌํ˜„ ๋ฐฐ์—ด์„ ์ด์šฉํ•ด์„œ ์ˆซ์ž๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ ์ €์žฅํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ณ€์ˆ˜ ์ƒ์„ฑ ๋ฐฐ์—ด์— ์ง์ ‘ ์ ‘๊ทผํ•ด์„œ ์ˆซ์ž๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ์œผ๋ฉด ์•ˆ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ ‘๊ทผ ์ œ์–ด์ž๋กœ ์ œ์–ด ์ˆซ์ž๋ฅผ ์–ด๋””๊นŒ์ง€ ์ €์žฅํ–ˆ๋Š”์ง€ ๊ฐ€๋ฆฌํ‚ค๋Š” ๋ณ€์ˆ˜ top ์ƒ์„ฑ ๐Ÿพ ์ƒ์„ฑ์ž ํฌ๊ธฐ๋ฅผ ์ „๋‹ฌ๋ฐ›์•„์„œ ํ•ด๋‹น ํฌ๊ธฐ๋งŒํผ ์ •์ˆ˜๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฐ์—ด ์ƒ์„ฑ top์— -1 ์ €์žฅ ๐Ÿพ isEmpty ์Šคํƒ์— ๊ฐ’์ด ๋ชจ๋‘ ๋น„์–ด์žˆ๋Š”์ง€ ํ™•์ธ top์ด -1์ด๋ฉด true๋ฅผ ๋ฐ˜ํ™˜ ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด false๋ฅผ ๋ฐ˜ํ™˜ ๐Ÿพ isFull ์Šคํƒ์— ๊ฐ’์ด ๋ชจ๋‘ ์ €์žฅ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธ top์ด ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๋ณด๋‹ค 1์ž‘์œผ๋ฉด true ๋ฐ˜ํ™˜ ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด false๋ฅผ ๋ฐ˜ํ™˜ ๐Ÿพ peek ์ œ์ผ ..

[Java] JSP, JDBC ์‹ค์Šต 2

https://xoxoxoxox.tistory.com/155 ์œ„ ์‹ค์Šต์„ ์ด์–ด์„œ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋” ๊ตฌ์ฒดํ™” ์‹œ์ผœ๋ณด๊ฒ ๋‹ค. ์›น ํŽ˜์ด์ง€ ์š”์ฒญ์˜ URI๋ฅผ ์ด์šฉํ•ด ์•„์ด๋””์™€ ํŒจ์Šค์›Œ๋“œ๋ฅผ ๋„˜๊ฒจ ํšŒ์›๊ฐ€์ž…์„ ์‹œํ‚ค๊ณ , ํšŒ์›๊ฐ€์ž…์ด ๋œ ์œ ์ €์˜ ๊ฒฝ์šฐ ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€์—์„œ ์•„์ด๋”” ํŒจ์Šค์›Œ๋“œ๋ฅผ ๋„˜๊ธฐ๋ฉด ๋กœ๊ทธ์ธ์˜ ๊ธฐ๋Šฅ์„ ํ•˜๋„๋ก ํ•  ๊ฒƒ์ด๋‹ค. ์›น : url์— ์ €์žฅ๋œ ์ฃผ์†Œ๋ฅผ ์š”์ฒญ์— ์ ์–ด์ค€๋‹ค ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ : uri๋ฅผ ์‚ฌ์šฉํ•ด์„œ id๊ฐ’์„ ์ด์šฉํ•ด mapping๋œ ๊ฐ’์„ ์ด์šฉ ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ํ†ตํ•ด์„œ ์›นํŽ˜์ด์ง€ ์š”์ฒญ์ด ํ•ด๋‹น ๊ฒฝ๋กœ๋กœ ๋“ค์–ด์˜ค๊ฒŒ ๋˜๋ฉด, SignInServlet์„ ์‹คํ–‰ํ•˜๋„๋ก mapping ์‹œ์ผœ์ค€๋‹ค. @WebServlet("/signin") GET์œผ๋กœ ์š”์ฒญ์ด ์˜ค๋ฉด, doGet ๋ฉ”์„œ๋“œ๊ฐ€ ์‹คํ–‰๋˜๋ฉด์„œ ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์ด ์ฒ˜๋ฆฌ๋œ๋‹ค. ์ด๋•Œ TomCat์€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ..

[Java] JSP, JDBC ์‹ค์Šต

JDBC; build.gradle, mtsql connecter ์ถ”๊ฐ€, ์ž๋ฐ” ์ฝ”๋“œ ์ž‘์„ฑ ๐Ÿพ Vmware ๋ฆฌ๋ˆ…์Šค Mysql server 1๋Œ€ ์ค€๋น„ 1.1. ๋ฆฌ๋ˆ…์Šค ์ปดํ“จํ„ฐ์— IP์„ค์ • (์ธํ„ฐ๋„ท์ด ๋˜๋„๋ก) vi /etc/sysconfig/network-scripts/ifcfg-ens160 ๋กœ ๋„คํŠธ์›Œํฌ ์„ค์ • ํŒŒ์ผ ์ ‘๊ทผ ONBOOT=yes : ๋ถ€ํŒ…ํ•  ๋•Œ ์ด ๋‚ด์šฉ์„ ์ฐธ๊ณ ํ•ด์„œ ๋„คํŠธ์›Œํฌ๋ฅผ ์„ธํŒ…ํ•˜๊ฒ ๋‹ค IPADDR=10.10.10.3 :์›ํ•˜๋Š” IP๋กœ ์ˆ˜๋™์œผ๋กœ ์„ค์ •ํ•ด์คŒ NETMASK=255.255.255.0 :์„œ๋ธŒ๋„ท ๋งˆ์Šคํฌ ์„ค์ • GATEWAY=10.10.10.2 DNS1=8.8.8.8 init 6 :์žฌ๋ถ€ํŒ…ํ•ด์„œ ์ˆ˜์ •๋œ ๋‚ด์šฉ ์ ์šฉ์‹œํ‚ค๊ธฐ ip addr :IP๊ฐ€ ๋‹ฌ๋ผ์กŒ๋Š”์ง€ ํ™•์ธ! 1.2. DB ์„œ๋ฒ„ ์„ค์น˜ yum install -y ..