์ ์ฒด ๊ธ43 ERROR 2002 (HY000): Can't connect to local server through socket '/tmp/mysql.sock' (2) m1 ๋งฅ์์ ํด๊ฒฐํ๊ธฐ ๊ฐ๋ฐ ํ๊ฒฝ - m1 Mac ์๋ฌ ๋ถ์ - mysql์ ์ ๋๋ก ์ ๊ฑฐํ์ง ์๊ณ mariadb๋ฅผ homebrew๋ก ์ค์นํ์ - mysql -u root -p ๋ฑ mysql ๋ช ๋ น์ด๋ฅผ ์น๋ฉด `ERROR 2002 (HY000): Can't connect to local server through socket '/tmp/mysql.sock' (2)` ๋ฐ์ - brew services start mariadb๋ก mariadb๋ฅผ ์คํ์์ผ๋ ๋์ผํ ์๋ฌ ๋ฐ์ ํด๊ฒฐ ํน์ ๋ชฐ๋ผ ํ ์์๋ ๋ฐฉ๋ฒ์ ์ด๋์ ํ๋ค. # ๋ชจ๋ ์ ๊ฑฐ brew uninstall mysql brew uninstall mariadb brew cleanup # m1 sudo rm -rf /opt/homebrew/var/mysql sudo rm -rf /Lib.. 2022. 8. 21. 6์ฅ: AWS ์๋ฒ ํ๊ฒฝ ๋ง๋ค๊ธฐ Table of Contents ํด๋ผ์ฐ๋ ํด๋ผ์ฐ๋ ์๋น์ค ํด๋ผ์ฐ๋๋ฅผ ํตํด ์๋ฒ, ์คํ ๋ฆฌ์ง, ๋ฐ์ดํฐ๋ฒ ์ด์ค, ๋คํธ์ํฌ, ์ํํธ์จ์ด, ๋ชจ๋ํฐ๋ง ๋ฑ ์ปดํจํ ์๋น์ค๋ฅผ ์ ๊ณตํ๋ ๊ฒ ํด๋ผ์ฐ๋ ํํ IaaS (Infrastructure as a Service) ๊ธฐ์กด ๋ฌผ๋ฆฌ ์ฅ๋น๋ฅผ ๋ฏธ๋ค์จ์ด์ ํจ๊ป ๋ฌถ์ด IT ์ธํ๋ผ๋ฅผ ๋์ฌํด์ฃผ๋ ์ถ์ํ ์๋น์ค AWS EC2, S3๋ฑ์ด ํด๋น๋จ PaaS (Platform as a Service) IaaS๋ฅผ ํ๋ฒ ๋ ์ถ์ํํ์ฌ ๋ง์ ๊ธฐ๋ฅ์ด ์๋ํ๋ ์๋น์ค Beanstalk, Heroku๋ฑ์ด ํด๋น๋จ Saas (Software as a Service) ์ํํธ์จ์ด ์๋น์ค ๊ตฌ๊ธ ๋๋ผ์ด๋ธ, ๋๋๋ฐ์ค ๋ฑ์ด ํด๋น๋จ EC2 ์ธ์คํด์ค ๋ง๋ค๊ธฐ AWS์์ ์ ๊ณตํ๋ ์ฑ๋ฅ, ์ฉ๋ ๋ฑ์ ์ ๋์ ์ผ๋ก ์ฌ์ฉํ ์ ์๋ ์๋ฒ .. 2022. 6. 27. 3์ฅ: JPA๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ค๋ฃจ๊ธฐ (2) Table of Contents API ๋ง๋ค๊ธฐ API๋ฅผ ๋ง๋ค์ด๋ณด๋ฉฐ ๊ตฌ์กฐ ์ดํดํ๊ธฐ ํ์ํ ํด๋์ค - Request ๋ฐ์ดํฐ ๋ฐ์ Dto - API ์์ฒญ ๋ฐ์ Controller - ํธ๋์ญ์ , ๋๋ฉ์ธ ๊ธฐ๋ฅ ๊ฐ ์์๋ฅผ ๋ณด์ฅํ๋ Service (๋น์ง๋์ค ๋ก์ง์ ์ฒ๋ฆฌํ์ง๋ ์์) Spring ์น ๊ณ์ธต Web Layer - ์ปจํธ๋กค๋ฌ์ JSP๋ฑ์ ๋ทฐ ํ ํ๋ฆฟ ์์ญ - Filter, ์ธํฐ์ ํธ, ControllerAdvice ๋ฑ ์ธ๋ถ ์์ฒญ๊ณผ ์๋ต์ ๋ํ ์ ๋ฐ์ ์ธ ์์ญ Service Layer - @Service์ ์ฌ์ฉ๋๋ ์์ญ - Controller์ Dao ์ค๊ฐ์์ ์ฌ์ฉ๋จ - @Transactional์ด ์ฌ์ฉ๋์ด์ผ ํจ Repository Layer - ๋ฐ์ดํฐ ์ ์ฅ์์ ์ ๊ทผํ๋ ์์ญ DTOs - Data Transfer O.. 2022. 6. 15. 3์ฅ: JPA๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ค๋ฃจ๊ธฐ (1) Table of Contents JPA JPA์ Spring Data JPA ๊ฐ๋ ์ ์ดํดํ๋ค. ORM vs. SQL Mapper - ORM์ ๊ฐ์ฒด๋ฅผ ๋งคํํ๋ ๊ฒ, ๋ํ์ ์ธ ๊ธฐ์ ๋ก๋ JPA๊ฐ ์์ - SQL Mapper๋ ์ฟผ๋ฆฌ๋ฅผ ๋งคํํ๋ ๊ฒ, ๋ํ์ ์ธ ๊ธฐ์ ๋ก๋ MyBatis๊ฐ ์์ ํจ๋ฌ๋ค์์ ๋ถ์ผ์น ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ด๋ป๊ฒ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ง ์ด์ ์ ๋ง์ถ์ง๋ง ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ ๋ฉ์์ง๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ธฐ๋ฅ๊ณผ ์์ฑ์ ํ ๊ณณ์์ ๊ด๋ฆฌํ๋ ๊ฒ์ด ์ค์ฌ JPA๋ ํจ๋ฌ๋ค์์ ๋ถ์ผ์น๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๊ฐ์ฒด์งํฅ์ ์ผ๋ก ํ๋ก๊ทธ๋๋ฐํ ์ฝ๋๋ฅผ ๊ธฐ๋ฐ์ผ๋ก SQL์ ์์ฑํด ์คํํด์ฃผ๋ฏ๋ก SQL์ ์ข ์์ ์ผ๋ก ๊ฐ๋ฐํ์ง ์์๋ ๋จ Spring Data JPA - JPA๋ ์ธํฐํ์ด์ค, ์๋ฐ ํ์ค ๋ช ์ธ์์ด๋ฏ๋ก ๊ตฌํ์ฒด๊ฐ ํ์ํจ. ๊ตฌํ์ฒด๋ก๋ .. 2022. 6. 15. 2์ฅ: ํ ์คํธ ์ฝ๋ ์์ฑํ๊ธฐ Table of Contents ํ ์คํธ ์ฝ๋๋ TDD ํ ์คํธ ์ฝ๋๋ฅผ ๋จผ์ ์์ฑํ๋ ํ ์คํธ ์ฃผ๋ ๊ฐ๋ฐ 1. ํญ์ ์คํจํ๋ ํ ์คํธ ์ฝ๋ ์์ฑ 2. ํ ์คํธ๊ฐ ํต๊ณผํ๋ ํ๋ก๋์ ์ฝ๋ ์์ฑ 3. ํ ์คํธ๊ฐ ํต๊ณผํ๋ฉด ํ๋ก๋์ ์ฝ๋ ๋ฆฌํฉํ ๋ง ์ด๋ ๊ฒ ์ธ ๋จ๊ณ๋ฅผ ๋์๊ฐ๋ฉด์ ๊ฐ๋ฐํ๋ ๊ณผ์ ์ ๊ฑฐ์น๋ค. ๋จ์ํ ์คํธ - ๊ธฐ๋ฅ ๋จ์์ ํ ์คํธ ์ฝ๋๋ฅผ ์์ฑํ๋ ๊ฒ - ํ์์ฑ ๊ฐ๋ฐ ๋จ๊ณ ์ด๊ธฐ์ ๋ฌธ์ ๋ฐ๊ฒฌํ๋๋ก ๋์์ค ์ถํ ์ฝ๋ ๋ฆฌํฉํ ๋ง, ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ ๊ทธ๋ ์ด๋ ๋ฑ์์ ๊ธฐ์กด ๊ธฐ๋ฅ์ ๋์์ ํ์ธ ๊ฐ๋ฅ ๊ธฐ๋ฅ์ ๋ํ ๋ถํ์ค์ฑ ๊ฐ์์ํด ์์คํ ์ ๋ํ ์ค์ ๋ฌธ์๋ก ์ ๊ณต ๊ฐ๋ฅ - ์๋ฐ์์๋ JUnit์ด๋ผ๋ ํ ์คํธ ํ๋ ์์ํฌ๊ฐ ์ฌ์ฉ๋จ Controller ์์ฑ ์ผ๋ฐ์ ์ผ๋ก ํจํค์ง๋ช ์ ์น ์ฌ์ดํธ ์ฃผ์์ ์ญ์์ผ๋ก ์ค์ ๋ฉ์ธ ํด๋์ค package com.oli.. 2022. 6. 13. 1์ฅ: ์ธํ ๋ฆฌ์ ์ด ์ฌ์ฉํ๊ธฐ (์์ ์ค) Table of Contents ์ธํ ๋ฆฌ์ ์ด ์๊ฐ ๋ฐ ์ค์น ํ๋ก์ ํธ ์์ฑ Gradle ํ๋ก์ ํธ -> Spring Boot ํ๋ก์ ํธ Git, Github ์ฐ๋ํ๊ธฐ 2022. 6. 13. Spring Boot์ Spring Security ํ๋ก์ ํธ์ Swagger ์ ์ฉํ๊ธฐ ์ด๊ธ์ ๋ชฉ์ ์ ํ๋ก์ ํธ API ๊ฐ๋ฐ์ ์ด๋์ ๋ ๋ง์น๊ณ Swagger๋ฅผ ์ ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ ๋ฆฌํ๋ ๊ฒ์ด๋ค. ์ ์ฉํ๊ธฐ์ ์์ ์ด ํ๋ก์ ํธ๋ Spring Boot 2.6.2์ Spring Security๊ฐ ์ ์ฉ๋์๋ค. 1. build.gradle์ ์์กด์ฑ ์ถ๊ฐ //for Swagger implementation group: 'io.springfox', name: 'springfox-swagger2', version: '2.9.2' implementation group: 'io.springfox', name: 'springfox-swagger-ui', version: '2.9.2' 2. SwaggerConfig ํด๋์ค ์์ฑ config ํจํค์ง ๋ด์ SwaggerConfig ํด๋์ค๋ฅผ ์์ฑํด์ค ๋ค ๋ค์๊ณผ ๊ฐ์ด ์ฝ๋๋ฅผ.. 2022. 6. 10. [ํ๋ก๊ทธ๋๋จธ์ค] ๋ฒ ์คํธ์จ๋ฒ (C++) ๋ฌธ์ ์ค๋ช ์คํธ๋ฆฌ๋ฐ ์ฌ์ดํธ์์ ์ฅ๋ฅด ๋ณ๋ก ๊ฐ์ฅ ๋ง์ด ์ฌ์๋ ๋ ธ๋๋ฅผ ๋ ๊ฐ์ฉ ๋ชจ์ ๋ฒ ์คํธ ์จ๋ฒ์ ์ถ์ํ๋ ค ํฉ๋๋ค. ๋ ธ๋๋ ๊ณ ์ ๋ฒํธ๋ก ๊ตฌ๋ถํ๋ฉฐ, ๋ ธ๋๋ฅผ ์๋กํ๋ ๊ธฐ์ค์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ์ํ ๋ ธ๋๊ฐ ๋ง์ด ์ฌ์๋ ์ฅ๋ฅด๋ฅผ ๋จผ์ ์๋กํฉ๋๋ค. ์ฅ๋ฅด ๋ด์์ ๋ง์ด ์ฌ์๋ ๋ ธ๋๋ฅผ ๋จผ์ ์๋กํฉ๋๋ค. ์ฅ๋ฅด ๋ด์์ ์ฌ์ ํ์๊ฐ ๊ฐ์ ๋ ธ๋ ์ค์์๋ ๊ณ ์ ๋ฒํธ๊ฐ ๋ฎ์ ๋ ธ๋๋ฅผ ๋จผ์ ์๋กํฉ๋๋ค. ๋ ธ๋์ ์ฅ๋ฅด๋ฅผ ๋ํ๋ด๋ ๋ฌธ์์ด ๋ฐฐ์ด genres์ ๋ ธ๋๋ณ ์ฌ์ ํ์๋ฅผ ๋ํ๋ด๋ ์ ์ ๋ฐฐ์ด plays๊ฐ ์ฃผ์ด์ง ๋, ๋ฒ ์คํธ ์จ๋ฒ์ ๋ค์ด๊ฐ ๋ ธ๋์ ๊ณ ์ ๋ฒํธ๋ฅผ ์์๋๋ก return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํ์ธ์. ์ ํ์ฌํญ genres[i]๋ ๊ณ ์ ๋ฒํธ๊ฐ i์ธ ๋ ธ๋์ ์ฅ๋ฅด์ ๋๋ค. plays[i]๋ ๊ณ ์ ๋ฒํธ๊ฐ i์ธ ๋ ธ๋๊ฐ ์ฌ์๋ ํ์์ ๋.. 2022. 6. 4. [ํ๋ก๊ทธ๋๋จธ์ค] ์ ํ๋ฒํธ ๋ชฉ๋ก (C++) ๋ฌธ์ ์ค๋ช ์ ํ๋ฒํธ๋ถ์ ์ ํ ์ ํ๋ฒํธ ์ค, ํ ๋ฒํธ๊ฐ ๋ค๋ฅธ ๋ฒํธ์ ์ ๋์ด์ธ ๊ฒฝ์ฐ๊ฐ ์๋์ง ํ์ธํ๋ ค ํฉ๋๋ค. ์ ํ๋ฒํธ๊ฐ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ, ๊ตฌ์กฐ๋ ์ ํ๋ฒํธ๋ ์์์ด์ ์ ํ๋ฒํธ์ ์ ๋์ฌ์ ๋๋ค. ๊ตฌ์กฐ๋ : 119 ๋ฐ์ค์ : 97 674 223 ์ง์์ : 11 9552 4421 ์ ํ๋ฒํธ๋ถ์ ์ ํ ์ ํ๋ฒํธ๋ฅผ ๋ด์ ๋ฐฐ์ด phone_book ์ด solution ํจ์์ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์ด๋ค ๋ฒํธ๊ฐ ๋ค๋ฅธ ๋ฒํธ์ ์ ๋์ด์ธ ๊ฒฝ์ฐ๊ฐ ์์ผ๋ฉด false๋ฅผ ๊ทธ๋ ์ง ์์ผ๋ฉด true๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ ์ฌํญ phone_book์ ๊ธธ์ด๋ 1 ์ด์ 1,000,000 ์ดํ์ ๋๋ค. ๊ฐ ์ ํ๋ฒํธ์ ๊ธธ์ด๋ 1 ์ด์ 20 ์ดํ์ ๋๋ค. ๊ฐ์ ์ ํ๋ฒํธ๊ฐ ์ค๋ณตํด์ ๋ค์ด์์ง ์์ต๋๋ค. ๋ฌธ์ ๋ถ์ ํด์๋ฅผ.. 2022. 6. 4. ์ด์ 1 2 3 4 5 ๋ค์