package storage import ( "github.com/syndtr/goleveldb/leveldb" ) // LevelDBStorage 封装LevelDB基础操作 type LevelDBStorage struct { db *leveldb.DB } // NewLevelDBStorage 初始化LevelDB实例 func NewLevelDBStorage(path string) (*LevelDBStorage, error) { db, err := leveldb.OpenFile(path, nil) if err != nil { return nil, err } return &LevelDBStorage{db: db}, nil } // Put 存储键值对 func (s *LevelDBStorage) Put(key []byte, value []byte) error { return s.db.Put(key, value, nil) } // Get 获取键对应的值 func (s *LevelDBStorage) Get(key []byte) ([]byte, error) { return s.db.Get(key, nil) } // Delete 删除指定键 func (s *LevelDBStorage) Delete(key []byte) error { return s.db.Delete(key, nil) } // Close 关闭数据库连接 func (s *LevelDBStorage) Close() { s.db.Close() }