| 12345678910111213141516171819202122232425262728293031323334 |
- """
- 数据库配置管理
- """
- import os
- from typing import Optional
- from dotenv import load_dotenv
- load_dotenv()
- class DatabaseConfig:
- """Oracle数据库配置类"""
-
- def __init__(
- self,
- host: Optional[str] = None,
- port: Optional[int] = None,
- service_name: Optional[str] = None,
- username: Optional[str] = None,
- password: Optional[str] = None
- ):
- self.host = host or os.getenv("DB_HOST", "localhost")
- self.port = port or int(os.getenv("DB_PORT", "1521"))
- self.service_name = service_name or os.getenv("DB_SERVICE_NAME", "ORCL")
- self.username = username or os.getenv("DB_USERNAME", "system")
- self.password = password or os.getenv("DB_PASSWORD", "")
-
- def get_connection_string(self) -> str:
- """获取Oracle连接字符串"""
- return f"{self.username}/{self.password}@{self.host}:{self.port}/{self.service_name}"
-
- def validate(self) -> bool:
- """验证配置是否完整"""
- return all([self.host, self.port, self.service_name, self.username, self.password])
|