Files
a301_mmo_game_server/ReadMe.md

1.8 KiB

DB 사용법

구조

MMOServer (실행 프로젝트 Test파일들은 임시용)
├── RDB/
├──── Handlers/
│   └──── TestHandler.cs
├──── Models/
│   └──── TestM.cs
├──── Repositories/
│   └──── TestRepository.cs
└──── Services/
    └──── TestService.cs

ServerLib (DLL)
├── RDB/
├──── Database/
│   └── DbConnectionFactory.cs
├──── Handlers/
│   ├── HandlerHelper.cs
│   └── Response.cs
└──── Repositories/
    └── ARepository.cs

데이터 흐름

호출부 (Packet 등)
    ↓  파라미터 전달
Handler       →  Service 호출 + 응답 포맷팅 (string)
    ↓
Service       →  비즈니스 로직, 유효성 검사, 예외 throw
    ↓
Repository    →  DB 접근 (TestM? / bool / long 반환)
    ↓
MySQL

반환 타입 정리

레이어 반환 타입
Repository class? / IEnumerable<class> / long / bool
Service 동일 (그대로 올림)
Handler string (JSON 포장)

새 테이블 추가 시

  1. MMOServer/RDB/Models/ 에 Model 추가
  2. MMOServer/RDB/Repositories/ 에 Repository 추가 (ARepository 상속)
  3. MMOServer/RDB/Services/ 에 Service 추가
  4. MMOServer/RDB/Handlers/ 에 Handler 추가

ServerLib (DLL) 은 건드릴 필요 없음.


Connection Pool 설정(아직 구성 안됨)

Server=localhost;Database=mydb;User=root;Password=1234;
Pooling=true;MinimumPoolSize=5;MaximumPoolSize=100;
ConnectionTimeout=30;ConnectionIdleTimeout=180;