• 从接口取到的JSON数据如何导入进本地SQL数据库


    新手学习,求大神指点。

    首先:在数据库建立表--设计字段(最好和接口说明文档里面的一致)

    第一步:获取接口中的字符串:这里获取的是有转义字符的字符串

    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
    Stream ResStream = response.GetResponseStream();
    Encoding encoding = Encoding.GetEncoding("utf-8");
    StreamReader streamReader = new StreamReader(ResStream, encoding);
    
    string str = streamReader.ReadToEnd();
    

    第二步:使用JsonReader读str字符串:获得没有转义字符的字符串;

    string sJson="";
    
    JsonReader reader = new JsonTextReader(new StringReader(str));
    while (reader.Read())
    {
    sJson = reader.Value.ToString();
    }
    

    第三步:将json字符串变为json对象(注意这里的GG,是第四步的类名

    var v = Newtonsoft.Json.JsonConvert.DeserializeObject<GG>(sJson);
    

    第四步:根据接口的原始数据建立类(参考JSON数据序列化和反序列化):一般接口文档里会有说明

    public class GG
        {
            public string code { get; set; }
            public string msg { get; set; }
            public string errPage { get; set; }
            public string errSize { get; set; }
            public INFO[] info { get; set; }
        }
    
        public class INFO
        {
            public int __hibernate_row_nr__ { get; set; }
            public string id { get; set; }
            public string XMBM { get; set; }
            public string XMMC { get; set; }
        }
    

      第五步:这样就可以在C#中使用对象v的属性获取值信息

     if (v != null){
     if(v.info != null && v.info.Count>0){
            //假如info为数组,里面是对象,则需要遍历数组
               foreach (INFO i in v.info)
               {
    string id = i.id; //这里就可以取到接口数据中的值了,随便你怎么用 } } }

      第五步:分页数据处理:将上面的代码封装成一个方法getData(int 页数,int 最大条数)

    //点击按钮循环封装方法:最大条数是1000,一共有65页
        protected void btnSave_Click(object sender, EventArgs e)
        {
            for (int i = 1; i <= 65; i++)
            {
                getData(i,1000);
            }
        }
    

      

    这样,点击按钮就可以把数据全部导入到你的数据库表对应的字段内了;

    仅此杂文,留待后用。
  • 相关阅读:
    [ThreadStatic] dosen't work with instance fields
    Java XxlJob 必知必会<续篇>
    Python 数据可视化神器—Pyecharts
    PICT 生成正交测试用例教程
    Hive 分桶表核心知识点
    Python + Flask 实现接口接收内存信息
    数据工程师:必备的 Hive 安装&交互方式技能
    JvmSandboxRepeater 配置修改详解
    JavaDubbo 接口测试
    Hadoop + Hive 数据仓库原理与架构
  • 原文地址:https://www.cnblogs.com/wow1314/p/7661900.html
Copyright © 2020-2023  润新知