1.下载Hessiancsharp.dll

2.新建一个c#窗体程序,然后在添加一个类库

3.添加一个接口类,接口中的方法名和参数与java中的服务方法名和参数保持一致

  public partial interface HessianManager
{
/// <summary>
///
/// </summary>
/// <param name="method">方法名</param>
/// <param name="operate">操作(添加、删除、修改)</param>
/// <param name="json">json数据</param>
/// <returns></returns>
string synchronizeData(string method, string operate, string json); string sayHello(string msg);
}

4.引用Hessiancsharp.dll

5.通过hessian调用java

    public partial class frmHessian : Form
{
string url = ConfigurationManager.AppSettings["url"].ToString(); CHessianProxyFactory factory = new CHessianProxyFactory();
HessianManager hessianClient = null; public frmHessian()
{
InitializeComponent();
hessianClient = (HessianManager)factory.Create(typeof(HessianManager), url);
} /// <summary>
/// 同步供应商
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnSynSupplier_Click(object sender, EventArgs e)
{
List<Supplier> supplists = new List<Supplier>();
DataTable dt = DbHelperSQL.Query("SELECT * FROM dbo.Sys_Supplier WHERE ss_State=1").Tables[]; foreach (DataRow item in dt.Rows)
{
Supplier sup = new Supplier();
sup.bbbpSn = item["ss_SupplierNo"].ToString();
sup.bbbpId = item["ss_SupplierNo"].ToString();
sup.bbbpBbbrId = ;
sup.bbbpName = item["ss_SupplierName"].ToString();
sup.bbbpContact = item["ss_Contact"].ToString();
sup.bbbpContactTel = item["ss_Tel"].ToString();
sup.bbbpContactPhone = item["ss_Phone"].ToString();
sup.bbbpContactAddress = item["ss_Adress"].ToString();
sup.bbbpState = Convert.ToInt32(item["ss_State"]) == ? "有效" : "无效";
sup.bbbpLocationid = ; //item["sp_PurchaserNo"] == DBNull.Value ? 5001 : Convert.ToInt32(item["sp_PurchaserNo"]);
sup.bbbpYingfu = ;
sup.bbbpIds = ",1,";
sup.bbbpBank = item["ss_Bank"].ToString();
sup.bbbpBankNumber = item["ss_BankAccount"].ToString();
sup.bbbpGongyingjiezhiDate = string.Format("{0:yyyy-MM-dd HH:mm:ss}", item["ss_BusiLicexpireTime"]);
sup.bbbpFaxNumber = item["ss_Fax"].ToString();
supplists.Add(sup);
}
string msg = hessianClient.synchronizeData("synBusinessParter", "add", JsonHelper.SerializeObject(supplists)); Application.DoEvents();
MessageBox.Show("同步成功!");
}
}

参考:http://hessian.caucho.com/

https://sourceforge.net/projects/hessiancsharp/

http://www.cnblogs.com/lxsfg/archive/2008/08/27/1277777.html

