Zephyrus Project ์งํ์ค์ ์ด์ผ๊ธฐ๋ค. Thread - Document BottomUp ์ ํด๋ ์ข๊ฒ ๊ณ ์.
- ''Database Connection Pool ์ ์ฌ์ฉํ๋ ํ์ง ์๋, DB ์์์ ์ป์ด์ค๋ ๋ถ๋ถ์ ํ๋์ end point์์ ์ฒ๋ฆฌํ์ธ์. ์ฒ์๋ถํฐ ์ด๋ฅผ ๊ณ ๋ คํ์ง ์์ ๊ฒฝ์ฐ, *.java ์์ Database Connection์ ์์ฑํ๊ณ , ์ฌ์ฉํ๋ ์ฝ๋๋ฅผ ๋จธ์ง์์ ๋ณด๊ฒ ๋ ๊ฒ๋๋ค. ์ด๋ ์ ๋ง ์ต์
์
๋๋ค. pool์ ์ฐ๋ค๊ฐ ์ฐ์ง ์๊ฒ ๋ ๊ฒฝ์ฐ๋?๋ค์ pool์ ์จ์ผ ํ ๊ฒฝ์ฐ๋? ๋ ์ข์ ๋ฐฉ๋ฒ์ interface๋ฅผ ์ ์ ์ํด์ ์ฌ์ฉํ๊ณ , ์ค์ DB ์์
์ ํ๋ ํด๋์ค๋ Factory ๋ฅผ ํตํด ์์ฑํ๋๊ฒ ์ข์ต๋๋ค. ์ด๋ค ๋ฐฉ์์ผ๋ก DB๋ฅผ ๋ค๋ฃจ๋ ๊ฐ์ ์์์ ๋ณด๊ธฐ์ ํญ์ ๊ฐ์์ผ ํ์ฃ . --์ด์ ์ฐ
- ์ ์๊ฒ ์ด๋ค ์ฐ์ ์ acess๋ ์ฐ๋ํ๋ ๊ฑฐ๋ ๊ณต๋ถํด๋์๊ป์ ์๋ํ๋ฉด ์ฑ
์ ๊ทธ๋ ๊ฒ ๋์์ ๋ณด๊ธฐ ํธํด์๋ฆฌ...-,-;;;
์ ๋ชจ๋ ๋ด์~~
- ์ ๊ฐ ์ ๋ฒํ๊ธฐ์ ์์
ํ๋ ๋ฉ์ ์ ธ๊ฐ ์์ต๋๋ค. ์ด๋ฒ ํ๋ก์ ํธ๋ฅผ ํ๋ฉด์ ์ฐธ๊ณ ํ ์ ์๋ ๋ถ๋ถ์ ์ฐธ๊ณ ํ์ธ์. ์ ๋ฒ ํ๊ธฐ์ ์ ๋ณด์ฒ๋ฆฌ ์ค์ต์ด๋ ๊ณผ๋ชฉ์์ ํ๋ก์ ํธ๋ก ํ๋ ๊ฒ์
๋๋ค. UP ๋ก Process ๋ฅผ ์งํํ์๊ณ , ๋์(?) ์ ์๋ฅผ ์ํด์ ๋ง์ ๋ฌธ์๋ฅผ ๋จ๊ธฐ๊ธด ํ๋๋ฐ.. ๋ถ์กฑํ ๋ฉด์ด ๋ง๊ตฐ์ ใ
ก.ใ
ก;; http://www.inazsoft.net/projectworktool.html ์์ ๋ค์ด๋ก๋ ๋ฐ์ ์ ์์ต๋๋ค. - ๊ตฌ๊ทผ
์ ๋ง ๋ง์ ๋ฌธ์;; ๋ณด๊ณ ๊ฐํํ์ด๋ค ํ~ ๋ฌธ์ํ์์ด๋ ๊ณ ๋ คํด๋ณผ ์ ๋ฑ์์ ์ฐธ์กฐํ ๋งํ ์ข์ ์๋ฃ๊ฐ ๋ ๋ฏ --์์ฒ
- ์ ๊ฐ JDBC ํ ๋ ์ฝ์งํ๋๊ฑฐ ๋ค๋ฅธ ์ฌ๋๋ค์ ์ฝ์งํ์ง ์๋๋ก ํ๊ธฐ ์ํด์ ๋จ๊ธด ๋ฌธ์๊ฐ ์์ด์ฌ.. ์กฐ๊ธ์ด๋๋ง ์ฝ์ง ๋ฐฉ์งํ๋๋ฐ ๋์์ด ๋๋ฉด ์ข๊ฒ ๋ค์ฌ..^^: - ์ํJDBC ๊ด๋ จ ์ฝ์ง ๋ฐฉ์ง์ฉ ๋ฌธ์
Database ๊ด๋ จ ๋ถ๋ถ ์๋๋ผ ํ ํ๋ก์ ํธ์ ๊ณ ๋ คํด์ผ ํ ์ฌํญ์ ๊ฝค ๋ฉ๋๋ค. SuccessfulProject ๋ฅผ ์ํด์ ๊ณ ๋ คํด์ผ ํ ์ฌํญ์ ์ด๋ค๊ฒ ์์๊น์? ์์ธํ ๋ด์ฉ์ ์ฐจํ ์ ๋ฆฌํด์ ์ฐ๊ธฐ๋ก ํ๊ณ , ํ๋ ์ด์ผ๊ธฐ ํ๊ณ ์ถ์๊ฑด ์ต๋ํ ์ค๋ณต์ ํผํ๋๋ก ํ์ธ์. ํนํ๋, ํ์ฐธ ๋ํ๋ฅผ ํ์ง ์๊ณ ์๋ค๋ณด๋ฉด ๊ฐ์ ์ผ์ ํ๋ utility์ฑ ํด๋์ค๋ค์ ๋ชจ๋๊ฐ ํ๋์ฉ ์ง๋๊ณ ์์๊ฒ๋๋ค.
๊ฐ์ฅ ์ด์์ ์ธ ์ํ๋ ์์ ์ฐฝ์ค์ ๋ฐฐ๋์ด ์ธ๋ฏธ๋์์ ์ด์ผ๊ธฐ ํ์๋, '์ด๋ฌ ์ด๋ฌํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ฌ๊ธฐ ์์ง ์์๊น ํด์ ๋ดค๋๋ ๋ฐ๋ก ๊ทธ ์๋ฆฌ์ ์๋๋ผ.' ํ๋ ์ํ์
๋๋ค. ๊ทธ๋ฌ๋ฉด ์ต์
์? '์ด๋ฌ ์ด๋ฌํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ํ์ํ๋ฐ? ์.. ์ด์๊ฒ ์ ๋ง๋ค์ด๋๊ธฐ๋ ๊ท์ฐฎ๊ณ ์๋ผ ๋ค์์ ์ ๋ฆฌํ์ง ๋ญ' ๊ทธ๋ฆฌ๊ณ ๋ ํด๋น method๋ค์ copy & paste. ๊ณตํต ๋ชจ๋์ ํ๊ณณ์์ ๋ค๋ฃจ๋๋ก ํ์ธ์. ๊ณตํต ๋ชจ๋์ ๊ฝค ๋ง์ต๋๋ค. logging, configuration, resource managing ,..
ํผ์์ ํ๋ฐํ ๋์๋ ์์ฃผ ๋ฐ์ํ๋..
๋ค๋ฅธ ํ๋ก๊ทธ๋จ๋ค ํ๋ฐํ๋ค๊ฐ๋ ๋น์ทํ ํจํด์ ์ฝ๋๋ค์ด ๋ง์ด ๋ณด์ฌ์ ๊ทธ๋ฐ ๊ฑด ๋ฐ๋ก utility class ์์ผ๋ก ๋๋ ํ ๋ฆฌ ๋ฐ๋ก ๋๊ณ ๊ด๋ฆฌํ๊ณ ํ์์ฃ . ํ๋ก์ ํธ ์งํ์ค์๋ ๋ค๋ฅธ ์ฌ๋๋ค ์์ค๋ฅผ ์ง์์ ์ผ๋ก ๊ฐ์ด ๋ด ๋๊ฐ๋ฉด์ ์๊ฐํด์ผ๊ฒ ๊ตฐ์. CVS ๋ก ํ๊ณณ์ ์์ค๋ฅผ ๋ชจ์ผ๋ฉด ๋์์ด ๋ ๊ฒ์ด๋ผ ์๊ฐ. --์์ฒ
์ ํ๊ฐ์ง ๋ ์๊ฐ๋๋๊ฒ ์๊ตฐ์. ์๋ฐ๋ก ํ๋ก์ ํธ๋ฅผ ํ๋ ์ ์ต๋๋ค. ์ ๋ ์์ฑํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ฝ๋์ ์ค๊ฐ์์ Exception์ ์ก์์ ์ผ์ผ๋ฒ๋ฆฌ์ง ๋ง์ธ์. Exception์ ์ถํ debugging์ ์ ๋์ ์ธ ์ ๋ณด๋ฅผ ๋ด๊ณ ์์ต๋๋ค. ์ค๊ฐ์ try ~ catch ๋ก ์ก์๋ฒ๋ฆฌ๊ณ , ์ด๋ ํ ํํ๋ก๋ ์๋ ค์ฃผ์ง ์๋๊ฒ์ ์๋นํ ์ํํฉ๋๋ค. ์๊ฐ์ด ๋๋ฉด ์ด์ ๊ด๋ จํด์ ๋ ์ ๋๋ก ํ์ง์. --์ด์ ์ฐ
์ฝ๋ ์กฐ์ธ
~cpp static synchronized public SocketManager getInstance() { if (instance == null) { instance = new SocketManager(); } return instance; }
์์ ๋ฐฉ์ ๋์ ์๋์ฒ๋ผ...
~cpp public static SocketManager getInstance() { if (instance == null) { synchronized( this ) { if (instance == null) { instance = new SocketManager(); } } } return instance; }
System.out.println() ์ด ๋จธ์ง์์ ์ฌ์์ ๊ฐ์ ธ์ฌ ๊ฒ์ด๋.. --์ฝ์ง ๊ณ์๋ก 2์ฅ .png)
.png)
- ์ฐฝ์ญ/์ผ์ง