๐ฆถ๋ฐ๋ง: ์ค์๊ฐ ๊ฒฝ๋ก ๋
นํ ๋ฏธ๋์ด ์ดฌ์ ์ฐ๊ณ ์๋น์ค

ํ๋ก์ ํธ ์๊ฐ
- ๋ฐ๋ง์ ์ฌํ ๊ฒฝ๋ก๋ฅผ ์ค์๊ฐ์ผ๋ก ์ถ์ ํ๋ฉด์ ๋ฉํฐ๋ฏธ๋์ด ์ดฌ์๊ณผ ์์น ์ ๋ณด๋ฅผ ์ฐ๊ฒฐํ์ฌ ์ ๊ณตํฉ๋๋ค.
๊ธฐ์ ์คํ
- ๊ฐ๋ฐ ์ธ์ด
- Front-end
- HTML, CSS, JavaScript, jQuery, Tailwind, daisyUI
- API: Google Geocoding API, Google Maps JavaScript API
- Back-end
- ํ๋ ์์ํฌ : SpringBoot, Selenium, FastAPI
- ๋ผ์ด๋ธ๋ฌ๋ฆฌ : Langchain, Lombok, Tomcat, spring-boot-starter-mail, ffmpeg, jackson
- ํ
ํ๋ฆฟ ์์ง : Thymleaf
- ORM : MyBatis
- DB
- MySQL
- ์ฟผ๋ฆฌ ๋ธ๋ผ์ฐ์ : SQLyog
- ๋ฒ์ ๊ด๋ฆฌ
- ๋์์ธ
- ๊ฐ๋ฐ ํ๊ฒฝ
- JDK-17, MAVEN, Spring Tool Suit 4, Visual Studio Code, Window 10
๋์์ธ

https://www.figma.com/design/HZJiBjPuZQ6CbJEOJezNmf/%EB%B0%9C%EB%A7%98?node-id=102%3A227&t=W4Ezb6oPzrFwOtsx-1
ํ์ด์ง๋ณ ๊ธฐ๋ฅ
[๋ฉ์ธํ๋ฉด]

- ํ์คํฌ๋ฆฐ ๋์์์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฉ์ธํ์ด์ง
[์ฌ์ด๋ ๋ฉ๋ด]

- ๋ง์ฐ์ค hover์ ๊ธ์๊ฐ ์ ํ๋ ๋ฏํ ์ ๋๋ฉ์ด์
ํจ๊ณผ ๋ถ์ฌ
[ํ์ ๊ฐ์
]

- ์ด๋ฏธ์ง ์ ํ ๊ธฐ๋ฅ๊ณผ ์ ํจ์ฑ ์ฒดํฌ ๊ธฐ๋ฅ์ด ์์ต๋๋ค.
[์ด๋ฉ์ผ ์ธ์ฆ]

- ํ์๊ฐ์
์ด ์๋ฃ๋๋ฉด email๋ก ๋ฉ์ผ์ด ๋ฐ์ก๋๊ณ , ํด๋น ๋ฉ์ผ์์ ์ธ์ฆ์ ์๋ฃ ํ์ฌ์ผ ์ฌ์ดํธ์ ์ ์ํ ์ ์์ต๋๋ค.
[๋น๋ฐ๋ฒํธ ์ฐพ๊ธฐ]

- email์ ์
๋ ฅํ๋ฉด ๋น๋ฐ๋ฒํธ๋ฅผ ๋ณ๊ฒฝํ ์ ์๋ ๋งํฌ๊ฐ ๋ฉ์ผ๋ก ๋ฐ์ก๋ฉ๋๋ค.
[๋ก๊ทธ์ธ]

- ๊ฐ๋จํ ์ ํจ์ฑ ์ฒดํฌ ๊ธฐ๋ฅ์ด ์์ต๋๋ค.
[๋ก๊ทธ์์]

[ํ์์ ๋ณด ์์ธ ๋ณด๊ธฐ]

