Laravel 实现 Repository 和 Service 模式

在Laravel 中如果使用 MVC 模式的情况下,会在 Controller 或 Model 中编写大量的逻辑和数据处理,这样的话会很不好维护。

如果使用 Repository 和 Service 模式 会提高程序的扩展,降低耦合性.

比如 现在有一个对用户的相关处理 ,我们创建一个 UserService 接口和相关实现类来专门处理用户的相关逻辑;在创建一个 UserRepository 专门用于获取数据

比我要获取 users 表 notification_count 大于某个数值

UserService 的接口和实现类


Laravel 实现 Repository 和 Service 模式_第1张图片


Laravel 实现 Repository 和 Service 模式_第2张图片

UserRepository 的接口和实现类:


Laravel 实现 Repository 和 Service 模式_第3张图片
Laravel 实现 Repository 和 Service 模式_第4张图片

然后在App\Providers\AppServiceProvider 中的 register() 方法中注册这两个接口


Laravel 实现 Repository 和 Service 模式_第5张图片

最后在对应的 Controller 中实现相关操作


Laravel 实现 Repository 和 Service 模式_第6张图片

你可能感兴趣的:(Laravel 实现 Repository 和 Service 模式)