C# 通过 Hessian服务调用java的更多相关文章

  1. java使用netty模拟实现一个类dubbo的分布式服务调用框架

    本文较长,如果想直接看代码可以查看项目源码地址: https://github.com/hetutu5238/rpc-demo.git 要想实现分布式服务调用框架,我们需要了解分布式服务一般需要的功能 ...

  2. Android(java)学习笔记229:服务(service)之绑定服务调用服务里面的方法 (采用接口隐藏代码内部实现)

    1.接口 接口可以隐藏代码内部的细节,只暴露程序员想暴露的方法 2.利用上面的思想优化之前的案例:服务(service)之绑定服务调用服务里面的方法,如下: (1)这里MainActivity.jav ...

  3. Android(java)学习笔记228:服务(service)之绑定服务调用服务里面的方法

    1.绑定服务调用服务里面的方法,图解: 步骤: (1)在Activity代码里面绑定 bindService(),以bind的方式开启服务 :                     bindServ ...

  4. Java进阶(三十一) Web服务调用

    Java进阶(三十一) Web服务调用 前言 有朋友问了一个问题:如何调用已知的音乐服务接口,服务文档如下: https://www.evernote.com/shard/s744/sh/c37cd5 ...

  5. Android(java)学习笔记172:服务(service)之绑定服务调用服务里面的方法 (采用接口隐藏代码内部实现)

    1. 接口 接口可以隐藏代码内部的细节,只暴露程序员想暴露的方法 2. 利用上面的思想优化之前的案例:服务(service)之绑定服务调用服务里面的方法,如下: (1)这里MainActivity.j ...

  6. Android(java)学习笔记171:服务(service)之绑定服务调用服务里面的方法

    1.绑定服务调用服务里面的方法,图解: 步骤: (1)在Activity代码里面绑定 bindService(),以bind的方式开启服务 :                     bindServ ...

  7. 使用DWR实现JS调用服务端Java代码

    DWR简介 DWR全称Direct Web Remoting,是一款非常优秀的远程过程调用(Remote Procedure Call)框架,通过浏览器提供的Ajax引擎实现在前端页面的JS代码中调用 ...

  8. Hessian服务端和客户端示例

    一.服务端 1.创建web项目,建立客户端调用的hessian接口和实现类. 接口: package com.ymx.hessian.service; import com.ymx.hessian.s ...

  9. Thrift实现C#调用Java开发步骤详解

    概述 Thrift实现C#调用Java开发步骤详解 详细 代码下载:http://www.demodashi.com/demo/10946.html Apache Thrift 是 Facebook ...

随机推荐

  1. ZROI2018普转提day2t2

    传送门 分析 我们发现2R+C实际就相当于R行C列的子集的个数.因此我们可以将所有集合的子集个数转换为每个集合属于的集合的个数.所以我们可以求出: 这个式子的意义为对于选i行j列的情况的所有方案乘上i ...

  2. p2421 荒岛野人

    传送门 题目 克里特岛以野人群居而著称.岛上有排列成环行的M个山洞.这些山洞顺时针编号为1,2,…,M.岛上住着N个野人,一开始依次住在山洞C1,C2,…,CN中,以后每年,第i个野人会沿顺时针向前走 ...

  3. 10.model/view实例(2)

    任务:显示一个2x3的表格,将表格中的数据显示如下: 思考: 1.如何显示数据和上个例子一样. 2.但是每个单元格的数据都是有角色划分的. Qt::ItemDataRole 3.View从Model中 ...

  4. 利用HTML5 与CSS3 做的放大镜

    利用HTML5 与CSS3 做的放大镜 html结构 <div class="wrap"> <div class="move"> < ...

  5. kaggle Partial_Dependence_Plots

    # Partial dependence plots# 改变单变量对最终预测结果的影响# 先fit出一种模型,然后取一行,不断改变某一特征,看它对最终结果的印象.# 但是,只使用一行不具有典型性# 所 ...

  6. angular 导出excel

    http://www.cnblogs.com/gzhlt/p/5274702.html 引用 2 楼 u012129566 的回复: Quote: 引用 1 楼 loveshrimp423 的回复: ...

  7. html复杂url提交

    在使用手机向webapi发送照片请求的时候遇到一个问题,关于base64位字符串码无法识别,提交的表单是这样的: <form id="form1" method=" ...

  8. html中img标签的url如何拼接变量

    <img id="pic" /> <script type="text/javascript"> var url = "xxx ...

  9. 【转】如何恶搞朋友的电脑?超简单的vbs代码

    源地址:https://jingyan.baidu.com/article/d3b74d64aa1e6a1f77e609e6.html 表白源地址:https://jingyan.baidu.com/ ...

  10. poj2409(polya 定理模板)

    题目链接:http://poj.org/problem?id=2409 题意:输入 m, n 表示有 m 种颜色,要构造一个长度为 n 的手环,旋转和对称的只算一种,问能组成多少个不同的手环. 思路: ...