良好实践:API 和 MVC - 我应该将方法/函数与 API 的 SQL 查询放在哪里

Posted

技术标签:

【中文标题】良好实践:API 和 MVC - 我应该将方法/函数与 API 的 SQL 查询放在哪里【英文标题】:Good practice: API and MVC - where should I put method / function with SQL query for API 【发布时间】:2019-02-01 23:48:45 【问题描述】:

我已经根据 MVC 模式完成了项目,现在我正在寻找添加 API。我有一个单独的 myresource 包,这个包包含应该以 JSON 格式返回数据的函数(现在只是占位符文本)。现在我想用 mysql 查询创建函数/方法并从 MySQL DB 返回请求的数据。我想在我的模型文件中创建另一个方法来保持 MVC 模式。但是,我不知道,对于 API,我应该在 API servlet 中创建这个函数还是将它放在模型中并保留 API servlet 仅返回请求的数据?

【问题讨论】:

从设计的角度来看,在我看来你是在谈论DAO;还要看看应该使用 DAO 的服务。见***.com/questions/13785634/… 勘误表:以前是意大利维基DAO链接 【参考方案1】:

最好将 sql 查询与 api 函数分开。此外,我发现我的 API 处理程序没有被 ORM/SQL 查询污染更好。这样做的另一个好处是,当您开始向项目添加单元测试时,您可以独立于模型测试 API 处理程序。即为了测试 api,模拟模型函数。

最后,这是一个意见和良好做法的问题。

【讨论】:

以上是关于良好实践:API 和 MVC - 我应该将方法/函数与 API 的 SQL 查询放在哪里的主要内容,如果未能解决你的问题,请参考以下文章

API Application Insights 使用的良好实践

ASP.NET MVC 4 / MVVM / Web API 的良好结构? [关闭]

10个有关RESTful API良好设计的最佳实践

Angular 4+ Service 引用了另一个服务的良好实践

Spring MVC 领域对象处理最佳实践

我们应该将 CancellationToken 与 MVC/Web API 控制器一起使用吗?