Programming Project ์ž‘์—…์‹ค/๋‚ด์šฉ ์ •๋ฆฌ

[BackEnd][Maven-PJ] ์‚ฌ๋‚ด ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ ์„œ๋น„์Šค - ๊ฒŒ์‹œํŒ : ๋‹ต๋ณ€ ์‚ญ์ œ

์ฃผ๋‹ˆ์“ฐ๐Ÿง‘‍๐Ÿ’ป 2022. 3. 22. 23:28
728x90
๋ฐ˜์‘ํ˜•

 

 

๐Ÿง‘๐Ÿป‍๐Ÿ’ป Git Hub ์ฃผ์†Œ

 

 

๐Ÿ—‚ ๋ชฉ์ฐจ

โ— [BackEnd][Maven-PJ] ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ ์„œ๋น„์Šค - ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ : ๊ธ€ ๋“ฑ๋ก(์ž‘์„ฑ) / ์ˆ˜์ •

โ— [BackEnd][Maven-PJ] ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ ์„œ๋น„์Šค - ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ : ๋ชฉ๋ก ์กฐํšŒ

โ— [BackEnd][Maven-PJ]๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ ์„œ๋น„์Šค - ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ : ์ƒ์„ธ ์กฐํšŒ

โ— [BackEnd][Maven-PJ]๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ ์„œ๋น„์Šค - ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ : ์‚ญ์ œ

โ— [BackEnd][Maven-PJ] ์‚ฌ๋‚ด ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ ์„œ๋น„์Šค - ๊ฒŒ์‹œํŒ : ๋‹ต๋ณ€ ๋“ฑ๋ก / ์ˆ˜์ •

โ— [BackEnd][Maven-PJ] ์‚ฌ๋‚ด ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ ์„œ๋น„์Šค - ๊ฒŒ์‹œํŒ : ๋‹ต๋ณ€ ์‚ญ์ œ

 

๐Ÿ‘จ‍๐Ÿ‘ฉ‍๐Ÿ‘ง‍๐Ÿ‘ฆ ํšŒ์› ๊ด€๋ จ

โ— [BackEnd][Maven-PJ] ์‚ฌ๋‚ด ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ ์„œ๋น„์Šค - ํšŒ์› ๊ด€๋ จ : ํšŒ์› ๊ฐ€์ž…

 

 

๐Ÿ“š๋ถ€ ๋ก 

โ— [BackEnd][Maven-PJ]๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ ์„œ๋น„์Šค - ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ : Paging์ฒ˜๋ฆฌ

 

๐Ÿค” ๋‚ด๊ฐ€ ๋งŒ๋‚œ Exception

โ— [Exception ์ •๋ฆฌ] org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)

โ— [Vue.js][Spring] Post Data ์ „์†ก ๊ฐ„ null๊ฐ’ ์ „์†ก ๋ฌธ์ œ



 

 

 

 

๐Ÿš€ ๋‹ต๋ณ€ ๋งŒ๋“ค๊ธฐ - ์‚ญ์ œ

    ๐Ÿ”ฝ  Code ๋ถ„์„

        ๐Ÿ“ฆ DevInquryReplyController.java

DevInquryReplyController.java - 62 ~ 72

์ด๋ฒˆ ๋‹ต๋ณ€ ์‚ญ์ œ ํŽธ์—์„œ Controller์—์„œ ์ฃผ๋ชฉํ•ด์•ผํ•  ๋ถ€๋ถ„์€ 62๋ฒˆ์งธ ์ค„ ์ธ ๊ฑฐ ๊ฐ™์•„์š”.

๋จผ์ € @ResponseBody์™€ `@DeleteMapping`์ด ๋ณด์ด๋Š”๋ฐ, `@DeleteMapping`์€ HTTP Method ์ค‘ `DELETE`๋ฅผ ํ†ตํ•ด Front End์™€ ํ†ต์‹ ์„ ํ•˜๊ฒ ๋‹ค๊ณ  ์„ ์–ธํ•ด ์ฃผ๋Š” ๊ฒƒ์ด๊ณ , ์ด ๊ณณ์— () ์†Œ๊ด„ํ˜ธ ์•ˆ์— ๋ฌธ์ž์—ด๋กœ URI์„ ์„ค์ • ํ•ด ์ฃผ๋ฉด ๋˜๋Š” ๊ฒƒ์ด์—์š”.

 

