๊ฐ๋ฐ์ด์ผ๊ธฐ ์ธ๋ค์ผํ ๋ฆฌ์คํธํ [Mysql] row_number() ๊ทธ๋ฃน๋ณ ํ๋ฒํธ ์ถ๋ ฅ ์ฟผ๋ฆฌ ๊ทธ๋ฃน๋ณ ์์ ์ถ๋ ฅ ์ฟผ๋ฆฌ Mysql row_number() mysql 8 ๋ฒ์ ์ด์์์๋ row_number() ํจ์๋ฅผ ์ง์ํ๋ค. ์.. ๊ฐ์ฉ์ด. ์๋ ์์ ์๋ row_number() ํจ์๊ฐ ์์ด์ ์ฟผ๋ฆฌ ๊ธธ์ด๋ ๋ฌด์๊ฒ ๊ธธ๊ณ , ์ฑ๋ฅ๋ ๊ตฌ๋ ค์ ๊ฑ ์ฝ๋๋ก ๋๋ ค ๋ฐ์๋.. ์ค๋ผํด ๋ณด๊ณ ์นจ ํ๋ฆฌ๋ ์์ ์ด ์์๋๋ฐ.. ใ ๊ธฐ๋ณธ ์ฌ์ฉ๋ฒ์ ์๋ก์ผ ์ฐ๊ณ , ROW_NUMBER() OVER ( ) : PARTITION BY ,[{,}...] ์ด ๋ถ๋ถ์ ํน์ ์ปฌ๋ผ์ด๋ ์กฐ๊ฑด์ ๋ง๋ ๋ฐ์ดํฐ๋ฅผ ๊ทธ๋ฃน์ง์ด ์๋ฒ์ ๋งค๊ฒจ์ค๋ค. group_by์ ๊ฐ๋ค๊ณ ๋ณด๋ฉด ๋จ. ํ๋๋ง ์ธ ์ ์๋๊ฑด ์๋๊ณ , ์ฝค๋ง(,)๋ก ์ฌ๋ฌ๊ฐ ์ง์ ์ด ๊ฐ๋ฅ. ๊ตณ์ด ๋ฃ์ ํ์ ์๋ค๋ฉด ์๋ฃ์ด๋ ์๊ด์์. : ORDER BY [ASC|DESC],[{,}...] ์๋ฒ์ ๋งค๊ธธ ๋,.. ๋๋ณด๊ธฐ Maria DB JSON Format ๋ฐ์ดํฐ ์ฒ๋ฆฌ Json Format { "DATA":{ "PARAM1":"123123", "PARAM2":"TEST", "PARAM3":{ "PARAM4":"0", "PARAM5":6000 } } } Json data ์ค PARAM1 ๊ฐ ์ถ๋ ฅ SELECT JSON_EXTRACT(DATA.STR, '$.DATA.PARAM1') AS PARAM1 FROM ( SELECT '{ "DATA":{ "PARAM1":"123123", "PARAM2":"TEST", "PARAM3":{ "PARAM4":"0", "PARAM5":6000 } } }' AS STR FROM DUAL ) DATA Json data ์ค PARAM3 ๊ฐ์ ธ์ค๊ธฐ SELECT JSON_EXTRACT(DATA.STR, '$.DATA.PARAM3.PARAM4') AS.. ๋๋ณด๊ธฐ ๊ตฌ๊ธ ์ธ์ฑ ๊ฒฐ์ ๊ฒ์ฆ API ๊ด๋ จ ์ด์.. Google_Service_AndroidPublisher ๊ตฌ๊ธ API์ AndroidPublisher๋ฅผ ํตํด ์๋๋ก์ด๋ ์ธ์ฑ ๊ฒฐ์ ํ ๋ด์ญ์ ๊ฒ์ฆ ์ฝ๋ ์ง์ ํ ์คํธ๋ฅผ ํ๋๋ฐ ์๊ธด ๋ฌธ์ ๋ชจ๋ ๊ถํ์ Perfect.. ๊ณ์ ๋ด ํ๋ก์ ํธ๊ฐ ์ฌ๋ฌ๊ฐ์ด์ง๋ง, ํ๋์ ํ๋ก์ ํธ์ ์๋น์ค ๊ณ์ ์ ์ถ๊ฐํด "์์ ์" ๊ถํ์ ์คฌ๊ณ , Json ํ์ผ์ ๋ฐ๊ณ ์ฝ๋๋ฅผ ๋ฃ์๋๋ฐ.. ์... ์๋๋ค ใ ใ ์๋๋ ๊ฒ์ฆ ๊ด๋ จ ์ฝ๋. ๋ก๊ทธ์ธ ๋ถํฐ, ๊ฒฐ์ ๋ด์ฉ ๊ฒ์ฆ $this->client = new Google_Client(); $this->client->setAuthConfig(getenv('GOOGLE_SDK_FILE')); $this->service = new Google_Service_AndroidPublisher($this->client); $this->client->addScope('h.. ๋๋ณด๊ธฐ [summary] แแ ณแแ ณแ แ ตแผ แแ ตแธแแ ฎแซ - แแ ฉแแ ณแ แ ฉ แแ ขแแ ฎแแ ณแซ แแ ณแแ ณแ แ ตแผ แแ ฎแแ ณ, แแ ฐแธ MVC, DB แแ ฅแธแแ ณแซ แแ ตแแ ฎแฏ day 3 JPA - ์๋ฐ ORM ํ์ค, ์ธํฐํ์ด์ค์ ๋ชจ์. Object Relational table Mapping - ๊ธฐ์กด์ sql ๋ฐ์ดํฐ ์ค์ฌ ์ค๊ณ์์ ๊ฐ์ฒด ์ค์ฌ ์ค๊ณ๋ก์ ํจ๋ฌ๋ค์ ์ ์ฉ configuration - spring.jpa.hibernate.ddl-auto - DDL (๋ฐ์ดํฐ ์ ์์ด. create, alter, drop... ๋ฑ๋ฑ ๋ฐ์ดํฐ ๊ตฌ์กฐ ๊ด๋ จ ๋ช ๋ น์ด) Auto Generation ์ต์ (DDL SQL ์คํฌ๋ฆฝํธ ์๋ ์์ฑ) https://docs.spring.io/spring-boot/docs/1.1.0.M1/reference/html/howto-database-initialization.html#howto-initialize-a-database-using-hibernate 59. Datab.. ๋๋ณด๊ธฐ [summary] แแ ณแแ ณแ แ ตแผ แแ ตแธแแ ฎแซ - แแ ฉแแ ณแ แ ฉ แแ ขแแ ฎแแ ณแซ แแ ณแแ ณแ แ ตแผ แแ ฎแแ ณ, แแ ฐแธ MVC, DB แแ ฅแธแแ ณแซ แแ ตแแ ฎแฏ day 2 ์คํ๋ง๋ถํธ ํ ์คํธ ์ผ์ด์ค ์์ฑ JUnit - main ๋ฉ์๋ ํตํ ์คํ - ์น ์ ํ๋ฆฌ์ผ์ด์ ์ปจํธ๋กค๋ฌ ํตํ ์คํ service ํจํค์ง๋ ์ฃผ๋ก ๋น์ฆ๋์ค ๋ก์ง ์คํ - ๋น์ฆ๋์ค์ ์์กด์ repository๋ ์ ์ฅ์์์ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃจ๋ ์ญํ ์ ํจ(findAll, findById) - ๋จ์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ํ ์คํธ ์ฝ๋ ์์ฑ ๋จ์ถํค ์ปค๋งจ๋ ์ฌํํธ T Test ์ฝ๋ ์์ฑ์ given, when, then ์์ผ๋ก ๊ฒ์ฆ ์ฒ๋ฆฌ * ์ธ๋ถ ์์กด์ฑ ์ฃผ์ DI(Dependancy injection) ์คํ๋ง ๋น์ ๋ฑ๋กํ๋ 2๊ฐ์ง ๋ฐฉ๋ฒ - ์ปดํฌ๋ํธ ์ค์บ๊ณผ ์๋ ์์กด๊ด๊ณ ์ค์ -> @Component (๋น์ผ๋ก ์๋ ๋ฑ๋ก), @Autowired, @Controller, @Service... etc ์ด๋ ธํ ์ด์ ์ค์ - ์๋ฐ ์ฝ๋๋ก ์ง์ ์ค.. ๋๋ณด๊ธฐ [summary] ์คํ๋ง ์ ๋ฌธ - ์ฝ๋๋ก ๋ฐฐ์ฐ๋ ์คํ๋ง ๋ถํธ, ์น MVC, DB ์ ๊ทผ ๊ธฐ์ day1 [์คํ๋ง ์น ๊ฐ๋ฐ ๊ธฐ์ด] ๊ธฐ์กด์ ๋ชจ๋ธ1 ๋ฐฉ์ - View ๋จ์์ ๋ชจ๋ ๊ฑธ ์ฒ๋ฆฌ, ๋น์ฆ๋์ค ๋ก์ง ๋ฑ์ jsp๋ก ์ฒ๋ฆฌ MVC ํจํด ๋ฐฉ์ - ๋ชจ๋ธ, ๋ทฐ, ์ปจํธ๋กค๋ฌ๋ก ๋น์ฆ๋์ค ๋ก์ง์ ์ฒ๋ฆฌํ๊ณ , ๋ทฐ์์๋ ํ๋ฉด ์ถ๋ ฅ, ๋ชจ๋ธ์๋ ํ๋ฉด์์ ํ์ํ ๋ฐ์ดํฐ๋ค์ ๋ด๋ ์ญํ ์ ํจ ํ์๋ฆฌํ Thymeleaf - Spring Boot์์ ์ฌ์ฉ๋๋ ๋ทฐ ํ ํ๋ฆฟ ์ข ๋ฅ ์ค ํ๋ - static(์ ์ ), templates(๋์ ) ํ ํ๋ฆฟ์ ์ ๊ณตํ๋ฉฐ, ์๋ํฌ์ธํธ๊ฐ (request mapping) ์ผ์นํ์ง ์๋ ๊ฒฝ์ฐ ์ ์ ํ ํ๋ฆฟ์์ ์ฐพ์ ๋ ๋๋ง๋์ง ์์ html ํ์ผ์ ๋ฆฌํดํ๋ค. Getter & Setter - ์๋ฐ Bean ํ์ค ๊ท์ฝ - ํ๋กํผํฐ ์ ๊ทผ ๋ฐฉ์ - ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฑ ์์ ๋ฉ์๋๋ฅผ ํตํด ์ ๊ทผ ๊ฐ๋ฅ @ResponseBody ์ด๋ ธํ ์ด์ .. ๋๋ณด๊ธฐ ๋์ปค PHP7.4, CI4(์ฝ๋์ด๊ทธ๋์ดํฐ4) ์ค์น. ๊ฐ๋ฐํ๊ฒฝ ๊ตฌ์ฑ ์ค๋น ์ฌํญ 1. ๋์ปค ์ค๋น 2. ๊ธฐ์กด์ ์ฌ์ฉํ๋ PHP7.2 ๋ฒ์ ์ปจํ ์ด๋๋ก ์ค์นํ๊ณ PHP7.4๋ก ์ ๊ทธ๋ ์ด๋ ๋ฐ ์ฝ๋์ด๊ทธ๋์ดํฐ4 ์ค์น ์งํ ํจ 1. docker ์ด๋ฏธ์ง ๋ค์ด๋ก๋ docker pull tplatform/aws-linux-2-httpd24-php72 2. ์ปจํ ์ด๋ ์์ฑ docker run -d --name jay -p 81:80 -v J:\j\:/var/www/html tplatform/aws-linux-2-httpd24-php72 * docker run -d detached ๋ชจ๋๋ก ์ปจํ ์ด๋ ์์ฑ * --name jay jay ๋ผ๋ ์ด๋ฆ์ ๊ฐ์ง ์ปจํ ์ด๋ ์์ฑ * -p 81:80 127.0.0.1:81 ๋ก ์ ์ ํ๋๋ก 81๋ฒ ํฌํธ ์ง์ * -v J:\j\:/var/www/html J๋๋ผ์ด๋ธ .. ๋๋ณด๊ธฐ PHP for, while, foreach n๊ฐ์ฉ ๋ฐ์ดํฐ ์ถ๋ ฅํ๊ธฐ for, while, foreach ๋ฑ์ ๋ฐ๋ณต๋ฌธ์ด๋ผ๊ณ ํ๋๋ฐ ๋ฐ๋ณต๋ฌธ์ ์์ฑ๋ฒ๋ง ์กฐ๊ธ์ฉ ๋ค๋ฅผ ๋ฟ ๋ชจ๋ ์ธ์ด์์ ์ ๊ณต๋๊ณ ์๋ค ์ด๊ฐ์ ๊ธฐ์ค + ๋๋ - ํ ๊ฐ์ผ๋ก ๋ฐ๋ณต๋ฌธ์ ์คํํ๊ณ , ๋ฃจํ(loof)์ ๋น ์ง์ง ์๋๋ก ์กฐ์ฌํด์ผํจ ๋ณดํต while์ด๋ foreach๋ DB์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ ๋ฐฐ์ด์ ๋ด์ ์ถ๋ ฅ ํ ๋ ๋ง์ด ์ 1์ค์ 3๊ฐ์ฉ ์ถ๋ ฅํ๋ ๊ฒฝ์ฐ๋ฅผ ํจ ํด๋ณด์ ์๋ ์์ ๋ค์ 3๊ฐ์ฉ์ด์ง๋ง, '3'์ ๋ค๋ฅธ ์ซ์๋ก ๋ฐ๊พธ๋ฉด 2๊ฐ์ฉ, 4๊ฐ์ฉ, 5๊ฐ์ฉ... 10๊ฐ์ฉ ์ถ๋ ฅ ๊ฐ๋ฅํ๋ ์ซ์๋ง ๋ณ๊ฒฝํ๋ฉด ๊ฐ๋ฅํจ for๋ฌธ //1๋ถํฐ 10๊น์ง ์ถ๋ ฅ for($i = 1; $i ๋๋ณด๊ธฐ ์ด์ 1 2 3 4 5 ๋ค์