- ์ฌ์ฉ์์ ์ด๋ฏธ์ง, ๋๋ค์, ์๊ธฐ ์๊ฐ, ๋ฐฉ๋ฌธํ ๋์ ์, ๋ฑ๋กํ ๋ฐ์์ทจ ์๋ฅผ ํ์ํฉ๋๋ค.
[ํ์์ ๋ณด ์์ ]

- ์ฌ์ฉ์์ ์ด๋ฏธ์ง, ๋๋ค์, ์๊ธฐ ์๊ฐ๋ฅผ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. ๋น๋ฐ๋ฒํธ ๋ณ๊ฒฝ์ ๋ณ๊ฒฝ ํ๋ฉด์ ๋งํฌ๊ฐ ๋ฉ์ผ๋ก ๋ฐ์ก๋ฉ๋๋ค.
[๊ฒฝ๋ก ๊ธฐ๋ก]

- ์ ์ ์ ํ์ฌ ์์น๋ฅผ ์ค์๊ฐ์ผ๋ก ์ถ์ ํ์ฌ ๊ฒฝ๋ก๋ฅผ ์ ์ผ๋ก ํ์ํฉ๋๋ค. ์ผ์์ ์ง๋ฅผ ๋๋ฅด๋ฉด ๊ฒฝ๋ก๋ฅผ ์ ์ผ๋ก ์๋ ๋์์ ์ค์ง ํ๋ฉฐ, ๋ค์ ์ฌ์ ๋ฒํผ์ ๋๋ฅด๋ฉด ๋๋ฅธ ์์ ๋ถํฐ ์๋ก์ด ์ ์ ๊ทธ๋ฆฝ๋๋ค.
[๋ฏธ๋์ด ์ดฌ์]

- ์ฌ์ง ๋ฐ ๋์์์ ์ดฌ์ํฉ๋๋ค. ์ดฌ์ํ ์ฌ์ง ๋ฐ ๋์์์ ์ดฌ์ํ ์์ ์ ์ขํ์ ์ฐ๊ฒฐ๋์ด ์ง๋์ ํ์๋ฉ๋๋ค.
[๋ฏธ๋์ด ๋ชฉ๋ก ๋ณด๊ธฐ]

- ์ง๋ ์์ ๋งํฌ๋ฅผ ํด๋ฆญ ํ๋ฉด, ํด๋น ์์น์์ ์ดฌ์ํ ์ฌ์ง ๋ฐ ๋์์ ๋ชฉ๋ก์ ๋ณผ ์ ์์ต๋๋ค.
[๋ฐ์์ทจ ์์ธ ์ ๋ณด ์
๋ ฅ]

- ๊ฒฝ๋ก ๋
นํ ํ๋ฉด์์ ์ ์น ๋ฒํผ์ ๋๋ฅด๋ฉด, ๋
นํ๋ ๊ฒฝ๋ก๋ฅผ ๋ฐํ์ผ๋ก ์ ๋ชฉ, ํ๊ทธ, ๋ํ ์ด๋ฏธ์ง๋ฅผ ์ ์ ํ์ฌ ๋ฐ์์ทจ๋ฅผ ๋ฑ๋กํ ์ ์์ต๋๋ค. ํ๊ทธ๋ ์ต๋ 3๊ฐ๊น์ง ๋ฑ๋ก ๊ฐ๋ฅํ๋ฉฐ, ์
๋ ฅ ํ enter์ ์
๋ ฅํ๋ฉด ์ถ๊ฐ๋๊ณ , ํ๊ทธ๋ฅผ ํด๋ฆญํ๋ฉด ์ง์์ง๋๋ค.
์ดฌ์ํ ๋ฏธ๋์ด ๋ชฉ๋ก์ ์ ํํ์ฌ ์ญ์ ํ ์ ์์ต๋๋ค.
[๋ฐ์์ทจ ์์ธ ์ ๋ณด ํ์]

