跳到主要内容

服务

服务层是业务逻辑的具体实现,主要负责处理业务逻辑,包括数据的读取、写入、修改、删除等操作。

internal/service 目录下,用于存放服务层相关代码。

服务示例

internal/service 目录下,我们规定一个文件声明一个服务,例如 example.go 文件,就是我们的示例服务,用于存放示例服务的定义。


type ExampleService struct{}

func (exampleService *ExampleService) CreateExample(data map[string]interface{}) *models.Example {

example := models.Example{
Name: data["name"].(string),
}

res := db.Create(&example)
if res.Error != nil || res.RowsAffected == 0 {
return nil
}

return &example

}

上面的代码中,我们定义了 ExampleService 结构体,用于存放示例服务的方法。

CreateExample 方法中,我们接收一个 map[string]interface{} 类型的参数,用于接收请求参数,然后创建 Example 模型,并将其写入数据库。

确保 在 服务层,我们只处理业务逻辑,不要处理请求参数的解析、响应的返回等操作。