最简单简洁高效的Json数据解析

三种高效Android JSON解析技术,让你的数据传输畅通无阻! 这三种解析JSON的方案各有特点,我们可以根据具体需求和项目复杂程度权衡选择。而在我看来,Google Gson则是大多数应用的不二之选,它Strike了简洁和性能之间最好的平衡。讨论到这里,你是否也有自己的看法和经验?欢迎在评论区继续交流探讨,分享你在JSON解析这条路上的点点心得。 阅读详情

一.无图无真相
Json解析List类型
Json解析Object类型
二.主要代码
1.导入jar包

拷贝fastjson.jar包到工程libs包下

2.封装工具类JsonUtil.java

package com.example.parsejsondemo;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;

import java.util.List;

/**
 * Json解析的工具类
 * 
 * @author 孤狼
 * @since 2015-8-8
 */

public class JsonUtil {

    /**
     * 将JSON转成 数组类型对象
     *
     * @param json
     * @param clazz
     * @param <T>
     * @return
     */
    public static <T> List<T> getListFromString(String json, Class<T> clazz) {
        List<T> t = null;
        try {
            t = JSON.parseArray(json, clazz);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return t;
    }

    /**
     * 将list转换成String
     *
     * @param list
     *            准备转换的集合
     * @return string
     * @throws Exception
     */
    public static String getStringFromList(List list) {
        String string = "";
        try {
            string = JSON.toJSONString(list, true);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return string;
    }

    /**
     * 将java对象转换成json字符串
     *
     * @param obj
     *            准备转换的对象
     * @return json字符串
     * @throws Exception
     */
    public static String getStringFromObject(Object obj) {
        String json = "";
        try {
            json = JSON.toJSONString(obj, true);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return json;
    }

    /**
     * 将json字符串转换成java对象
     *
     * @param json
     * @param clazz
     * @param <T>
     * @return object
     */
    public static <T> T getObjectFromString(String json, Class<T> clazz) {
        T t = null;
        try {
            t = JSON.parseObject(json, clazz);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return t;
    }

    /**
     * 将 json 字符串转为 JSONArray 对象;
     *
     * @param json
     * @return JsonArray
     */
    public static JSONArray getJsonArray(String json) {
        JSONArray array = null;
        try {
            array = JSON.parseArray(json);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return array;
    }

    /**
     * 将 json 字符串转为 JSONObect 对象
     *
     * @param json
     * @return JSONObject
     */
    public static JSONObject getJsonObject(String json) {
        JSONObject object = null;
        try {
            object = (JSONObject) JSON.parse(json);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return object;
    }
}

3.封装数据实体类(实例:ArticleBean.java和ArticleDetailBean.java)

package com.example.parsejsondemo;

import java.util.ArrayList;
import java.util.List;

/**
 * 文章实体类
 * 
 * @author 孤狼
 * @since 2015-8-8
 */
public class ArticleBean {

    private String title = "";
    private String title_image_url = "";
    private String create_time = "";
    private long article_id = 0;
    // 查看用户的信息
    private List<UserInfoBean> headimages = new ArrayList<UserInfoBean>();

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getTitle_image_url() {
        return title_image_url;
    }

    public void setTitle_image_url(String title_image_url) {
        this.title_image_url = title_image_url;
    }

    public String getCreate_time() {
        return create_time;
    }

    public void setCreate_time(String create_time) {
        this.create_time = create_time;
    }

    public List<UserInfoBean> getHeadimages() {
        return headimages;
    }

    public void setHeadimages(List<UserInfoBean> headimages) {
        this.headimages = headimages;
    }

    public long getArticle_id() {
        return article_id;
    }

    public void setArticle_id(long article_id) {
        this.article_id = article_id;
    }
}
package com.example.parsejsondemo;

import java.util.ArrayList;
import java.util.List;

/**
 * 文章详情
 * 
 * @author 孤狼
 * @since 2015-8-8
 */
public class ArticleDetailBean {

    private String content;
    // 图片集合类
    private List<ImageResult> images = new ArrayList<ImageResult>();
    private String create_time;
    // 点赞状态
    private boolean if_dianzan;
    // 评论数
    private int comment_num;
    // 第几期 例:第5期
    private String times;
    private String title;
    private long article_id;
    private int dianzan_num;

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getCreate_time() {
        return create_time;
    }

    public void setCreate_time(String create_time) {
        this.create_time = create_time;
    }

    public boolean isIf_dianzan() {
        return if_dianzan;
    }

    public void setIf_dianzan(boolean if_dianzan) {
        this.if_dianzan = if_dianzan;
    }

    public int getComment_num() {
        return comment_num;
    }

    public void setComment_num(int comment_num) {
        this.comment_num = comment_num;
    }

    public String getTimes() {
        return times;
    }

    public void setTimes(String times) {
        this.times = times;
    }

    public long getArticle_id() {
        return article_id;
    }

    public void setArticle_id(long article_id) {
        this.article_id = article_id;
    }

    public int getDianzan_num() {
        return dianzan_num;
    }

    public void setDianzan_num(int dianzan_num) {
        this.dianzan_num = dianzan_num;
    }

    public List<ImageResult> getImages() {
        return images;
    }

    public void setImages(List<ImageResult> images) {
        this.images = images;
    }

    @Override
    public String toString() {
        return "ArticleDetailResult [title=" + title + ", content=" + content
                + ", create_time=" + create_time + ", comment_num="
                + comment_num + ", times=" + times + ", article_id="
                + article_id + ", dianzan_num=" + dianzan_num + "]";
    }

}

4.代码中调用
a.解析 JsonList类型

package com.example.parsejsondemo;

import java.util.List;

import com.nostra13.universalimageloader.core.ImageLoader;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;

/**
 * 解析 JsonList类型
 *
 * @author 孤狼
 * @since 2015-8-8
 * */
public class JsonListActivity extends Activity {
    private String data = "[ { \"article_id\": 682, \"create_time\": \"12:13\", \"headimages\": [], \"title\": \"给你的一封情书\", \"title_image_url\": \"http://e.hiphotos.baidu.com/image/w%3D310/sign=d0aa9ba85eb5c9ea62f305e2e538b622/b90e7bec54e736d1cb1f21ab9e504fc2d5626901.jpg\" }, { \"article_id\": 681, \"create_time\": \"12:13\", \"headimages\": [], \"title\": \"女人,你的别名是愚蠢\", \"title_image_url\": \"http://f.hiphotos.baidu.com/image/w%3D310/sign=ef8e5a82778b4710ce2ffbcdf3cfc3b2/72f082025aafa40f1ed46c7eae64034f78f01906.jpg\" }, { \"article_id\": 680, \"create_time\": \"12:13\", \"headimages\": [], \"title\": \"明白\", \"title_image_url\": \"http://g.hiphotos.baidu.com/image/w%3D310/sign=5c6d742fe4fe9925cb0c6f5104a95ee4/3ac79f3df8dcd100dce594cb768b4710b8122fda.jpg\" }, { \"article_id\": 679, \"create_time\": \"12:13\", \"headimages\": [], \"title\": \"秋之随想\", \"title_image_url\": \"http://d.hiphotos.baidu.com/image/w%3D310/sign=f9fd8128e9c4b7453494b117fffd1e78/0bd162d9f2d3572ce2779bdd8813632762d0c31e.jpg\" }, { \"article_id\": 681, \"create_time\": \"12:13\", \"headimages\": [], \"title\": \"女人,你的别名是愚蠢\", \"title_image_url\": \"http://f.hiphotos.baidu.com/image/w%3D310/sign=ef8e5a82778b4710ce2ffbcdf3cfc3b2/72f082025aafa40f1ed46c7eae64034f78f01906.jpg\" }, { \"article_id\": 680, \"create_time\": \"12:13\", \"headimages\": [], \"title\": \"明白\", \"title_image_url\": \"http://g.hiphotos.baidu.com/image/w%3D310/sign=5c6d742fe4fe9925cb0c6f5104a95ee4/3ac79f3df8dcd100dce594cb768b4710b8122fda.jpg\" }, { \"article_id\": 679, \"create_time\": \"12:13\", \"headimages\": [], \"title\": \"秋之随想\", \"title_image_url\": \"http://d.hiphotos.baidu.com/image/w%3D310/sign=f9fd8128e9c4b7453494b117fffd1e78/0bd162d9f2d3572ce2779bdd8813632762d0c31e.jpg\" }, { \"article_id\": 681, \"create_time\": \"12:13\", \"headimages\": [], \"title\": \"女人,你的别名是愚蠢\", \"title_image_url\": \"http://f.hiphotos.baidu.com/image/w%3D310/sign=ef8e5a82778b4710ce2ffbcdf3cfc3b2/72f082025aafa40f1ed46c7eae64034f78f01906.jpg\" }, { \"article_id\": 680, \"create_time\": \"12:13\", \"headimages\": [], \"title\": \"明白\", \"title_image_url\": \"http://g.hiphotos.baidu.com/image/w%3D310/sign=5c6d742fe4fe9925cb0c6f5104a95ee4/3ac79f3df8dcd100dce594cb768b4710b8122fda.jpg\" }, { \"article_id\": 679, \"create_time\": \"12:13\", \"headimages\": [], \"title\": \"秋之随想\", \"title_image_url\": \"http://d.hiphotos.baidu.com/image/w%3D310/sign=f9fd8128e9c4b7453494b117fffd1e78/0bd162d9f2d3572ce2779bdd8813632762d0c31e.jpg\" }, { \"article_id\": 681, \"create_time\": \"12:13\", \"headimages\": [], \"title\": \"女人,你的别名是愚蠢\", \"title_image_url\": \"http://f.hiphotos.baidu.com/image/w%3D310/sign=ef8e5a82778b4710ce2ffbcdf3cfc3b2/72f082025aafa40f1ed46c7eae64034f78f01906.jpg\" }, { \"article_id\": 680, \"create_time\": \"12:13\", \"headimages\": [], \"title\": \"明白\", \"title_image_url\": \"http://g.hiphotos.baidu.com/image/w%3D310/sign=5c6d742fe4fe9925cb0c6f5104a95ee4/3ac79f3df8dcd100dce594cb768b4710b8122fda.jpg\" }, { \"article_id\": 679, \"create_time\": \"12:13\", \"headimages\": [], \"title\": \"秋之随想\", \"title_image_url\": \"http://d.hiphotos.baidu.com/image/w%3D310/sign=f9fd8128e9c4b7453494b117fffd1e78/0bd162d9f2d3572ce2779bdd8813632762d0c31e.jpg\" } ]";
    private List<ArticleBean> list;
    private ListView listView;
    private ImageLoader instance;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        instance = ImageLoader.getInstance();
        listView = (ListView) findViewById(R.id.listView);
        // 把String类型的json解析成List集合
        list = JsonUtil.getListFromString(data, ArticleBean.class);
        // 设置适配器
        listView.setAdapter(new CustomAdapter());
        listView.setOnItemClickListener(new OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view,
                    int position, long id) {
                startActivity(new Intent(JsonListActivity.this,
                        JsonObjectActivity.class));
            }
        });
    }

    // 定义适配器
    class CustomAdapter extends BaseAdapter {

        @Override
        public int getCount() {
            return list.size();
        }

        @Override
        public Object getItem(int position) {
            return list.get(position);
        }

        @Override
        public long getItemId(int position) {
            return position;
        }

        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            // 查找控件
            ViewHold hold;
            if (convertView != null) {
                hold = (ViewHold) convertView.getTag();
            } else {
                hold = new ViewHold();
                convertView = View.inflate(getApplicationContext(),
                        R.layout.list_item, null);
                hold.iv_cover = (ImageView) convertView
                        .findViewById(R.id.iv_coner);
                hold.tv_time = (TextView) convertView
                        .findViewById(R.id.tv_time);
                hold.tv_title = (TextView) convertView
                        .findViewById(R.id.tv_title);
                convertView.setTag(hold);
            }
            // 填充数据
            hold.tv_time.setText("孤狼   发布时间:"
                    + list.get(position).getCreate_time());
            hold.tv_title.setText(list.get(position).getTitle());
            instance.displayImage(list.get(position).getTitle_image_url(),
                    hold.iv_cover);
            return convertView;
        }

        class ViewHold {
            private ImageView iv_cover;
            private TextView tv_title;
            private TextView tv_time;
        }
    }
}

b.解析 JsonObject类型

package com.example.parsejsondemo;

import com.nostra13.universalimageloader.core.ImageLoader;

import android.app.Activity;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.TextView;

/**
 * 解析 JsonObject类型
 *
 * @author 孤狼
 * @since 2015-8-8
 * */
public class JsonObjectActivity extends Activity {
    // json数据
    private String data = "{ \"article_id\": 682, \"comment_num\": 26, \"content\": \"你是清晨,\\r\\n是我醒来后的第一缕,\\r\\n是我起床后的第一缕清风,\\r\\n是我看见的第一抹浓绿色。\\r\\n你是的阳光温暖我的。\\r\\n你是中午,\\r\\n是手中香甜的饭菜,\\r\\n是我午睡时躺着的枕头。\\r\\n你是晚上,\\r\\n是黑中的一屡凉爽,\\r\\n是黑暗中的平静心态,\\r\\n是惊恐中的心灵安慰。\\r\\n是天空中的闪烁繁星,\\r\\n你是我最遥远的,\\r\\n我的恋人。\\r\\n\", \"create_time\": \"06-12 12:13\", \"dianzan_num\": 411, \"if_dianzan\": true, \"images\": [ { \"image_id\": 3595, \"image_url\": \"http://e.hiphotos.baidu.com/image/w%3D310/sign=d0aa9ba85eb5c9ea62f305e2e538b622/b90e7bec54e736d1cb1f21ab9e504fc2d5626901.jpg\" }, { \"image_id\": 3596, \"image_url\": \"http://7xjora.com2.z0.glb.qiniucdn.com/644121332662Etjmn.jpg?imageView2/0/w/500/h/500\" }, { \"image_id\": 3597, \"image_url\": \"http://7xjora.com2.z0.glb.qiniucdn.com/1650121333675aY09a.jpg?imageView2/0/w/500/h/500\" }, { \"image_id\": 3598, \"image_url\": \"http://7xjora.com2.z0.glb.qiniucdn.com/120712133440245oBv.jpg?imageView2/0/w/500/h/500\" }, { \"image_id\": 3599, \"image_url\": \"http://7xjora.com2.z0.glb.qiniucdn.com/940121334941gy1Ii.jpg?imageView2/0/w/500/h/500\" } ], \"times\": \"第682期\", \"title\": \"给你的一封情书\" }";
    private ImageLoader instance;
    private TextView tv_title;
    private TextView tv_time;
    private ImageView iv_cover;
    private ArticleDetailBean detailBean;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_object);
        instance = ImageLoader.getInstance();
        iv_cover = (ImageView) findViewById(R.id.iv_coner);
        tv_time = (TextView) findViewById(R.id.tv_time);
        tv_title = (TextView) findViewById(R.id.tv_title);
        // 把json数据解析成Object类型实体类
        detailBean = JsonUtil
                .getObjectFromString(data, ArticleDetailBean.class);
        // 填充数据
        tv_title.setText(detailBean.getTitle());
        tv_time.setText(detailBean.getContent());
        instance.displayImage(detailBean.getImages().get(0).getImage_url(),
                iv_cover);
    }

}

