Files
pig-farm-controller/internal/storage/db/storage.go
2025-09-08 17:07:32 +08:00

30 lines
823 B
Go

// Package db 提供统一的数据存储接口
// 定义存储接口规范,支持多种存储后端实现
// 当前支持PostgreSQL实现
package db
import (
"gorm.io/gorm"
)
// Storage 代表统一的存储接口
// 所有存储实现都需要实现此接口定义的方法
type Storage interface {
// Connect 建立与存储后端的连接
Connect() error
// Disconnect 断开与存储后端的连接
Disconnect() error
// GetDB 获取数据库实例
GetDB() *gorm.DB
}
// NewStorage 创建并返回一个存储实例
// 根据配置返回相应的存储实现
func NewStorage(connectionString string, maxOpenConns, maxIdleConns, connMaxLifetime int) Storage {
// 当前默认返回PostgreSQL存储实现
s := NewPostgresStorage(connectionString, maxOpenConns, maxIdleConns, connMaxLifetime)
return s
}