C# 通过hessian调Java注意事项
2010-03-29 19:25
253 查看
照理说C#可以通过标准的web服务可以轻松地调用Java,但是鉴于hessian的高性能及开发效率,个人认为C#通过hessian调用java是很值得提倡的。之前完成的一个比较大型的企业应用项目就是采用C#作为winform客户端应用通过hessian调用java来实现的,事实证明hessian的响应、效率还都不错,开发效率也挺高。
总结之前的项目经验,个人觉得C#通过hessian调用java需注意下述几个问题:
1) hessian客户端需重写
不知是何原因hessian C#客户端更新不及时,而且比较其它语言(java、Python等)不是很成熟,比如经常在网上可以看到有人在喊decimal类型的问题等等。因此,需要下载hessian C#客户端源码,进行重写,主要解决函数调用多态问题、引用问题、decimal等类型支持问题,对于有些byte读取也可以进行适当性能优化。
2) 尽量使用基本类型
尽量使用基本类型等简单类型,忌讳Map、list等多层嵌套。
3) hessian两端的数据结构要对称
java端的包和C#的命名空间要对牢,否则在序列化反序列化时会得到你不想要的结果。
4) 最好避免多态调用
如非必要,建议避免函数多态调用。
5) 大数据量传输要进行优化处理
如之前的项目经常会出现一次传输几万张凭证数据的情况,为此需要对数据进行类型转换、压缩等处理,一个减少序列化反序列化时间,另外一个减轻网络负担。
总结之前的项目经验,个人觉得C#通过hessian调用java需注意下述几个问题:
1) hessian客户端需重写
不知是何原因hessian C#客户端更新不及时,而且比较其它语言(java、Python等)不是很成熟,比如经常在网上可以看到有人在喊decimal类型的问题等等。因此,需要下载hessian C#客户端源码,进行重写,主要解决函数调用多态问题、引用问题、decimal等类型支持问题,对于有些byte读取也可以进行适当性能优化。
2) 尽量使用基本类型
尽量使用基本类型等简单类型,忌讳Map、list等多层嵌套。
3) hessian两端的数据结构要对称
java端的包和C#的命名空间要对牢,否则在序列化反序列化时会得到你不想要的结果。
4) 最好避免多态调用
如非必要,建议避免函数多态调用。
5) 大数据量传输要进行优化处理
如之前的项目经常会出现一次传输几万张凭证数据的情况,为此需要对数据进行类型转换、压缩等处理,一个减少序列化反序列化时间,另外一个减轻网络负担。
相关文章推荐
- C# 通过hessian调Java注意事项
- 通过java客户端连接hbase 注意事项
- 【注意事项】c#通过CallBack获取C++传递的数据
- HessianPHP_v2.0.3.zip, 在php作客户端,java作服务器端时,使用注意事项:
- JAVA通过BigDecimal四舍五入解决方案和注意事项
- 用JAVA通过LDAP修改AD用户密码注意事项
- 用JAVA通过LDAP修改AD用户密码注意事项
- C#转 JAVA 注意事项
- 通过java客户端连接hbase 注意事项
- c#调用java代码(jar转化成dll):ikvm 使用注意事项
- GDAL通过swig,在.net和java下使用注意事项.
- C#转java开发注意事项
- C# 通过 Hessian服务调用java
- C#客户端调用java CXF WebService注意事项
- forward redirct 转向和重定向区别;通过el和java代码在jsp页面取出参数,jsp:param注意事项
- 通过java客户端连接hbase 注意事项
- C#中将字符串通过GZipStream进行压缩时的注意事项
- (java)关于OJ中字符串通过空格分隔的情况,注意事项
- java 项目中 oracle in 使用的注意事项
- java中对象的比较---==与equals的使用注意事项