三.说明

Json数据是客户端和服务端交互的主要形式之一,解析Json的方法工具也很多,比如goole的Gson(可以去看前面关于Gson解析数据的方法)等等,而fastjson.jar解析json数据感觉非常强大高效和简洁。实用很简单:引入jar包—>封装工具类—–>封装要解析的数据对象—>调用工具解析。代码很简单,如有疑问请留言—-孤狼

四.实例Demo

最简单高效简洁好用的Json解析

最简单最高效的JSON解析实战指南 JSON,全称为JavaScript Object Notation,是一种轻量级的数据交换格式。它的基本结构包括两种:对象和数组。对象是一个无序的“属性-值”对集合,可视为键值对的集合,通常用大括号{}表示;而数组是一种有序集合,用方括号[]表示,其中可以包含多个值,这些值可以是不同类型。JSON的简洁性和易于人类阅读的特性,使得它在Web服务和数据传输中非常流行。它易于人阅读和编写,同时也易于机器解析和生成,是Web应用、API(应用程序编程接口)和微服务间进行数据交换的理想选择。 阅读详情

相关推荐

JsonView软件:简洁的JSON数据解析和可视化工具

JsonView 是一款专门针对JSON数据格式进行解析、展示和编辑的软件工具。它提供了丰富的用户界面和强大的功能,帮助开发者、数据分析师以及任何需要处理JSON数据的用户高效地查看和编辑JSON结构。JsonView不仅能够清晰地展示JSON数据,还允许用户进行数据验证、节点操作等高级功能,以提高工作效率。直观的视觉展示:JsonView将JSON数据以易于理解的树状图形式展现,支持对数据节点的即时折叠与展开。实时解析与编辑。

