swoft微服务实战十七:RPC服务端

1. RPC服务端:

(1). app\Rpc\Lib\ICourse.php:

namespace App\Rpc\Lib;
interface ICourse {
    public function list($size);
    public function get($id);
}

(2). app\Rpc\Service\CourseService.php:

namespace App\Rpc\Service;
use App\Models\CourseMain;
use App\Models\CourseMetas;
use App\Models\CourseModel;
use App\Rpc\Lib\ICourse;
use Swoft\Rpc\Server\Annotation\Mapping\Service;
/**
 * @Service()
 */
class CourseService implements ICourse {
    public function list($size)
    {
        return ["list"];
    }
    public function get($id)
    {
        // course_main课程主表
        $main = CourseMain::find($id);
        // course_meta课程元信息表
        $mate = CourseMetas::where('course_id', $id)->get();
        $model = new CourseModel();
        // 通过CourseModel将主表与元信息表关联在一起
        $model->setCourseMain($main);
        $model->setCourseMetas($mate);
        return $model->toArray();
    }
}:. 没有@Service()注解,会提示"Route(1.0-App\Rpc\Lib\ICourse) is not founded!".

(3). swoft提供了内置命令帮助快速生成实体类:

php bin/swoft entity:create --table=course_main,course_metas --path=@app/Models

注:
①. --path表示放到哪个位置.
②. app\bean.php中设置好"db"选项的address、prot、user、password、etc...
③. 执行命令会连接数据库,并检查表是否存在.
④. 存在则创建文件CourseMain.php、CourseMetas.php,会把所有的字段设置为private,并且自动设置get、set方法.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值