WebConfig.java

์ฐธ๊ณ ๋กœ ํ•ด๋‹น HTTP Method๋กœ Front End์—์„œ ์ •์ƒ ํ†ต์‹ ์„ ํ•˜๋ ค๋ฉด CORS Error๋ฅผ ํ•ด์ œํ•ด ์ฃผ์–ด์•ผ ํ•˜๋Š”๋ฐ, 34๋ฒˆ์งธ ์ค„์ฒ˜๋Ÿผ ํ—ˆ์šฉํ•  HTTP Method๋ฅผ ๋„ฃ์–ด์ฃผ์–ด์•ผ ํ•˜๋Š” ๊ฒƒ์ด์—์š”.

 

๋‹ค์‹œ `DevInquryReplyController.java - 62 ~ 72`๋กœ ๋„˜์–ด์™€์„œ ๋จผ์ € @PathVariable์€ ์ด ๊ณณ์— ๋”ฐ๋กœ ์ค€๋น„ ํ•ด ๋‘” ๊ฒƒ์ด์—์š”.

๊ทธ๋Ÿฐ ๋’ค Service์— ํ•ด๋‹น ๊ธฐ๋Šฅ์— ๋งž๋Š” Method๋ฅผ ํ˜ธ์ถœ ํ•˜๋ฉด์„œ ๊ฒฐ๊ณผ๊ฐ€ ์˜ค๋ฉด ๋ฐ”๋กœ ๋ฐ˜ํ™˜์ด ์ด๋ค„์ง€๊ฒŒ ํ•ด ์ค€ ๊ฒƒ์ด์—์š”.

 

 

 

 

        ๐Ÿ“ฆ DevInquryService.java

devInquryReplyDelete()

 

 

 

 

        ๐Ÿ“ฆ DevInquryServiceImpl.java

devInquryReplyDelete()

DevInquryService๋ฅผ ๊ตฌํ˜„ํ•œ ๊ตฌํ˜„์ฒด DevInquryServiceImpl์„ ํ•œ๋ฒˆ ์‚ดํŽด ๋ณผ ๊ฒƒ์ด์—์š”.

๋จผ์ € Controller์—์„œ ์ „๋‹ฌ๋œ ๋งค๊ฐœ๋ณ€์ˆ˜ ๊ฒŒ์‹œ๊ธ€ ์ผ๋ จ๋ฒˆํ˜ธ(inqrySn)์„ ๊ฐ€์ง€๊ณ  ๋™์ž‘ํ•˜๋Š” Method์ด๊ณ , ๊ฒฐ๊ณผ๊ฐ’์€ ๊ฐ์ฒด(Object)๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ์นœ๊ตฌ์ธ ๊ฒƒ์ด์—์š”.

์ตœ์ดˆ ๊ฒฐ๊ณผ๊ฐ’ ๋ฐ˜ํ™˜์„ ๋‹ด๊ธฐ ์œ„ํ•œ Map Type result๋ฅผ ๋งŒ๋“ค์–ด ์ฃผ๊ณ , `devInquryReplyMapper`์— ํ•ด๋‹น ๊ธฐ๋Šฅ Method `devInqryReplyDelete()`๋ฅผ ํ˜ธ์ถœํ•˜๋Š”๋ฐ, ๋งค๊ฐœ ๋ณ€์ˆ˜๋กœ InqrySn์„ ์ „๋‹ฌํ•ด ์ฃผ๋Š” ๊ฒƒ์ด์—์š”.

์ด ๋•Œ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธฐ๊ฒŒ ๋˜๋ฉด catch๋ฌธ์ด ๋™์ž‘ํ•˜๊ฒŒ ๋  ๊ฒƒ์ด๊ณ , ๋ฌธ์ œ๊ฐ€ ์—†๋‹ค๋ฉด result์— HTTP Method Code์™€ statusText ๊ทธ๋ฆฌ๊ณ , ๊ฒŒ์‹œ๋ฌผ ์ผ๋ จ๋ฒˆํ˜ธ๋ฅผ ๋‹ด์•„์„œ ๋ฐ˜ํ™˜ ํ•ด์ฃผ๋Š” ๊ฒƒ์ด์—์š”.

