๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
728x90
๋ฐ˜์‘ํ˜•

Spring๐Ÿ€23

[SpringBoot] ๋Œ“๊ธ€ API ๊ตฌํ˜„ํ•˜๊ธฐ ๋Œ“๊ธ€ api ๊ตฌํ˜„ํ•˜๊ธฐ ๊ฒฐ๊ณผ ์—”ํ‹ฐํ‹ฐ(Entity) > ํŒŒ์ผ๋ช… : Coment.java import jakarta.persistence.*; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; @Getter @Setter @AllArgsConstructor @NoArgsConstructor @Entity @Table(name = "noticeComment") public class Comment { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @ManyToOne(fetch = F.. 2024. 4. 4.
ID์†์„ฑ ์™€ NAME ์†์„ฑ ํ”„๋ก ํŠธ์—”๋“œ ์™€ ๋ฐฑ์—”๋“œ ์šฐ๋ฆฌ๋Š” ํ”ํžˆ ํ”„๋ก ํŠธ ์—”๋“œ๋ผ๊ณ  ํ•˜๋ฉด HTML, CSS , JavaScript ๋กœ ์•Œ๊ณ  ์žˆ๊ณ , ๋ฐฑ์—”๋“œ๋ผ๊ณ  ํ•˜๋ฉด Controller , Service, Repository, Dto , Entity ๋กœ ์•Œ๊ณ  ์žˆ๋‹ค. ์˜ค๋Š˜์€ ๋†“์ณ์„œ๋Š” ์•ˆ๋  ๊ธฐ๋ณธ ์ง€์‹์ธ ID ์™€ NAME ์†์„ฑ์— ๋Œ€ํ•ด ์ •๋ฆฌํ•˜๊ณ ์ž ํ•œ๋‹ค. ํ”„๋ก ํŠธ์—”๋“œ์—์„œ ๋ฐฑ์—”๋“œ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ• ๋•Œ ๋ฐฑ์—”๋“œ์—์„œ๋Š” ํ”„๋ก ํŠธ์—”๋“œ์˜ ์–ด๋–ค ์†์„ฑ์„ ๋ฐ”๋ผ๋ณด๊ณ  ์ ‘๊ทผํ•˜๋Š”์ง€ ํ—ท๊ฐˆ๋ คํ•˜๋Š”๋ฐ, ๊ฒฐ๋ก ๋ถ€ํ„ฐ ๋งํ•˜์ž๋ฉด, name ์†์„ฑ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ ‘๊ทผํ•œ๋‹ค. ์—ฌ๊ธฐ ์•„๋ž˜ ์•„์ฃผ ํ‰๋ฒ”ํ•œ ๋‚ ์”จ API ๋ฅผ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•œ HTML ์ฝ”๋“œ๊ฐ€ ์žˆ๋‹ค. ์•„๋ž˜๋Š” ํ•ด๋‹น HTML ๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌ ๋ฐ›์€ ๋ฐฑ์—”๋“œ-controller ์ด๋‹ค. ์ปจํŠธ๋กค๋Ÿฌ์—์„œ๋Š” ์ฃผ๋กœ @RequestParam ์–ด๋…ธํ…Œ์ด์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋ก ํŠธ์—”.. 2024. 4. 3.
Controller vs @Restcontroller ์ฐจ์ด์  @Controller vs @Restcontroller ์ฐจ์ด์  Spring์—์„œ Controller ๋ฅผ ์ง€์ •ํ•ด์ฃผ๊ธฐ ์œ„ํ•œ ์–ด๋…ธํ…Œ์ด์…˜(@)์€ @Controller ์™€ @RestController๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ „ํ†ต์ ์ธ Spring MVC์˜ Controller์ธ @Controller์™€ restful ์›น ์„œ๋น„์Šค์˜ ์ปจํŠธ๋กค๋Ÿฌ์ธ @RestController์˜ ์ฃผ์š”ํ•œ ์ฐจ์ด์ ์€ HTTP Response Body๊ฐ€ ์ƒ์„ฑ๋˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ ์ค‘ ์ฐจ์ด์ ์— ๋Œ€ํ•ด ๊ถ๊ธˆํ•˜์—ฌ ์ •๋ฆฌํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค. ํ™”๋ฉด์— ํ‘œ๊ธฐํ•˜๋ ค๋ฉด restcontroller๊ฐ€ ๋˜๋ฉด ์•ˆ๋˜๊ณ  controller๊ฐ€ ๋˜์•ผ ํ•จ rest๋กœ ํ•˜๋ฉด return json์œผ๋กœ ๋˜๊ธฐ ๋•Œ๋ฌธ —- by.๊ตฌ๊ธ€๋ง ๋“ค์–ด๊ฐ€๊ธฐ ์•ž์„œ Controller ๊ฐ€ ๋ญ”์ง€ ๋ถ€ํ„ฐ!! 1. @Controlle.. 2024. 3. 18.
ORM, JPA, MyBatis ์˜์†์„ฑ(Persistence) ๋“ฑ์žฅ! ๋ฐ์ดํ„ฐ๋“ค์ด ํ”„๋กœ๊ทธ๋žจ์ด ์ข…๋ฃŒ๋˜์–ด๋„ ์‚ฌ๋ผ์ง€์ง€ ์•Š๊ณ  ์–ด๋–ค ๊ณณ์— ์ €์žฅ๋˜๋Š” ๊ฐœ๋…์„ ์˜์†์„ฑ(Persistence) ์ด๋ผ๊ณ  ํ•œ๋‹ค. Issue_1 ์ž๋ฐ”์—์„œ ๋ฐ์ดํ„ฐ์˜ ์˜์†์„ฑ์„ ์œ„ํ•œ JDBC ๋ฅผ ์ง€์›ํ•ด์ฃผ๋Š”๋ฐ, ์ด๋Š” ๋งคํ•‘ ์ž‘์—…์„ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ผ์ผ์ด ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜๋Š” ๋ฒˆ๊ฑฐ๋กœ์›€์ด ์žˆ๋‹ค. SQL Mapper ์™€ ORM ์˜ ๋“ฑ์žฅ! SQL Mapper ์™€ **ORM**์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ JDBC Programming ์„ ํ•˜์ง€ ์•Š๋„๋ก ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ด์ฃผ๋Š” Persistence Framework ์ข…๋ฅ˜์ด๋‹ค. Issue_2 ๊ธฐ์กด JDBC ๋งŒ์˜ ์‚ฌ์šฉ์œผ๋กœ ์ฟผ๋ฆฌ ๋ฌธ์„ ๋งŒ๋“ค์–ด ์š”์ฒญํ•˜๋Š” ๊ณผ์ •์€ ์ฟผ๋ฆฌ ๋ฌธ์ด ์กฐ๊ธˆ๋งŒ ๊ธธ์–ด์ ธ๋„ ๊ด€๋ฆฌ๊ฐ€ ํž˜๋“ค๊ณ  ๋ฒˆ๊ฑฐ๋กญ๋‹ค. JPA , MyBatis ๋“ฑ์žฅ! ๋”ฐ๋ผ์„œ JPA ์™€ MyBatis ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ.. 2024. 3. 12.
728x90
๋ฐ˜์‘ํ˜•