如何在 PHP 中创建通用 DAO 接口?
Posted
技术标签:
【中文标题】如何在 PHP 中创建通用 DAO 接口?【英文标题】:How do I make a generic DAO interface in PHP? 【发布时间】:2019-09-03 17:02:07 【问题描述】:我正在尝试用 php 编写一个通用的 DAO 接口。我知道它在 Java 中的样子,但我只知道它在 PHP 中的样子。
我已经在 PHP 中尝试过。
<?php
interface DAO
public function create($obj);
public function read();
public function update($obj);
public function delete($obj);
因为我想要这样的 Java 接口
public interface DAO<T>
void create(T ob);
List<T> read();
void update(T ob);
void delete(String id);
我希望能够像在 PHP 中那样编写接口,但我无法将通用对象添加到接口中。
【问题讨论】:
【参考方案1】:通用 DAO 的最简单形式是在对象级别提供基本的 CRUD 操作,而不暴露持久性机制的内部。
interface UserDao
/**
* Store the new user and assign a unique auto-generated ID.
*/
function create($user);
/**
* Return the user with the given auto-generated ID.
*/
function findById($id);
/**
* Return the user with the given login ID.
*/
function findByLogin($login);
/**
* Update the user's fields.
*/
function update($user);
/**
* Delete the user from the database.
*/
function delete($user);
【讨论】:
以上是关于如何在 PHP 中创建通用 DAO 接口?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Spring MVC 中的不同类中创建动态 bean