weixin_42509513的博客 1210

JSon工具包JSonUtils,很实用

package cn.wtu.broadcast.util; import java.util.ArrayList; import java.util.List; import net.sf.json.JSONObject; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class JSonUtils { ...

沉浮于世的博客 6547

json数据转换工具jsonutil

不需要其他jar包,字符串一json之间转换,maptojson listtojson settojson等

java中的json的util工具类

先定义两个bean 首先是一个User对象 public class User implements Serializable { private static final long serialVersionUID = -8329084343916143192L; private String name; private Phone phone; 省略set和get以及...

L X D的博客 1278

JSON工具类jar包

Java处理JSON的全套工具类,依赖于以下的JAR包: 1.commons-lang.jar 2.commons-beanutils.jar 3.commons-collections.jar 4.commons-logging.jar 5.ezmorph.jar 6.json-lib-2.2.2-jdk15.jar

Java的JsonUtil

java中将实体类转化成json对象的类 Java的JsonUtil.java java转化实体类为json的工具

java json 工具类_JsonUtil工具类

使用的是fastJsonpackage util;import java.io.IOException;import java.text.SimpleDateFormat;import java.util.Date;import java.util.HashMap;import java.util.Map;import com.fasterxml.jackson.core.JsonParseExc...

weixin_29080843的博客 349

使用json需要导入的全部包(7个)

使用json所需导入的jar包共7个已经上传 亲测好用 欢迎下载

java 使用JSONUtil工具类

首先引用Meven包:Maven: cn.hutool:hutool-all:5.6.1 在日常开发中,需要经常将参数输出到控制台或进行记录,当参数是实体时这需要将实体类转为json字符串,下边是代码中的使用示例。 import cn.hutool.json.JSONUtil; //引用工具类 public class TestUtilJson{ @Override public String printLog(String name) { var

suxuelian的博客 6715

Java实现的JSONUtil工具类与用法示例

主要介绍了Java实现的JSONUtil工具类与用法,结合实例形式分析了Java操作json格式数据工具类JSONUtil的定义与简单使用技巧,需要的朋友可以参考下

AI+医疗:多模态模型让肺结节诊断准确率突破95%+的实战方案

多模态融合是必由之路:单一影像模型难以突破95%准确率,必须整合临床、生物标志物等多维数据跨模态注意力机制是核心:简单拼接效果差,注意力机制能自动学习各模态权重,提升融合效果临床适配比技术先进更重要:模型输出必须符合医生诊断习惯,提供可解释的决策依据持续学习是长期成功的关键:医疗数据分布不断变化,模型必须具备自适应能力多学科协作是保障:放射科、胸外科、病理科、AI工程师共同参与模型设计与优化。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1022

探索高效简洁的JSON解析利器:cjson库

探索高效简洁的JSON解析利器:cjson库 【下载地址】cjson库 本仓库提供了cjson库的完整源代码,包括`.c`和`.h`文件。cjson是一个轻量级的C语言编写的JSON解析库,它以高效和简洁著称,非常适合嵌入到其他C项目中。cjson库简化了在C程序中处理JSON数据的过程,提供了丰富的函数接口来实现JSO...

gitblog_09784的博客 910

AD9826的时序分析及Verliog代码

AD9826的时序分析及Verliog代码 (本文对AD9826的模式和时序进行了分析,如有错误敬请指正,关于这款ADC芯片的基本参数,本文不做过多介绍) 1、AD9826的模式 AD9826的采样模式主要有两种,一种是“CDS模式”,一种是“SHA模式”;在这两种模式下分别有1通道、2通道、3通道的采样模式 (1)CDS模式 简单的来说CDS模式就是,有两个采样时钟,一个是ADCCLK1,用来采样CCD波形的参考电平,一个是ADCCLK2用来采样数据电平,然后经过,偏移量调节,再经过PGA增益放大最

m0_50102488的博客 6473

SQLServer中如何高效解析JSON格式数据

文章目录1. 背景2. 拆串-拆分JSON串至key-value子串3. 取值-创建函数截取key-value串的值4. 完整样例5. 问题 1. 背景 最近碰到个需求,源数据存在posgtreSQL中,且为JSON格式,但在SQLServer中无法直接使用,需要先解析,再利用。 样例数据如下 ‘[{“key”:“2019-01-01”,“value”:“4500.0”},{“key”:“2019-01-02”,“value”:“4500.0”},{“key”:“2019-01-03”,“value”:“

飞虹的专栏 4465

模板匹配加速之金字塔分层搜索

图像金字塔是一种多分辨率图像表示方法,它通过一系列逐渐缩小或放大的图像来表示原始图像的不同尺度。高斯金字塔(Gaussian Pyramid):通过不断下采样(降采样)生成更小的图像。拉普拉斯金字塔(Laplacian Pyramid):通过高斯金字塔和差分操作生成一组残差图像。在模板匹配中,我们主要使用高斯金字塔来实现多尺度匹配。金字塔灰度模板匹配通过多尺度搜索策略,在保持较高准确率的同时显著提升匹配速度,尤其适用于:高分辨率图像处理实时检测系统移动端设备等资源受限场景。

weixin_44969144的博客 1732

在 Linux/Debian/Ubuntu 上使用 Brasero 刻录光盘

在 Ubuntu 系统中,Brasero 是一个非常方便的光盘刻录工具。无论是创建数据光盘、音频光盘还是刻录光盘镜像文件,Brasero 都能轻松胜任。本文将介绍如何在 Ubuntu 上安装和使用 Brasero 进行光盘刻录。

I AM COMING BACK... 3543

【QT】QT生成与解析JSON数据,包含JSON数组

简述 Qt5 中包含了处理 JSON 的类,均以 QJson 开头(例如:QJsonDocument、QJsonArray、QJsonObject),在 QtCore 模块中,不需要额外引入其它模块。 常用的 JSON 库 json.org中介绍了 JSON 在各种语言中的应用,在 C/C++ 中比较常用的JSON 库主要有以下几个: JsonCpp JsonCpp 是一个 C+...

rong11417的博客 3万+

6 赫斯曼网管软件industrial hivision用户管理

文章目录前言一、打开Industrial HiVision服务器二、在用户管理界面添加策略三、使用可选策略四、接受策略总结 前言 安装 Industrial HiVision 后,所有人都能广泛使用程序。安全起见,请进行相 关配置,对访问权限进行限制。 本文主要介绍用户管理基于某种角色模型。在访问角色中定义角色名称,通过分配访问权限给这些角色分配角色功能。例如,给管理人员自然要分配可用的权限,而观察员尽管可以登录,但没有能够进行更改的权限。Industrial HiVision 提供以下访问角色: 

t98746194的博客 1380

探秘JSONParser:打造高效简洁的JSON处理工具

探秘JSONParser:打造高效简洁的JSON处理工具 在现代软件开发中,JSON几乎无处不在,它作为数据交换的王者,简洁灵活的特性深受开发者喜爱。今天,让我们一起深入了解一款轻量级却功能强大的开源项目——JSONParser,它旨在简化我们的JSON处理流程,让数据操作变得轻松愉快。 项目介绍 JSONParser 是一款专门为那些追求效率与简洁性的开发者设计的JSON解析器。简单而不失强大,...

gitblog_00297的博客 517

接入 AI 之后,为什么测试和排障还是没有真正变快?

如果你们准备做平台型 AI,不要先从聊天入口开始想。先把真实数据采上来;再把链路、版本、快照、报告这些核心对象建稳;再把历史沉淀、反馈、检索能力补齐;最后再让 AI 围绕这些对象去工作。这样做出来的 AI,才更容易从“看起来聪明”走向“真正省时间”。

专注 AI 精准测试平台实战落地,分享从代码 Diff 到回归决策的完整工程闭环。主张“先建数据链路,再上 AI 智能”,让测试从“靠经验”走向“基于风险”。 527

抓包工具:Fiddler下载、安装、使用 教程

文章目录抓包工具:Fiddler下载、安装、使用 教程一、Fiddler 下载二、Fiddler 安装三、Fiddler 使用3、Statistics 请求的性能数据分析4、Inspectors 查看数据内容5、AutoResponder 允许拦截指定规则的请求6、Composer 自定义请求发送服务器7、Filters 请求过滤规则8、Timeline 请求响应时间9、Fiddler 设置解密HTTPS的网络数据10、Fiddler 内置命令与断点 抓包工具:Fiddler下载、安装、使用 教程 Fidd

Sumarua的博客 17万+

从JSON数据提取嵌套字段并转换为独立列的简洁方法

假设我们有一个DataFrameid和json_datajson_data中嵌套了复杂的JSON结构。我们希望从中提取出嵌套的字段a_name和b_name,并将其作为新的独立列。同时,还需要将顶层的字段nameage和city也提取到最终的DataFrame中。

蜗牛沐雨 1476

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

高效解析JSON数据的利器:json-streamer

高效解析JSON数据的利器:json-streamer 在处理大规模JSON数据时,传统的解析方法可能会遇到内存不足或处理速度慢的问题。为了解决这些问题,json-streamer应运而生。它提供了一种类似于SAX的推送解析器,能够高效地处理流式JSON数据,特别适用于网络流数据或超大JSON对象的解析。 项目介绍 json-streamer是一个基于C语言库yajl的Python库,提供了两种解...

gitblog_00249的博客 989

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

上一篇: 最简单圆形图片和头像(重新封装ImageLoad)-巧用universal-image-loader
下一篇: Android 中加密的String:让我们做出更少的失误
Litepal
博客等级 码龄12年 17粉丝 38原创
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值