01. MyBatis Configuration by JAVA
01-01. Environment class
01-01-01. Environment๋
<aside>
๐ก ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ์์ ๊ดํ ํ๊ฒฝ ์ค์ ์ ๋ณด๋ฅผ ๊ฐ์ง ๊ฐ์ฒด๋ก, MyBatis ํ๊ฒฝ ์ค์ ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ ๋ฐ ์ฌ์ฉํ๋ค.
</aside>
- MyBatis framework ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ์ ๊ณตํ๋ ํด๋์ค์ด๋ค.
01-01-02. Environment ๊ฐ์ฒด ์์ฑ ๋ฐฉ๋ฒ
Environment environment = new Environment(*ํ๊ฒฝ ์ ๋ณด ์ด๋ฆ*
, *ํธ๋์ญ์
๋งค๋์ ์ข
๋ฅ*
, *์ปค๋ฅ์
ํ ์ฌ์ฉ ์ฌ๋ถ*);
- Environment ํด๋์ค๋ ๊ธฐ๋ณธ ์์ฑ์๋ฅผ ์ ๊ณตํ์ง ์๋๋ค.
- ๊ฐ์ฒด ์์ฑ ์ ์ ๋ฌํ๋ ๋งค๊ฐ๋ณ์๋ ์ฐจ๋ก๋ก ๋ค์๊ณผ ๊ฐ๋ค.
- ํ๊ฒฝ ์ ๋ณด ์ด๋ฆ : ์์ฑํ ํ๊ฒฝ ์ ๋ณด์ ์ด๋ฆ์ ์ค์ ํ๋ค.
- ํธ๋์ญ์
๋งค๋์ ์ข
๋ฅ๋ ๋ ๊ฐ์ง๊ฐ ์๊ณ , ์์ ํ ํธ๋์ญ์
๊ด๋ฆฌ๋ฅผ ์ํด JdbcTransactionFactory ์ฌ์ฉ์ ๊ถ์ฅํ๋ค.
- JdbcTransactionFactory : ์ฝ๋ ์์ฑ์ ํตํด ์๋์ผ๋ก ์ปค๋ฐ์ ์กฐ์
- ManagedTransactionFactory : JDBC๊ฐ ์๋์ผ๋ก ์ปค๋ฐ์ ์ํ
- ์ปค๋ฅ์
ํ ์ฌ์ฉ ์ฌ๋ถ์ ๋ฐ๋ผ ๋ ๊ฐ์ง ์ค์ ์ ํ ์ ์๊ณ , ์ฌ์ฉํ๋ ๊ฒฝ์ฐ Connection ์๋ ๋ฐ ๋ฉ๋ชจ๋ฆฌ ํจ์จ์ด ์ฆ๋๋๋ ์ฅ์ ์ด ์๋ค.
- ์ด๋ค ์ค์ ์ ์ฌ์ฉํ๋ ์์ฑ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ์ ์ํ ์ค์ ์ ๋ณด(๋๋ผ์ด๋ฒ, ๋ฐ์ดํฐ๋ฒ ์ด์ค URL, USER, ๋น๋ฐ๋ฒํธ)๋ฅผ ์ธ์๊ฐ์ผ๋ก ์ฃผ์ด์ผ ํ๋ค.
- PooledDataSource : ConnectionPool ์ฌ์ฉ
- UnpooledDataSource : ConnectionPool ์ฌ์ฉํ์ง ์์
01-01-03. Environment class ์ฌ์ฉ ์์
Environment environment = new Environment("dev"
, new JdbcTransactionFactory()
, new PooledDataSource(
DRIVER, URL, USER, PASSWORD));
01-02. Configuration class
01-02-01. Configuration์ด๋
<aside>
๐ก ํ๊ฒฝ ์ค์ ์ ๋ณด Environment ๊ฐ์ฒด๋ฅผ ๊ฐ์ง๊ณ ์์ฑํ MyBatis ์ค์ ๊ฐ์ฒด๋ก, DB ์ ์ ๊ด๋ จ ์ ๋ณด, mapper ๋ฑ๋ก, ๋ณ์นญ ๋ฑ๋ก ๋ฑ myBatis ์ ์ญ ์ค์ ์ ๋ณด๋ฅผ ๋ด๊ณ ์๋ค.
</aside>