์ฐธ๊ณ ์์ : ํ ๊ถ์ผ๋ก ๋๋ด๋ Java ์น ๊ฐ๋ฐ์1\. ์ ์ฒด ์ ํ์2\. ํ์ (ํ๊ทธ ์ ํ์)3\. ์์ด๋(ID) ์ ํ์4\. ํด๋์ค(Class) ์ ํ์5\. ์์ฑ ์ ํ์(p84 ํ ์ฐธ์กฐ)6\. ๊ฐ์ ํด๋์ค ์ ํ์(p86)7\. ํ์(ํ์) ์ ํ์(p88)8\. ์์ ์
: AOP๋ Java์ OOP(Object Oriented Programming) ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์ด๋ผ๋ ๋จ์ด์ ์ ๋จ์ด๋ง ๋ค๋ฅด๋ค.AOP๋ Java์ OOP๋ฅผ ๋์ ํด์ ์๋ก ์๊ธด ๊ฐ๋ ์ด ์๋๋ผ, OOP๋ฅผ ๋์ฑ OOP๋ต๊ฒ ์ฌ์ฉํ ์ ์๊ฒ ๋์์ค๋ค.OOP์ธ Java๋ ๊ฐ
๋ฐ์ดํฐ ๊ฐ์ ์๋ฒ์์ -> ๋ทฐ@RequestMapping(value= "์์ฒญํ ๊ฒฝ๋ก")๊ฒฐ๊ณผ : ๋น์ ์ ๋น๋ฐ๋ฒํธ๋ 1234 ์ ๋๋ค.๊ฒฝ๋ก : localhost:8080/ ... /board/view๊ฐ์ฒด๋ฅผ ์๋ฒ์์ -> ๋ทฐ๊ฒฐ๊ณผ : ๋น์ ์ ๋น๋ฐ๋ฒํธ๋ 1234 ์ ๋๋ค.๊ฒฝ๋ก :
์ฐธ๊ณ : https://12bme.tistory.com/5551\. ์ฌ์ฉ์๊ฐ URL์ ํด๋ฆญ์, HTTP Req๋ฅผ Servlet Container์ ๋ณด๋ธ๋ค.2\. Servlet Container๋ HTTP Reqest, HTTP Response๋ฅผ ์์ฑํ๋ค.3\.
๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ข ๋ฅ๋ก๋ core, xml, format, sql, functions ๋ก ๊ตฌ์ฑ๋์ด ์๋ค.JSP๊ฐ ๋ด์ฅํ๋ ๊ธฐ์ ์ ์๋๋ฏ๋ก jar ํ์ผ์ ๋ค์ด๋ก๋ ๋ฐ์์ผ ํ์ง๋ง,๊ฐ๋ฐํ๊ฒฝ์ด Maven์ด๊ฑฐ๋ Gradle์ด๋ฉด ๊ฐ ๊ฐ๋ฐ ํ๊ฒฝ์ ๋ง์ถฐ ์ค์ ์ ํด๋ ๊ฐ๋ฅํฉ๋๋ค.๋ณ์ ์์ฑ๋ณ
๋๊ธฐ ํต์ ์น์๋ฒ๋ก๋ถํฐ ์๋ต์ด ์ฌ ๋๊น์ง ๋ธ๋ผ์ฐ์ ๊ฐ ๋๊ธฐํ์ฌ ํ์ด์ง์ ๋ด์ฉ์ ์ ์งํ๋ฉด์ ์์ฒญ์ ํตํด ์ผ๋ถ ๋ด์ฉ๋ง ๋ณ๊ฒฝํ๋ ค๋ ๊ฒฝ์ฐ์๋ ์ ์ฒด ํ์ด์ง๋ฅผ ๋ชจ๋ ์ ์ก๋ฐ์.์ด๋ฌํ ๋๊ธฐ ํต์ ์ ํน์ง์ ๋ณด์ํ ์ ์๋ Web ํต์ ๋ฐฉ์์ด Ajax์ด๋ค.\-> Ajax์ ๋น๋๊ธฐ ์ฒ๋ฆฌ๋ฅผ ํ
๋ก๊ทธ๋ ๋ฒจ์TRACE > DEBUG > INFO > WARN > ERROR > FATAL ์ ์ ๋๋ค.FATAL : ์์ฃผ ์ฌ๊ฐํ ์๋ฌ๊ฐ ๋ฐ์ํ ์ํ, ์์คํ ์ ์ผ๋ก ์ฌ๊ฐํ ๋ฌธ์ ๊ฐ ๋ฐ์ํด์ ์ดํ๋ฆฌ์ผ์ด์ ์๋์ด ๋ถ๊ฐ๋ฅํ ๊ฒฝ์ฐ
DOM์ ์นํ์ด์ง์ ๋ํ ์ธํฐํ์ด์ค์ ๋๋ค.๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ๋ฌ ํ๋ก๊ทธ๋จ๋ค์ด ํ์ด์ง์ ์ปจํ ์ธ , ๊ตฌ์กฐ, ์คํ์ผ์ ์ฝ๊ณ ์กฐ์ํ ์ ์๋๋ก API๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด ์์ ์ ๋ธ๋ผ์ฐ์ ๊ฐ ์ฝ์ด๋ค์ธ html ๋ฌธ์๋ฅผ ํ์ฑํ์ฌ ์ต์ข ์ ์ผ๋ก ์ด๋ค ๋ด์ฉ์ ํ์ด์ง์ ๋ ๋๋งํ ์ง๋ฅผ ๊ฒฐ์ ํ๋๋ฐ, ์ด๊ฒ์
์ฐธ๊ณ ๋งํฌ : https://ming9mon.tistory.com/64?category=825118: ์ฒ์์ ํ๋ก์ ํธ๋ฅผ ์์ฑํ๋ฉด ๋ํ๋๋ค๋ ํ๋จ ํญ์ด ์ ๋ ๋์ค์ง ์์์ต๋๋ค.์ฐํด๋ฆญ - Open With - Spring Config Editor๋ฅผ ์ฌ์ฉํ๋ฉด ํ๋จํญ
์ฐ์ ์ค๋นํด๋์ master๋ก ์ปค๋ฐํ ์ ์๋ ๊น ํ๋ก์ ํธ๋ฅผ MVC๋ก ์์ฑํด ๋์์ต๋๋ค.๋ ๋ฒ์งธ ์ค๋น๋ฌผ๋ก๋ test๋ผ๋ ๋ธ๋ฐ์น๋ฅผ ํ๋ ๋ ๋ง๋ค์ด'๋ ๋ฒ์งธ ์ปค๋ฐ์ ํ์ต๋๋ค.'home.jsp์ ๊ฒฐ๊ณผ๋ Mastertest์๋ก ๊ฐ์ ํ์ด์ง์ง๋ง, ๊ฐ์ญ์ด ๋ถ๊ฐ๋ฅํ ์ํ์ ๋๋ค.Ma
POI๋ฅผ ์ฌ์ฉํ๋ ๊ณผ์ ์์ toString()๊ณผ String.value.of()์ ์ฌ์ฉ์ ๋ํ ์ฐจ์ด์ ์ ๋ฐ๊ฒฌํ์ฌ ๋ฉ๋ชจํฉ๋๋ค.
\- null ๊ฐ์ฒด์ ์ธ์คํด์ค ๋ฉ์๋๋ฅผ ํธ์ถํฉ๋๋ค.\- null ๊ฐ์ฒด์ ํ๋ ์ก์ธ์ค ๋๋ ์์ .\- ๋น ๋ฐฐ์ด ๊ฐ์ฒด์ ๊ธธ์ด ์์ฑ์ ๊ฐ์ ธ์ฌ ๋\- ๋ฐฐ์ด ์ฌ๋กฏ ์ค null ์ธ ์ก์ธ์คํ๊ฑฐ๋ ์์ ํฉ๋๋ค.\- Throwable ๊ฐ์ธ ๊ฒ์ฒ๋ผ null์ ๋์ง๋๋ค.1\. ์ด๊ธฐํ์, n
๋ ์ง ์ ๊ทํํ์ ์ฌ์ฉ ์์ ex) 201020, 201021, 201022 ....result) 20/10/20, 20/10/21 ...์ข์ String์ ๋ค๋ฃจ๋ ๋ธ๋ก๊ทธ๊ฐ ์์ด์ ์คํฌ๋ฉํด์์ต๋๋ค!ํด๋น ๋ฉ์ง ๋ด์ฉ์ ์ด๊ณณ์์ ํ์ธํ์ค ์ ์์ต๋๋ค!
๊ฒฌ์ ์๋ฅผ ๋ค๋ฃจ๋ JSP์์ ๋ค์๊ณผ ๊ฐ์ ์๋ฌ๊ฐ console์ฐฝ์ ๋ฐ์ํ์์ต๋๋ค. $.ajax({}); ๋ก๋ ๋ณ๊ฒฝํด๋ณด์์ง๋ง 'mode' ๊ฐ ์๋ค๋ no parameter ์๋ฌ์์ต๋๋ค.๊ฒ์ํด๋ณด๋ slim์ผ๋ก ์ค์ ๋ jquery๋ฅผ ๋ณ๊ฒฝํ๋ผ๋ ํด๊ฒฐ๋ฒ์ด ์ ์๋์ด์์ต๋๋ค.Con
: ๋ฏธ๋์ด ์ฟผ๋ฆฌ๋ผ ๋ถ๋ฆฌ๋ฉฐ, ํ๋ฉด(screen), ํฐ๋น(tv), ํ๋ฆฐํฐ(print)์ ๊ฐ์ ๋ฏธ๋์ด ํ์ (media type)๊ณผ ์ ์ด๋ ํ๋ ์ด์์ ํํ์(expression)์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.ex) @media print{ }, @media tv{ }, @media s
: ์๋ฐ๋ฅผ ์ด์ฉํ ๊ฐ๋ฐ์ค getter/setter์ ๊ฐ์ ๋ฐ๋ณต๋๊ณ ํผ๊ณคํ ์ฝ๋๋ฅผ ์ค์ฌ์ฃผ๋ ์๋ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค. ์ฃผ๋ก VO, DTO์ ๊ฐ์ ํด๋์ค์์ ์๋์์ฑ์ ํด์ค๋ค.\* ๋ค์ด๋ก๋ : ๋กฌ๋ณต ์ ์ฐจjar ํ์ผ์ ์คํ ์ํค๋ฉด ์๋์ ์ฐฝ์ด ๋ํ๋๋๋ฐ install/updat
์ฌ๋ฆฌ๊ณ ์ฃผ๋ฌธ์ ์งํํ๋ฉด์ ์ ๊ทํํ์์ ์ ์ฉํ ์ฌ๋ก์ ๋๋ค.ํ๊ทธ๋ก๋ textarea๋ก ์งํํ๊ฒ ์ต๋๋ค.str : ์ ๋ ฅ๋ ๋ฌธ์์ดpatten : ๋ฒ์์์ ์ํด์์ง ์๋ ๋ชจ๋ ๊ฐ๋ค์ ๋งค์นญ / ๋ชจ๋ ํญ๋ชฉ(g)์ด๋ฉฐ ๋์๊ตฌ๋ฌธx(i)convertPattenplag๋ ๋ชจ๋ ํญ๋ชฉ(g)
Spring ํ๋ก์ ํธ๋ฅผ ์งํํ๋ฉด์ Mybatis๋ฅผ ์ฌ์ฉํ ๋ ๋ ๊ฐ์ง์ ํ๋ก์ ํธ ํจํด์ด ๋ณด์ธ๋ค.Controller.java > Service.java > Mapper.java > Mapper.xmlController.java > Service.java > Service
๋ณธ ํผ๋๋ ๊ฐ๊ณต์ ํด์ผ ์ฌ์ฉํ ์ ์์ต๋๋ค.โ์ฐธ์กฐ๋งํฌHTTP URI(Uniform Resource Identifier)๋ฅผ ํตํด ์์(Resource)์ ๋ช ์ํ๊ณ , HTTP Method(POST, GET, PUT, DELETE)๋ฅผ ํตํด ํด๋น ์์์ ๋ํ CRUD Oper
๋ณธ ๊ธ์ ์ฃผ๊ด์ ์ผ๋ก ์ดํดํ๊ธฐ ์ํด ์์ฑ๋ ๊ธ์ ๋๋ค.ํน์ ํ๋ฆฐ ๋ถ๋ถ์ด ์์ ์๋ ์์ต๋๋ค. ์ง์ ํด์ฃผ์๊ฑฐ๋ ๋จ๊ฒจ์ฃผ์๋ฉด ๊ฐ์ฌํ ๋ฐ์ํ๋๋ก ํ๊ฒ ์ต๋๋ค.๐น : JAVA ํ์ผ๐ธ : xml ํ์ผ๐ฌ : ๋ฉํธ๋ฌธ๋ ๊ถ๊ธํ๋ค.ํ์ฌ ํ๋ก์ ํธ์์ mapper ๋ถ๋ถ์ @SessionLog
Spring์ ์ ํต์ ์ธ ํ๋ ์ ์ํฌ์ด๋ฏ๋ก Spring ๋ถ์ผ์์ ๋ง์ ๋ฐ์ ์ ๋ณด์์ต๋๋ค. ๋ฐ๋ผ์ Java๋ Java EE ํ๊ฒฝ์ ํฌ๊ฒ ๊ธฐ์ฌํ ๊ฒ์ผ๋ก ์ฌ๊ฒจ์ง๋๋ค. ๊ฐ๋ฐ์๋ฅผ ์ํด ๊ฐ๋จํ๊ณ ์์ฉ ์ ์ด๋ฉฐ ์์์ ์ ์งํ๊ธฐ ์ํด Spring์ ์ฅ๊ธฐ์ ์ธ ์ด์ ์ ํญ์ ์ ์ธ๊ณ ๊ฐ๋ฐ์
Mybatis๋ฅผ ์ฝ๊ฒMybatis๋ฅผ ์ฐ๋ํ๊ณ ์ ํ๋ฉด EgovFramework์์ ์ค์ ํ๋ ค๊ณ ํ๋ฉด ๋ณต์กํ๋ค. ๊ทธ๊ฑธ ์ํด์ ๋์จ ๊ฒ์ Spring boot์ธ๋ฐ ๋ณต์กํ ์ค์ ์ ์๋ตํ๊ณ Mybatis๋ฅผ ๋ณด๋ค ์ฝ๊ฒ ์ค์ ํ ์ ์๊ฒ ํด์ค๋ค. ๋จ Spring vs Spring-bo
DB๋ฅผ ์ฌ์ฉํ ๋ ๋ก๊ทธ๋ฅผ ๋ ์์ธํ๊ฒ ๋ณด์ฌ์ฃผ๊ฒ ํด์ค๋ค.์๋์ ์ฌ์ง์ ์ญ์ ๋ก๊ทธ์ธ๋ฐ ์ฟผ๋ฆฌ๋ฌธ๊ณผ ๋ฐํ๊ฐ์ ์์ธํ๊ฒ ๋ํ๋ด์ค๋ค.์ถ์ฒ : ์ฐธ๊ณ ๋งํฌ์ ๋๋ค!์์ฑ ๊ฒฝ๋ก : resources ํด๋ ๋ฐ์ฝ๋log4jdbc๋ฅผ ์ถ๊ฐํด์ค ๊ฒ์ ํ์ ํ ์ ์์ต๋๋ค.3๋ฒ๊น์ง ์ํํ๋ค๋ฉด ๊ฒฐ๊ณผ๊ฐ ๋งค
๊ธฐ์กด์ Mapper.xml์ ๋ํด์๋ ๋ค์๊ณผ ๊ฐ์ด ํจํค์ง๋ช ์ผ๋ก resultType์ด๋ pramterType์ ๋ฐ์์์ด์ผ ํ์ต๋๋ค.Mapper.xmlresultType์ ์กฐ๊ธ ๋ ๊ฐํธํ๊ฒ ์์ฑํ๊ณ ์ ์ ๋ typeAlies๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด mybatis-config.xml
MyBatis๋ฅผ ์งํํ๋ค >์ฐธ๊ณ : ์์ธํ๊ฒ ๋์์์ต๋๋ค!seq๊ฐ intํ์ธ ๊ฒฝ์ฐ?SELECT \*FROM tableWHERE seq = ${seq}
โ Version | ๋๊ตฌ | ๊ท๊ฒฉ | | --- | --- | | ๊ฐ๋ฐ๋๊ตฌ | Java SE JDK 8.0.271 | | ๊ฐ๋ฐ๋๊ตฌ | Eclipse Java EE IDE | | ์๋ฒ | Apache Tomcat 8.0 | | DBMS | Oracle 11g Expre