Hprose+springboot调用远程连接

1、写在前面
没有好的开头语言,真的让我很尬(0哈哈0)! 项目中用到了Hprose远程连接,觉得很强大贴出来分享一下!

2、代码实现

引用(也可以到https://github.com/hprose/hprose-java 下载jar)

 <dependency>
            <groupId>org.hprose</groupId>
            <artifactId>hprose-java</artifactId>
            <version>2.0.32</version>
        </dependency>

在启动类上加上 @ServletComponentScan 注解

写一个测试类

@WebServlet(urlPatterns = {"/hprose"})
public class TcpCommand extends HproseServlet {

    /**
     * 注册
     * methods.addMethod("Hello", Test ); //注册sayHello单个方法
     *
     * @param methods
     */
    @Override
    public void setGlobalMethods(HproseMethods methods) {
		Test test = new Test();
		 methods.addInstanceMethods(test);
    }
}

Test.Class 代码

public class Test {

    public String sayHello(String name) {
        return "Hello," + name;
    }
}

服务端已经可以! 这么简单? 没想到吧(哈哈)

3、客户端

public interface IStub {
        @SimpleMode(true)
        String sayHello(String name);

        @SimpleMode(true)
        String haha(String name, int iii);
        
        @SimpleMode(true)
        String UserInfo(TestUser user);
    }



public static void main(String[] args) throws IOException, URISyntaxException {
        // HproseClassManager.register(TestUser.class, "testuser");

      HproseTcpClient client = new HproseTcpClient("http://localhost:8080/");
        client.setFullDuplex(true);
        client.setMaxPoolSize(1);

        IStub stub = client.useService(IStub.class);
        stub.Hello("Async World", new HproseCallback1<String>() {
            public void handler(String result) {
                System.out.println(result);
            }
        });

        System.out.println(stub.Hello("World5"));*/
 
        TestUser user = new TestUser();

        user.setId(5);
        user.setName("222");
        System.out.println(stub.UserInfo(user));

        client.close();*/
        HproseClient client = new HproseHttpClient();
        client.useService("http://localhost:8080/hprose");

        //通过接口调用
        IStub stub = client.useService(IStub.class);
        String content = stub.gexx(getPropertisByIsPayment());
        System.out.println("rpc调用,返回:" + content);

    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

行人已

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值