실시간 시세 데이터를 기반으로 암호화폐를 모의 매수/매도할 수 있는 웹 서비스입니다.
Upbit WebSocket API를 연동하여 실시간으로 암호화폐 시세를 받아오고,
가상의 KRW 잔액으로 매수/매도를 체험할 수 있는 모의투자 플랫폼입니다.
수익률 기반 랭킹 시스템과 커뮤니티 게시판 기능도 포함되어 있습니다.
| 분류 | 기술 |
|---|---|
| Language | Java 21 |
| Backend | JSP/Servlet (Jakarta EE) |
| Database | MySQL |
| 실시간 통신 | WebSocket (Jakarta WebSocket, OkHttp) |
| 외부 API | Upbit WebSocket API, Upbit REST API |
| Server | Apache Tomcat 10.1 |
| IDE | Eclipse IDE for Enterprise Java and Web Developers |
- Upbit WebSocket API 연동으로 19개 암호화폐 실시간 시세 수신
- 캔들 차트 실시간 업데이트
- 클라이언트 세션마다 독립적인 WebSocket 연결 관리
- 가상 KRW 잔액으로 암호화폐 매수/매도
- 0.05% 수수료 적용
- 평균 매수가 기반 실현 손익 계산
- 보유 코인 및 거래 내역 조회
- 회원가입 / 로그인 / 로그아웃 / 회원탈퇴
- 세션 기반 인증
- 마이페이지에서 닉네임/이메일/비밀번호 수정
- 수익률 기반 Top 20 랭킹
- 게시글 CRUD
- 댓글 작성/수정/삭제
- 좋아요 토글
- 전체 유저 조회 및 관리
- 유저 권한(ADMIN/USER) 변경
- 유저 잔액 조정
src/main/java/com/coinlab/
├── controller/
├── service/
├── dao/
├── dto/
├── filter/
└── util/
- JDK 21 설치
- Eclipse IDE for Enterprise Java and Web Developers 설치
- Apache Tomcat 10.1 다운로드
- MySQL 설치 및 실행
git clone https://github.com/dohun1214/coinlab.git- Eclipse 실행
File→Import...선택General→Existing Projects into Workspace선택 후NextSelect root directory클릭 후 clone한CoinLab폴더 선택- Projects 목록에
CoinLab프로젝트가 체크되어 있는지 확인 Finish클릭
- MySQL 접속
src/main/resources/sql/schema.sql파일 실행하여 데이터베이스 생성src/main/resources/db.properties.example파일을 복사하여db.properties생성db.properties에 본인의 MySQL 접속 정보 입력db.url=jdbc:mysql://localhost:3306/coinlab db.username=your_username db.password=your_password
- Eclipse 하단의
Servers탭 클릭 (없으면Window→Show View→Servers) No servers are available. Click this link to create a new server...클릭Apache→Tomcat v10.1 Server선택 후NextBrowse...클릭하여 다운로드한 Tomcat 10.1 폴더 선택Next클릭Available목록에서CoinLab프로젝트 선택 후Add클릭Finish클릭
Servers탭에서Tomcat v10.1 Server우클릭Start선택- 브라우저에서
http://localhost:8080/CoinLab접속
프로젝트가 인식되지 않는 경우
- 프로젝트 우클릭 →
Properties→Project Facets에서Dynamic Web Module체크 확인
서버 실행 오류
- 프로젝트 우클릭 →
Properties→Targeted Runtimes에서 Tomcat 10.1 체크 확인 Project→Clean...실행 후 재시작
라이브러리 오류
- 프로젝트 우클릭 →
Build Path→Configure Build Path Libraries탭에서 JRE System Library가 JavaSE-21인지 확인
JSP 파일에 빨간 줄 표시 (HttpServlet 오류)
Project→Clean...선택 후CoinLab프로젝트 선택 →Clean클릭- Eclipse가 프로젝트를 다시 빌드하면 오류 해결