我正在使用 CodeIgniter 中的模型。然而,CodeIgniter 中的模型与 Java(Spring、Struts)中的模型完全不同。在我的理解中,模型基本上是 CodeIgniter 中的 DAO,并且您没有像 Java 中的 JavaBeans 这样的模型(它基本上包含每个属性的 getter 和 setter,仅此而已,此外,它还实现了可序列化)。
在 CodeIgniter 中分离 DAO 和 DTO 的方法是什么?
我正在使用 CodeIgniter 中的模型。然而,CodeIgniter 中的模型与 Java(Spring、Struts)中的模型完全不同。在我的理解中,模型基本上是 CodeIgniter 中的 DAO,并且您没有像 Java 中的 JavaBeans 这样的模型(它基本上包含每个属性的 getter 和 setter,仅此而已,此外,它还实现了可序列化)。
在 CodeIgniter 中分离 DAO 和 DTO 的方法是什么?
你是对的。CodeIgniter 中的模型对应于 Java 中的 DAO。来自 CodeIgniter文档:
模型代表您的数据结构。通常,您的模型类将包含帮助您在数据库中检索、插入和更新信息的函数
我注意到 DAO 和 DTO 之间没有明显的区别。这些函数通常返回数组而不是 DTO。您通常会使用Active Record提供的工具查询数据存储。返回数据的最常见消费者是视图。只需将数组传递给视图,就可以很容易地输出数据。
以下是来自 CI 应用程序的 CI 模型示例:https ://github.com/ci-bonfire/Bonfire/blob/develop/bonfire/modules/users/models/user_model.php
我认为您可以使自己的代码使用以下代码:
MY_loader
public function dao($daoName) {
require_once APPPATH . '/dao/' . $daoName . '.php';
}
要访问您的 dao 课程,您应该使用 DTR
get_instance()->load->dao('dao_sample');
确保在应用程序文件夹中创建名为dao的新文件夹
然后它准备好实例化