- ๋ฐ์์ทจ์ ์ด๋ฆ, ํ๊ทธ, ์ฃผ์ ๋ฐฉ๋ฌธ ๋์, ์์ฑ ์๊ฐ, ์กฐํ์, ์ข์์์, ๋ถ๋งํฌ์, ์ข์์ ๋ฐ ๋ถ๋งํฌ ์ํ, ์์ฑ์์ ๋๋ค์, ์์ฑ์์ ํ๋กํ ์ด๋ฏธ์ง, ๋
นํ ์์ ์๊ฐ, ๋
นํ ์ข
๋ฃ ์๊ฐ, ์ด ๋
นํ ์๊ฐ, ์ค์ ๋
นํ์๊ฐ์ด ํ์๋ฉ๋๋ค.
[๋ฐ์์ทจ ์์ธ ์ ๋ณด ํ์ - ์ ์ ํ์ฌ ์์น ํ์]

- ์ง๋ ์ฐ์ธก์ ๋ง์ค์ฝํธ ์บ๋ฆญํฐ๋ฅผ ํด๋ฆญ ํ๋ฉด ์์ธ ์ ๋ณด๋ฅผ ๋ณด๊ณ ์๋ ์ ์ ์ ํ์ฌ ์์น๋ฅผ ์ง๋์์ ํ์ํ๊ณ ์ถ์ ํฉ๋๋ค.
[๋ฐ์์ทจ ์์ธ ์ ๋ณด ํ์ - ๊ฒฝ๋ก ์ฌ์ ๊ธฐ๋ฅ]

- ์ง๋ ์ฐ์ธก์ ์นด๋ฉ๋ผ ๋ฒํผ์ ํด๋ฆญํ๋ฉด ๊ฒฝ๋ก ๋
นํ์ค ์ฐ์ ๋ชจ๋ ๋ฏธ๋์ด์ ๋ชฉ๋ก์ด ํ์๋ฉ๋๋ค
[๋ฐ์์ทจ ์์ธ ์ ๋ณด ํ์ - ์ ์ฒด ๋ฏธ๋์ด ๋ชฉ๋ก ๋ณด๊ธฐ]

- ์ง๋ ์ฐ์ธก์ ์ฌ์ ๋ฒํผ์ ๋๋ฅด๋ฉด ๊ฒฝ๋ก๋ฅผ ๋
นํํ ์์๋ก ์ ์ด ๊ทธ์ด์ง๋ ์ ๋๋ฉ์ด์
ํจ๊ณผ๊ฐ ์คํ๋ฉ๋๋ค.
[๋ฐ์์ทจ ์์ธ ์ ๋ณด ํ์ - ์ข์์ ๋ฐ ๋ถ๋งํฌ ๊ธฐ๋ฅ]

- ์ข์์ ๋ฐ ๋ถ๋งํฌ ๋ฒํผ์ ํด๋ฆญํ๋ฉด ๋ฐ์์ทจ์ ์ข์์๋ ๋ถ๋งํฌ๋ฅผ ํ์ํ ์ ์์ต๋๋ค. ๋จ ๋ถ๋งํฌ๋ฅผ ๋ฐ๋ก ๋ชจ์๋ณด๋ ๊ธฐ๋ฅ์ ๋ฏธ๊ตฌํ ์ํ ์
๋๋ค.
[ํ๊ทธ ๋ฐ ๋์ ํ๊ทธ ๊ธฐ๋ฅ]

- ๋ฐ์์ทจ ์์ธ ์ ๋ณด ํ์ด์ง ๋ฐ ๋ฐ์์ทจ ๋ฆฌ์คํธ์์ ํ๊ทธ ๋ฐ ๋์ ํ๊ทธ๋ฅผ ํด๋ฆญํ๋ฉด ํด๋น ํ๊ทธ์ ํด๋นํ๋ ์ผ์ ๋ฆฌ์คํธ๋ฅผ ๋ณด์ฌ์ค๋๋ค
[๋ฐ์์ทจ ๋ชฉ๋ก]

