C# 通过 Hessian服务调用java

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);
    }
View Code

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[0];

            foreach (DataRow item in dt.Rows)
            {
                Supplier sup = new Supplier();
                sup.bbbpSn = item["ss_SupplierNo"].ToString();
                sup.bbbpId = item["ss_SupplierNo"].ToString();
                sup.bbbpBbbrId = 1;
                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"]) == 1 ? "有效" : "无效";
                sup.bbbpLocationid = 5001; //item["sp_PurchaserNo"] == DBNull.Value ? 5001 : Convert.ToInt32(item["sp_PurchaserNo"]);
                sup.bbbpYingfu = 0;
                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("同步成功!");
        }
}
View Code

 

 

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

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

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

        

转载于:https://www.cnblogs.com/ZJ199012/p/5801930.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值