c#连接Java后台,处理返回的数据
首先定义共通文件,根据url连接Java后台
class ConntectUtil
{
public JObject ConsoleApplication(string appID, CustomDataType.HttpMethod method, string strJson)
{
String strResponse = "";
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(new Uri(url + appID));
//POST或PUT
switch (method)
{
case Method.POST:
//设置参数
var jsonParse = JObject.Parse(strJson);
String jsonParam = "strJson=" + jsonParse.ToString();
byte[] buff = System.Text.Encoding.UTF8.GetBytes(jsonParam);
//设置请求信息
request.Method = CustomDataType.HttpMethod.POST.ToString();
request.ContentType = "application/x-www-form-urlencoded; charset=UTF-8";
request.ContentLength = buff.Length;
Stream stream = request.GetRequestStream();
stream.Write(buff, 0, buff.Length);
stream.Dispose();
WebResponse response = request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
strResponse = reader.ReadToEnd();//利用StreamReader就可以从响应内容从头读到尾
stream.Close();
response.Close();
break;
case Method.GET:
WebResponse myResponse = request.GetResponse();
StreamReader myReader = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8);
strResponse = myReader.ReadToEnd();//利用StreamReader就可以从响应内容从头读到尾
myReader.Close();
myResponse.Close();
break;
}
return (JObject)JsonConvert.DeserializeObject(strResponse);
}
}
带参数的请求后台获取数据。
ConntectUtil conntectUtil = new ConntectUtil();
//设置参数
Temp temp = new Temp();
temp.Id = 1;
//格式化成JSON格式
String strJson = JsonConvert.SerializeObject(temp);
//获取返回数据
JObject retJson = commonUtil.ConsoleApplication(ConfigurationManager.AppSettings["url"], CustomDataType.HttpMethod.POST, strJson);
//(第二种写法)JObject retJson = commonUtil.ConsoleApplication(url, POST, strJson);
在请求后台功能中,常常需要对返回的数据进行处理后赋值,本文将讲解两种赋值方法:
首先,获取返回的JSON数据
//获取数据
string jsonData = JsonConvert.SerializeObject(retJson.GetValue("data"));
1.直接给DataGridView绑定数据
//禁止根据返回数据自动生成列
this.DataGridView.AutoGenerateColumns = false;
//绑定数据源
this.DataGridView.DataSource = retJson.GetValue("data");
2.转成list后做遍历处理
//转化为list
JavaScriptSerializer Serializer = new JavaScriptSerializer();
List<Temp1> objs = Serializer.Deserialize<List<Temp1>>(jsonData);
c#连接Java后台,处理返回的数据的更多相关文章
- fastJson java后台转换json格式数据
什么事JSON? JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于JavaScript Progra ...
- fastJson在java后台转换json格式数据探究(二)--处理数组/List/Map
作者:buster2014 推荐:长安散人 fastJson在java后台转换json格式数据探究(二)--处理数组/List/Map JSON字符串与Java对象的转换 1.将Java对象或Java ...
- nodejs之使用express框架连接mysql数据库,返回jsonapi数据
var express = require('express');var router = express.Router();var url = require('url');var mysql = ...
- 前端迭代取出 后台map返回的数据
<body> <div th:each="map : ${response}"> <span th:text="${map.key}&quo ...
- java 解析http返回xml数据
//post 请求 private static String sendPost(String url, String urlParameters) throws Exception { URL ob ...
- java后台读取excel模板数据
/** * 读取EXCEL模板数据 * * @param excelFilePath excel文件路径 * @param dataRowNum 开始读取数据的行数 * @param keyRowNu ...
- jsonp的后台怎么返回去数据
- ajax提交数据到java后台,并且返回json格式数据前台接收处理值
1.前台html页面.有一段代码如下: 账 户: <input type="text" name="userName" id="userN& ...
- java后台訪问url连接——HttpClients
java后台訪问url,并传递数据--通过httpclient方式 须要的包,包可能多几个额外的,假设无用或者冲突删除就可以.httpclient是使用的是4.4.1的版本号:http://downl ...
随机推荐
- 第11组 Alpha冲刺(2/6)
第11组 Alpha冲刺(2/6) 队名 不知道叫什么团队 组长博客 https://www.cnblogs.com/xxylac/p/11860949.html 作业博客 https://edu ...
- react-hook设定定时器的方法
const useInterval = (callback, delay) => { const savedCallback = useRef(); // 保存新回调 useEffect(() ...
- 数据结构之栈(stack)
1,栈的定义 栈:先进后出的数据结构,如下图所示,先进去的数据在底部,最后取出,后进去的数据在顶部,最先被取出. 栈常用操作: s=Stack() 创建栈 s.push(item) 将数据item放在 ...
- 【Java/csv】一个CSV文件解析类(转载)
/*下文写得不错,值得学习**/ import java.io.BufferedReader; import java.io.FileReader; import java.util.ArrayLis ...
- 数据分析 - seaborn 模块
seaborn 模块 简述 对 matplotlib 模块进行了二次封装, 底层依旧使用还是 matplotlib 的, 但是在此基础上增加了很多的易用性模板, 更加方便使用 引用使用 import ...
- 利用phpStudy 探针 提权网站服务器
声明: 本教程仅仅是演示管理员安全意识不强,存在弱口令情况.网站被非法入侵的演示,请勿用于恶意用途! 今天看到论坛有人发布了一个通过这phpStudy 探针 关键字搜索检索提权网址服务器,这个挺简单的 ...
- RabbitMQ学习之:(十一)AMQP.0-10规范,中文翻译1,2,3章 (转载)
From:http://blog.sina.com.cn/s/blog_4aba0c8b0100p6ho.html From: http://blog.sina.com.cn/s/blog_4aba0 ...
- Mybatis 联合查询XML与注解对比
由于是练习,故只做了感兴趣的一部分测试. 测试类容XML配置转注解方式 实体类为了测试请忽略设计是否合理… User.java @Alias("User")public class ...
- 阿里云Centos7挂载数据盘
查看磁盘情况 fdisk -l fdisk /dev/vdb 根据提示,分别输入 n. p. . enter.enter.wq fdisk -l mkfs.ext3 /dev/vdb1 挂载磁盘,写入 ...
- Python3的编译安装
Linux环境自带了Python 2.x版本,但是如果要更新到3.x的版本,可以在Python的官方网站下载Python的源代码并通过源代码构建安装的方式进行安装,具体的步骤如下所示. 1. 安装依赖 ...