1. 声名服务接口

举个例子

  public interface IUser {
      boolean addUser(UserDto userDto);
      List<UserDto> getUsers();
      void addUserVoid(UserDto userDto);
  }

2. 服务提供方(Provider)

a. Maven dependency

 <!-- CaoyxRpc springProvider 的依赖 -->
 <dependency>
   <artifactId>caoyx-rpc-spring-provider</artifactId>
   <groupId>com.github.iancao</groupId>
   <version>${caoyxRpc.version}</version> 
 </dependency>
 <!-- 步骤1中的声名接口依赖 -->
 <dependency>
    <artifactId>xxxxx</artifactId>
    <groupId>xxxx</groupId>
    <version>xxxxx</version> 
  </dependency>

b. 实现接口声名并注解

实现步骤一的接口声名,并在接口类上添加 @CaoyxRpcService注解

c. 添加配置参数

application.properties或者 application.yml 中增加

 caoyxRpc.provider.applicationName=caoyxRpc-sample-springboot-client // 服务提供方的名称必填
 caoyxRpc.provider.port=1118  // 服务提供方暴露的端口,默认1118,选填

d. 启动服务

这条日志代表对应className的实现启动成功

exportService: className[xxxx] implVersion:[x] success:[true]

3. 服务调用方(Invoker)

a. Maven dependency

 <!-- CaoyxRpc springInvoker 的依赖 -->
 <dependency>
   <artifactId>caoyx-rpc-spring-invoker</artifactId>
   <groupId>com.github.iancao</groupId>
   <version>${caoyxRpc.version}</version>
 </dependency>
 <!-- 步骤1中的声名接口依赖 -->
 <dependency>
    <artifactId>xxxxx</artifactId>
    <groupId>xxxx</groupId>
    <version>xxxxx</version> 
  </dependency>

b. 如何使用