Project/๐Ÿช ๊ฐœ์ธ

[Where I Go?] MyBatis ์—ฐ๋™

codingwoo 2023. 3. 9. 19:59

 

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด JDBC ํ”„๋ ˆ์ž„์›Œํฌ์ธ MyBatis๋ฅผ ์—ฐ๋™ํ–ˆ๋‹ค.

 

 

 

MyBatis ์—ฐ๋™ ์ˆœ์„œ
  1. MyBatis๋ฅผ ์“ฐ๊ธฐ ์œ„ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถ”๊ฐ€
  2. ์„ค์ •ํŒŒ์ผ(.xml) 2๊ฐœ ์ƒ์„ฑ
  3. dispatcher-servlet.xml (์„ค์ •ํŒŒ์ผ) ์— MyBatis ๋“ฑ๋ก

 

MyBatis๋ฅผ ์“ฐ๊ธฐ ์œ„ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถ”๊ฐ€

 

1. ์ค‘์•™์ €์žฅ์†Œ ์‚ฌ์ดํŠธ(Maven Repository)์—์„œ mybatis ๊ฒ€์ƒ‰

์Šคํ”„๋ง์„ ์“ด๋‹ค๋ฉด MyBatis Spring๋„ ์ถ”๊ฐ€ํ•ด์ฃผ๋ฉด ์ข‹๋‹ค !

 

2. pom.xml์— ํ•ด๋‹น ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋“ฑ๋ก

pom.xml

 

Maven Dependencies์—์„œ ์ถ”๊ฐ€๋œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํ™•์ธ


 

์„ค์ •ํŒŒ์ผ(.xml) 2๊ฐœ ์ƒ์„ฑ

 

1. mybatis-config.xml ์ƒ์„ฑ

src/main/java - new - Other

 

XML - XML File - Next

 

ํŒŒ์ผ์ด๋ฆ„์€ mybatis-config๊ฐ€ ์ผ๋ฐ˜์ ์ด๋‹ค ! - Finish

ํŒŒ์ผ์ด๋ฆ„์€ mybatis-config๊ฐ€ ์ผ๋ฐ˜์ ์ธ๋ฐ SqlMapConfig๋กœ ์ƒ์„ฑํ•˜๋Š” ์‚ฌ๋žŒ๋„ ์žˆ๋‹ค (์‚ฌ๋žŒ๋งˆ๋‹ค ๋‹ค๋ฆ„ !)

 

mappers ํƒœ๊ทธ ์•ˆ์— ์‚ฌ์šฉํ•  SQL ์„ค์ •ํŒŒ์ผ์„ ์ง‘์–ด๋„ฃ์œผ๋ฉด ๋œ๋‹ค. ๋ณธ์ธ์€ memberSQL์„ ์‚ฌ์šฉํ•  ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ฏธ๋ฆฌ ์ง‘์–ด๋„ฃ์—ˆ๋‹ค.

1. DOCTYPE์ด ์ž˜ ์ ์šฉ๋๋Š”์ง€ ํ™•์ธํ•˜๋ ค๋ฉด <configuration>์ด ์ž๋™์™„์„ฑ ๋˜๋Š”์ง€ ์•ˆ ๋˜๋Š”์ง€๋กœ ํ™•์ธํ•ด๋ณผ ์ˆ˜ ์žˆ์Œ !
2. mappers ๋‚ด๋ถ€๊ฐ€ ๋น„์–ด์žˆ๋”๋ผ๋„ mappers ํƒœ๊ทธ๋ฅผ ์ ์–ด์ค˜์•ผ ์‚ฌ์ดํŠธ๊ฐ€ ๊ตฌ๋™์ด ๋œ๋‹ค !

 


2. sqlMap ํด๋”(ํŒจํ‚ค์ง€) ์ƒ์„ฑ ํ›„, ํŒจํ‚ค์ง€ ์•ˆ์— ์‚ฌ์šฉํ•  SQL ์„ค์ •ํŒŒ์ผ ์ƒ์„ฑ

SQL ์„ค์ •ํŒŒ์ผ๋“ค์„ ๊ด€๋ฆฌํ•  sqlMap์ด๋ผ๋Š” ํด๋”(ํŒจํ‚ค์ง€) ์ƒ์„ฑ

 

sqlMap ํด๋” ์•ˆ์— ํšŒ์›๋“ค์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” memberSQL.xml ์ด๋ผ๋Š” SQL ์„ค์ •ํŒŒ์ผ์„ ์ƒ์„ฑ

 

ํšŒ์›๊ณผ ๊ด€๋ จ๋œ SQL์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” memberSQL ์„ค์ •ํŒŒ์ผ

1. DOCTYPE์ด ์ž˜ ์ ์šฉ๋๋Š”์ง€ ํ™•์ธํ•˜๋ ค๋ฉด <mapper>๊ฐ€ ์ž๋™์™„์„ฑ ๋˜๋Š”์ง€ ์•ˆ ๋˜๋Š”์ง€๋กœ ํ™•์ธํ•ด๋ณผ ์ˆ˜ ์žˆ์Œ !
2. mapperํƒœ๊ทธ์—์„œ ์†์„ฑ namespace๋Š” ํ•„์ˆ˜ ์†์„ฑ!!
  ใ„ด namespace ์†์„ฑ์„ ์ ์ง€ ์•Š์œผ๋ฉด ์‚ฌ์ดํŠธ๊ฐ€ ๊ตฌ๋™๋˜์ง€ ์•Š๋Š”๋‹ค!!

 

dispatcher-servlet.xml (์„ค์ •ํŒŒ์ผ) ์— MyBatis ๋“ฑ๋ก

 

dispatcher-servlet์— MyBatis ๋“ฑ๋ก

classpath:
       ใ„ด src/main/java๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฒฝ๋กœ
       ใ„ด classpath:/mybatis-config.xml   >   src/main/java/mybatis-config.xml์„ ๊ฐ€๋ฆฌํ‚ด !

 

 

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‰ฝ๊ฒŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” MyBatis ์—ฐ๋™ ๋ !