wg-basic/basic-util/src/test/java/RemoteTest.java

89 lines
3.8 KiB
Java

import ink.wgink.annotation.remote.rest.params.RemoteServerParams;
import ink.wgink.annotation.remote.rest.method.RemoteDeleteMethod;
import ink.wgink.annotation.remote.rest.method.RemoteGetMethod;
import ink.wgink.annotation.remote.rest.method.RemotePostMethod;
import ink.wgink.annotation.remote.rest.method.RemotePutMethod;
import ink.wgink.annotation.remote.rest.params.RemoteJsonBodyParams;
import ink.wgink.annotation.remote.rest.params.RemotePathParams;
import ink.wgink.annotation.remote.rest.params.RemoteQueryParams;
import ink.wgink.pojo.dtos.user.UserDTO;
import ink.wgink.pojo.result.SuccessResult;
import ink.wgink.pojo.result.SuccessResultList;
import ink.wgink.util.remote.rest.proxy.RestRemoteProxy;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @ClassName: RemoteTest
* @Description: 远程调用
* @Author: wanggeng
* @Date: 2021/9/19 11:28 下午
* @Version: 1.0
*/
public class RemoteTest {
public interface IDemo {
@RemoteGetMethod("/app/user-expand/get-user-release/{userId}")
UserDTO getUser(@RemoteServerParams String remotePath, @RemotePathParams("userId") String userId);
@RemoteGetMethod("/app/user-expand/list-user-release")
List<UserDTO> listUser(@RemoteServerParams String remotePath);
@RemoteGetMethod("/app/user-expand/listpage-user-release")
SuccessResultList<List<UserDTO>> listPageUser(@RemoteServerParams String remotePath, @RemoteQueryParams("page") Integer page, @RemoteQueryParams("size") Integer size);
@RemotePostMethod("/app/user-expand/save-release")
SuccessResult postRelease(@RemoteServerParams String remotePath, @RemoteJsonBodyParams Map<String, Object> params);
@RemotePostMethod("/app/user-expand/save-list-release")
SuccessResult postListRelease(@RemoteServerParams String remotePath, @RemoteJsonBodyParams List<Map<String, Object>> params);
@RemotePutMethod("/app/user-expand/update-release")
SuccessResult putRelease(@RemoteServerParams String remotePath, @RemoteJsonBodyParams Map<String, Object> params);
@RemoteDeleteMethod("/app/user-expand/delete-release/{userIds}")
SuccessResult deleteRelease(@RemoteServerParams String remotePath, @RemotePathParams("userIds") String userIds);
}
public static void main(String[] args) {
String remotePath = "http://127.0.0.1:7008/study";
IDemo instance = RestRemoteProxy.getInstance(IDemo.class);
UserDTO userDTO = instance.getUser(remotePath, "e48e9c4a-995e-4061-abcd-a3c260c11333");
System.out.println(userDTO);
System.out.println();
List<UserDTO> userDTOs = instance.listUser(remotePath);
System.out.println(userDTOs.size());
System.out.println();
SuccessResultList<List<UserDTO>> successResultUserList = instance.listPageUser(remotePath, 1, 5);
System.out.println(successResultUserList.getPage());
System.out.println();
Map<String, Object> requestBody = new HashMap<>();
requestBody.put("aaa", "aaa1");
SuccessResult successResult = instance.postRelease(remotePath, requestBody);
System.out.println(successResult);
System.out.println();
List<Map<String, Object>> listBody = new ArrayList<>();
listBody.add(requestBody);
SuccessResult successResult1 = instance.postListRelease(remotePath, listBody);
System.out.println(successResult1);
System.out.println();
requestBody.put("aaa", "aaa2");
SuccessResult successResult2 = instance.putRelease(remotePath, requestBody);
System.out.println(successResult2);
System.out.println();
SuccessResult successResult3 = instance.deleteRelease(remotePath, "abc_def_ghi");
System.out.println(successResult3);
System.out.println();
}
}