- ๋ฐ์์ทจ ๋ฆฌ์คํธ๋ฅผ ๋ฌดํ ์คํฌ๋กค ํ์์ผ๋ก ๋ณด์ฌ์ค๋๋ค.
์กฐํ์, ์ข์์ ์, ๋ถ๋งํฌ ์, ์ต์ ์๋ฅผ ์กฐํฉํ์ฌ ์ ๋ ฌํฉ๋๋ค.
[๋ฐ์์ทจ ์์ ]

- ๋ฑ๋กํ ๋ฐ์์ทจ์ ์ ๋ชฉ, ํ๊ทธ ์์ , ๋ฏธ๋์ด ์ญ์ , ๋ํ ์ด๋ฏธ์ง ๋ณ๊ฒฝ์ด ๋ฐ์์ทจ ์์ ํ์ด์ง์์ ๊ฐ๋ฅํฉ๋๋ค.
[๋ฐ์์ทจ ์ญ์ ]

- ํ์ธ ์ฐฝ์ด ๋์ค๊ณ ์ญ์ ๋ฒํผ์ ๋๋ฅด๋ฉด ์ญ์ ๊ฐ ์๋ฃ๋ฉ๋๋ค.
[ํญ๊ณต๊ถ ๊ฒ์]

- ์ถ๋ฐ ๊ณตํญ, ๋์ฐฉ ๊ณตํญ, ์ฌํ ๊ธฐ๊ฐ์ ์
๋ ฅํด์ ๋ค์ด๋ฒ ํญ๊ณต์ ๋ชจ๋ ํญ๊ณต๊ถ์ ๊ฒ์ํ์ฌ ๊ฐ์ ธ์ต๋๋ค.
[ํญ๊ณต๊ถ ์๋งค ๋งํฌ ๋ฐ ์ฌํ ํ๋ ์ถ์ฒ ํ๊ทธ ์
๋ ฅ]

- ์ ํํ ํญ๊ณต๊ถ์ ๋ค์ด๋ฒ ํญ๊ณต ์๋งคํ์ด์ง ๋งํฌ๋ฅผ ์ ๊ณต ํ๋ฉฐ, ์ฌํ ํ๋์ ์ถ์ฒ ๋ฐ๊ธฐ ์ํ ํ๊ทธ๋ฅผ ์ธ๊ฐ๊น์ง ์
๋ ฅ๋ฐ์ต๋๋ค.
[์ฌํ ํ๋ ์ถ์ฒ]

- ์
๋ ฅํ ํ๊ทธ ๋ฐ ํญ๊ณต๊ถ์ ๋ฐํ์ผ๋ก ์ฌํ ๊ณํ์ ์๊ฐ ๋ณ๋ก ์์ฑํ์ฌ ๋ณด์ฌ์ค๋๋ค.
๋ฐ๋ง - ํ๊ฒฝ์ค์ ๊ฐ์ด๋ ๋ถ
1. ์์ค ์ฝ๋ git
์๋ ์์ค๋ค์ ํด๋ก ํด ์ฃผ์ธ์.
์คํ๋ง ์๋ฒ : https://github.com/insamju300/balmam.git
ํ์ด์ฌ ์๋ฒ : https://github.com/insamju300/balmamPython.git
2. ํ๋ก์ ํธ ์คํ์ ํ์ํ ํ๋ก๊ทธ๋จ
STS4
VSCode
Xampp
SQLyog
ํ์ด์ฌ
3. DB(DataBase) ์ธํ
-
balman ํด๋ ๋ด๋ถ์ DB.sql ํ์ผ์ ํ
์คํธ๋ฅผ ์ ์ฒด ๋ณต์ฌ(ctrl+A)ํด์ฃผ์ธ์.

-
SQLYog์์ ํด๋น ํ
์คํธ๋ฅผ ๋ถ์ฌ๋ฃ๊ณ , ์ ์ฒด ์ฟผ๋ฆฌ๋ฅผ ์คํ(F9)ํด์ฃผ์ธ์.

4. Gmail ๊ด๋ จ ํ๊ฒฝ ์ค์
- ์์คํ
ํ๊ฒฝ ๋ณ์ ํธ์ง์ ์ด์ด์ฃผ์ธ์.

