2022 01 08 - oneso123456789/2022 GitHub Wiki
MyBatis๋ ๋ด๋ถ์ ์ผ๋ก PreparedStatement๋ฅผ ์ด์ฉํด์ SQL์ฒ๋ฆฌํจ. ๋ฐ๋ผ์ SQL์ ์ ๋ฌ๋๋ ํ๋ผ๋ฏธํฐ๋ JDBC์ ๊ฐ์ด '?'๋ก ์นํ๋์ด์ ์ฒ๋ฆฌ๋จ. ๋ณต์กํ SQL์ ๊ฒฝ์ฐ '?'๋ก ๋์ค๋ ๊ฐ์ด ์ ๋๋ก ๋์๋์ง ํ์ธํ๊ธฐ๊ฐ ์ฝ์ง์๊ณ , ์คํ๋ SQL์ ๋ด์ฉ์ ์ ํํ ํ์ธํ๊ธฐ ์ด๋ ค์. ์ด๋ฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์ SQL์ ๋ณํํด์ PaeparedStatement์ ์ฌ์ฉ๋ '?'๊ฐ ์ด๋ค ๊ฐ์ผ๋ก ์ฒ๋ฆฌ๋์๋์ง ํ์ธํ๊ธฐ ์ํด log4jdbc-log4j2 ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํจ
pom.xml
์ 1.16๋ฒ์ ์ log4jdbc-log4j๋ฅผ ์ถ๊ฐํด์ค
1.๋ก๊ทธ ์ค์ ํ์ผ์ ์ถ๊ฐํ๋ ์์
src/main/resources๋ฐ์ log4jdbc.log4j.properties์์ฑ
์์ฑ์ค log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator
๋ฅผ
log4jdbc.spylogdelegator.name=net.sf.log4jdbc.slf4j.Slf4jSpyLogDelegator
๋ก .log๋ฅผ ๋๋ฝ์์ฑํด์ ์ค๋ฅ๋ฐ์
๋ค์์ ์์ฑ์๋ copy&paste๋ฅผ ์ฌ์ฉํ๋์ง ์๋๋ฉด ์ ์ฒด ๊ตฌ์กฐ๋ฅผ ๋ค ์ธ์์ผํ ๋ฏํจ
2.JDBC ์ฐ๊ฒฐ์ ๋ณด ์์ (root-context.xml)
hikariConfig bean์ driverClassName, jdbcUrl property๋ฅผ ์์ ํด์ค
driverClassName์ ์์ ๋ค๋ฅธ value๋ฅผ jdncUrl์ jdbc:oracle ์ฌ์ด์ :log4jdbc๋ฌธ์์ด์ ์ถ๊ฐํด์ค
์ ๋๋ก ์ถ๊ฐํ๋ค๋ฉด ๊ธฐ์กด์TimeMapperTestsํด๋์ค์ ํ
์คํธ ๋ฉ์๋๋ฅผ ์คํ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ก๊ทธ๊ฐ ์ ์ ์ถ๋ ฅ๋จ
์ ํ
์คํธ ์ฒ๋ผ ์คํ์ ์๋นํ ๋ง์ ์์ ๋ก๊ทธ๊ฐ ์ถ๋ ฅ๋จ ์ฒ์์ ๊ฐ๋ฐํ ๋๋ ์ข์ง๋ง ์๊ฐ์ด ์ง๋ ์๋ก ๋ถํธํ๋ค๊ณ ๋๊ปด์ง
๋ด๊ฐ ํ์ํ ์์ค์ ๋ก๊ทธ๋ง ์ถ๋ ฅ์์ผ์ผํ๊ธฐ๋๋ฌธ์ ์ด๋ฐ ์ํฉ์ ํด๊ฒฐํ๊ธฐ ์ํด ํ์ํ๊ฒ์ด ๋ก๊ทธ๋ ๋ฒจ์
ํ
์คํธ ์ฝ๋๊ฐ ์คํ๋ ๋์ ๋ก๊ทธ์ ๊ด๋ จ๋ ์ค์ ์ src/test/resources ๋ฐ์
log4j.xml์ ํด์ค์ผํจ(src/main/resources๊ฐ ์๋ src/test/resources์์ ์ฃผ์)
์ ๊ฒฝ๋ก์ log4j.xml์ ์คํ์ ์ค๋ฅ ๋ฐ์ํจ log4j.DTDํ์ผ์ด ์์ด์ ๋ฐ์ํ๋ ์ค๋ฅ์
ํด๊ฒฐ๋ฐฉ๋ฒ์
"http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd"
DTDํ์ผ์ ์ฃผ์๋ฅผ ๋ด IDE๋ด๋ถ ์ฃผ์๊ฐ ์๋ ์์ ๊ฐ์ฒ๋ผ ์น์ฌ์ดํธ๋ด์ ์ ๋๊ฒฝ๋ก๋ฅผ ์ง์ ํ๋์ง
DTDํ์ผ์ ๋ค์ด๋ก๋ ๋ฐ์์ ๊ฒฝ๋ก์ ๋ฃ๋์ง ๋์ค์ ํ๋๋ฅผ ์ฌ์ฉํ๋ฉด๋จ.
ํ
์คํธ ์ฝ๋๊ฐ ์คํ๋ ๋ ๋ณด์ฌ์ง๋ 'INFO ...' ๋ฉ์์ง๋ log4j.xml์
๋ง์ง๋ง ๋ถ๋ถ์์๋ ์ค์ ์ ์ํฅ์ ๋ฐ๊ธฐ ๋๋ฌธ์.
log4jdbc์์ ์ถ๋ ฅ๋๋ ๋ก๊ทธ๋ฅผ ์กฐ์ ํ๋ ค๋ฉด ์ถ๊ฐ์ ์ธ ๋ฅผ ์ง์ ํด์ ์ฒ๋ฆฌํจ.
๊ธฐ๋ณธ ์ค์ ์ ๋ก๊ทธ๋ info๋ ๋ฒจ์ด๊ธฐ ๋๋ฌธ์ jdbc.audit, jdbc.resultset, jdbc.connection์
๋ฅผ ์ง์ ํด์ warn๋ ๋ฒจ๋ก ์ฌ๋ ค์ค
์์ ์ดํ ๋ค์ TimeMapperTestsํด๋์ค์ ํ
์คํธ ๋ฉ์๋ ์คํ์ ์ด์ ์ ๋นํด์ ๋ก๊ทธ์์ด ์ค์ด๋ ๊ฒ์ ๋ณผ์์์.
๋ก๊ทธ ๋ ๋ฒจ์ ๋ํ ์์ธํ ์ค๋ช
https://logging.apache.org/log4j/2.x/manual/customloglevels.html
์ฐธ๊ณ