首先添加hessian依赖
<dependency> <groupId>com.caucho</groupId> <artifactId>hessian</artifactId> <version>4.0.38</version> </dependency>
服务端:HessianServer,端口号:8090
public interface HelloWorldService { String sayHello(String name); } @Service("HelloWorldService") public class HelloWorldServiceImpl implements HelloWorldService { @Override public String sayHello(String name) { return "Hello World! " + name; } } @SpringBootApplication public class HessianServerApplication { @Autowired private HelloWorldService helloWorldService; public static void main(String[] args) { SpringApplication.run(HessianServerApplication.class, args); } //发布服务 @Bean(name = "/HelloWorldService") public HessianServiceExporter accountService() { HessianServiceExporter exporter = new HessianServiceExporter(); exporter.setService(helloWorldService); exporter.setServiceInterface(HelloWorldService.class); return exporter; } }
客户端代码:HessianClient,同服务端一样引入hessian依赖,端口号:8092
public interface HelloWorldService { String sayHello(String name); } @SpringBootApplication public class HessianClientApplication { @Bean public HessianProxyFactoryBean helloClient() { HessianProxyFactoryBean factory = new HessianProxyFactoryBean(); factory.setServiceUrl("http://localhost:8090/HelloWorldService"); factory.setServiceInterface(HelloWorldService.class); return factory; } public static void main(String[] args) { SpringApplication.run(HessianClientApplication.class, args); } } @RestController public class TestController { @Autowired private HelloWorldService helloWorldService; @RequestMapping("/test") public String test() { return helloWorldService.sayHello("Spring boot with Hessian."); } }
访问地址即可:http://localhost:8092/test
PS:springboot hessian
注意把hessian的依赖换成4.0.38或者把git文件里的4.0.37放到maven私服中去,推荐使用4.0.37版本。38版本存在序列化bigdecimal的问题。
<dependency> <groupId>com.caucho</groupId> <artifactId>hessian</artifactId> <version>4.0.37</version> </dependency>
git:
https://git.oschina.net/wong_loong/rpc.git
以上所述是小编给大家介绍的spring boot整合hessian的示例,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对亿速云网站的支持!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。