-
MAIL_USERNAME์ ์ ์ ์ google email์ ํ๊ฒฝ๋ณ์๋ก,
MAIL_PASSWORD์ ์ ์ ์ google ํจ์ค์๋๋ฅผ ํ๊ฒฝ๋ณ์๋ก ์ง์ ํด์ฃผ์ธ์.

-
์ฑ ๋น๋ฐ๋ฒํธ๋ google ๊ณ์ -> ๋ณด์-> 2๋จ๊ณ ์ธ์ฆ์์ ์ทจ๋ํ ์ ์์ต๋๋ค.

5. API KEY ๊ด๋ จ ์ค์
-
googleMap ํค ์ค์ ์ ์ํด ์๋ ํ์ผ๋ช
์ผ๋ก ์๋ ๋ด์ฉ์ ํ์ผ์ ๋ง๋ค์ด ์ฃผ์ธ์.
ํ์ผ๋ช
: js_keys.js
ํ์ผ๋ด์ฉ:
function getGoogleMapKey(){
return "your_googlemap_key";
}
๋ฐฐ์น ์์น: balmam\src\main\resources\static

-
OPENAI_API ํค ์ค์ ์ ์ํด ์๋ ํ์ผ๋ช
์ผ๋ก ์๋ ๋ด์ฉ์ ํ์ผ์ ๋ง๋ค์ด ์ฃผ์ธ์.
openai์ apiํค๋ ์๋ ์ฌ์ดํธ์์ ์ป์ ์ ์์ต๋๋ค.
https://openai.com/index/openai-api
ํ์ผ๋ช
: .env
ํ์ผ๋ด์ฉ:
OPENAI_API_KEY=your_open_ai_api_key
๋ฐฐ์น ์์น: balmamPython

6. ์ด๋ฏธ์ง ์ธ๋ค์ผ ์ถ์ถ์ ์ํ ์ธ๋ถ ํ๋ก๊ทธ๋จ ์ค์
-
https://github.com/BtbN/FFmpeg-Builds/releases ์์ ffmpeg-master-latest-win64-gpl-shared.zip์ ๋ค์ด๋ฐ์์ฃผ์ธ์.

-
๋ค์๊ณผ ๊ฐ์ ๋๋ ํ ๋ฆฌ๊ฐ ๋๊ฒ ์์์ ๋ค์ด๋ฐ์ ํ์ผ์ ๋ฐฐ์นํด์ฃผ์ธ์.
C:/files/balmam/tools/ffmpeg/bin/ffmpeg.exe

7. Python fast api ์ค์
๊ตฌ๋์ ํ์ํ ํ๋ก๊ทธ๋จ
-
VS code์์ FIle -> OpenFolder์ ๋๋ฌ์ฃผ์ธ์.
-
ํด๋ก ํ balmamPython ํด๋๋ฅผ ์ ํํด ์ฃผ์ธ์.

-
Terminal -> New Terminal์ ์ ํํด ์ฃผ์ธ์.
-
ํ๋ก๊ทธ๋จ์ ํ์ํ ๋ผ์ด๋ธ ๋ฌ๋ฆฌ ํ์ผ๋ค์ ๋ฐ์์ค๊ธฐ ์ํด ํฐ๋ฏธ๋์ ๋ค์ ๋ช
๋ น์ด ๋ค์ ์
๋ ฅํด์ฃผ์ธ์. (Python์ด ์ค์น๋์ด ๊ฒฝ๋ก์ค์ ๋ ๋์ด์๋ ๊ฑธ ์ ์ ๋ก ํฉ๋๋ค.)
pip install fastapi
pip install selenium
pip install langchain
pip install python-dotenv
pip install langchain_openai
pip install bs4
pip install lxml
pip install unicorn
- ๋ค์ ๋ช
๋ น์ด๋ฅผ ํตํด fast api๋ฅผ ์คํํด ์ฃผ์ธ์.
uvicorn main:app --reload
