hades

[Spring] ์ธ์ฝ”๋”ฉํ•œ ๊ฒฐ๊ณผ๋Š” ๋””์ฝ”๋”ฉ ๋ณธ๋ฌธ

๐Ÿƒ๐Ÿป‍โ™‚๏ธ ๊ธฐ๋ณธํ›ˆ๋ จ/Spring

[Spring] ์ธ์ฝ”๋”ฉํ•œ ๊ฒฐ๊ณผ๋Š” ๋””์ฝ”๋”ฉ

hades1 2024. 8. 22. 14:05

๐Ÿšจ ์—๋Ÿฌ

ํ˜„์žฌ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์œ„์™€ ๊ฐ™์ด ์ €์žฅ๋œ ์ƒํƒœ์ด๋‹ค.

 

๊ธ€ ์ž‘์„ฑ์„ ํ•˜๋ฉด, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ FOOD ํ…Œ์ด๋ธ”์€ ๋ณ€ํ•จ์—†์ด POST ํ…Œ์ด๋ธ”์—๋งŒ ์ถ”๊ฐ€๋˜๋Š” ๊ฒƒ์„ ๊ธฐ๋Œ€ํ–ˆ๋‹ค.

 

ํ•˜์ง€๋งŒ, ์˜ค๋Š˜์˜ ์š”๋ฆฌ ์ž๋ž‘์— ๊ฒŒ์‹œ๊ธ€์ด ์•„๋ฌด ๊ฒƒ๋„ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๋Š”๋‹ค.

 

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๋ณด๋‹ˆ ์ดˆ์ฝœ๋ฆฟ+์ผ€์ดํฌ๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ๋‹ค.

 

๐Ÿ” ๋ถ„์„

๋ฌธ์ œ๋Š” ๊ธ€์„ ์ž‘์„ฑํ•˜๊ณ , redirectํ•  ๋•Œ, UrlEncoder๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฒฝ๋กœ๋ฅผ ์ƒ์„ฑํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

return "redirect:/food/foodInfo/" + URLEncoder.encode(food.getName(), "UTF-8");

 

๐Ÿ‘Š ํ•ด๊ฒฐ

@GetMapping("/foodInfo/{foodName}")
public String foodInfo(@PathVariable(name = "foodName") String foodName, Model model) throws IOException {
    foodName = URLDecoder.decode(foodName, "UTF-8");

    ...

    return "food/foodinfo";
}

PathVariable์—์„œ ๋ฐ›์€ foodName์€ UrlEncoding๋œ ์ƒํƒœ์ด๋ฏ€๋กœ, decode๋ฅผ ๊ฑฐ์นœ ํ›„, ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.

 

์ˆ˜์ • ํ›„, ๊ฒŒ์‹œ๊ธ€์ด ์ž˜ ๋ฐ˜์˜๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.