๋งŒ์•ฝ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ฒจ catch๋ฌธ์ด ๋™์ฐฉํ•˜๊ฒŒ ๋˜๋ฉด result์— ์—ญ์‹œ HTTP Status Code๋ฅผ ๋‹ด๋Š”๋ฐ, ์ด๋ฒˆ์—” Server Internal Error๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” 500์„ ๋‹ด์•„์ฃผ๊ณ , statusText๋ฅผ ๋‹ด์•„์ฃผ๊ณ , ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฒƒ์ด์—์š”.

 

 

 

 

        ๐Ÿ“ฆ DevInquryReplyMapper.java

devInquryReplyDelete()

 

 

 

        ๐Ÿ“ฆ  ReplyMapper.xml

devInquryReplyDelete

 

์œ„์˜ ๋‚ด์šฉ์„ ๋ณด๋ฉด '์–ด๋ž?!' ์ด๋ผ๋Š” ์†Œ๋ฆฌ๊ฐ€ ๋‚˜์˜ค๊ณ , ์ฃผ๋‹ˆํ•˜๋ž‘์„ ๋ฐ”๋ณด๋ผ๊ณ  ์ƒ๊ฐํ•  ์ˆ˜๋„ ์žˆ๋Š” ๊ฒƒ์ด์—์š”.
๋ถ„๋ช… ์‚ญ์ œ๋ฅผ ํ•œ๋‹ค๊ณ  ํ•ด๋†“๊ณ , 'UPDATE ๋ฌธ์„ ๋‚ ๋ฆฐ๋‹ค๊ณ ?!' ๋ผ๊ณ  ๋Š๋ผ์‹ค ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด์—์š”.

์ด ์ด์œ ๋Š” ์•ž ์จ ์ž‘์„ฑํ•œ ๋‹ต๋ณ€ ๋“ฑ๋ก / ์ˆ˜์ • ํŽธ์— ์ด์œ ๋ฅผ ์ ์–ด๋‘” ๊ฒƒ์ด์—์š”.

ํ•ด๋‹น ์ด์œ ๋ฅผ ์•„์…จ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๊ณ , ์ด์ œ ๋‹ต๋ณ€์— ํ•ด๋‹น ํ•˜๋Š” ๋ถ€๋ถ„์— ๋Œ€ํ•ด์„œ๋งŒ ๋‚ด์šฉ์„ ๋ฐ”๊ฟ”์ฃผ๋Š” ๊ฒƒ์ด์—์š”.

๋‹ต๋ณ€ ์—ฌ๋ถ€(ANSWER_AT)์€ ์ด์ œ ๋‹ต๋ณ€์ด ์‚ญ์ œ ๋  ๊ฒƒ์ด๋‹Œ๊นŒ "N"์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ๊ณ , ๋‚˜๋จธ์ง€๋Š” null๋กœ ๋ฐ”๊ฟ”์ฃผ๋ฉด ๋˜๋Š” ๊ฒƒ์ด์—์š”.

ํŠน์ • ๊ฒŒ์‹œ๋ฌผ์— ๋Œ€ํ•ด ์œ„์˜ ์ž‘์—…์„ ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— where ์ ˆ์— ๊ฒŒ์‹œ๊ธ€ ์ผ๋ จ ๋ฒˆํ˜ธ(INQRY_SN)์„ ๋„ฃ์–ด ์ค€ ๊ฒƒ์ด์—์š”.

 

 

 

 

 

    ๐Ÿ”ฝ  ๊ฒฐ๊ณผ ํ™”๋ฉด

POSTMAN Test

 

 

 

์‚ญ์ œ ์ „ DB Table ํ™”๋ฉด

 

 

 

์‚ญ์ œ ๋’ค DB Table ํ™”๋ฉด

 

 

 

 

 

 

 

728x90
๋ฐ˜์‘ํ˜•