
发表日期: 2021-03-27 10:05:57 浏览次数:80
桂阳网站推广【桂阳办理400电话】桂阳SEO优化、桂阳微信公众号APP客户端小程序开发、桂阳网站托管、桂阳APP开发
桂阳县,隶属于湖南省郴州市,位于郴州市西部,南岭之北麓,舂陵江(湘江支流)的中上流。地理坐标为东经112°13′26″至112°55′46″,北纬25°27′15″至26°13′30″之间。东临北湖区,西与新田、嘉禾相连,北与祁阳、常宁、耒阳、永兴交界,南隔临武,邻近广东,县城距郴州市区31.7公里,总面积2973平方公里。政府驻地:龙潭街道。
桂阳县是历史悠久的千年古郡。自汉初设郡以来,历为郡、国、监、军、路、府、州、直隶州、县的重要地方治所,已有2200多年历史,素有“楚南名区,汉初古郡”之称。 [1-2] 历史文化底蕴深厚,有释道行、释佛乘等佛教高僧,李思聪等文化名人,也有鹿峰庵(寺)等历史悠久的佛教道场,以及筱塘村等中国传统村落。
截至2018年末,桂阳县总人口91.85万人,桂阳县辖22个乡镇(街道)、398个行政村(社区)。 [1-3] 2018年,桂阳县完成生产总值376亿元,财政总收入23.43亿元。 [3]
2020年7月,全国爱卫会决定命名桂阳县为2017-2019周期国家卫生县城。 [4] 2021年1月29日,入选湖南省人民政府公布的2020年度真抓实干成效明显的地区名单。
JSON和XML真正在进行数据交换时候,它们存在的形式就是一个很长的字符串,这个字符串在网络中传输或者存储于磁盘等介质中。在传输和存储之前需要把JSON对象转换成为字符串才能传输和存储,这个过程称之为“编码”过程。接收方需要将接收到的字符串转换成为JSON对象,这个过程称之为“解码”过程。编码和解码过程就像发电报时发送方把语言变成能够传输的符号,而接收时要将符号转换成为能够看懂的语言。
下面具体介绍一下JSON数据编码和解码过程。
编码
如果想获得如下这样JSON字符串:
{"name": "tony", "age": 30, "a": [1, 3]}复制代码应该如何实现编码过程,参考代码如下:
try {
JSONObject jsonObject = new JSONObject(); ①
jsonObject.put("name", "tony"); ②
jsonObject.put("age", 30); ③ JSONArray jsonArray = new JSONArray(); ④
jsonArray.put(1).put(3); ⑤
jsonObject.put("a", jsonArray); ⑥
//编码完成
System.out.println(jsonObject.toString()); ⑦} catch (JSONException e) {
e.printStackTrace();}复制代码上述代码第①行是创建JSONObject(JSON对象),代码第②行和第③行是把JSON数据项添加到JSON对象jsonObject中,代码第④行创建JSONArray(JSON数组),代码第⑤行是向JSON数组中添加1和3两个元素。代码第⑥是将JSON数组jsonArray作为JSON对象jsonObject的数据项添加到JSON对象。
代码第⑦行jsonObject.toString()是将JSON对象转换为字符串,真正完成了JSON编码过程。
解码
解码过程是编码反向操作,如果有如下JSON字符串:
{"name":"tony", "age":30, "a":[1, 3]}复制代码那么如何把这个JSON字符串解码成JSON对象或数组,参考代码如下:
String jsonString = "{\"name\":\"tony\", \"age\":30, \"a\":[1, 3]}"; ①try {
JSONObject jsonObject = new JSONObject(jsonString); ②
String name = jsonObject.getString("name"); ③
System.out.println("name : " + name);
int age = jsonObject.getInt("age");
System.out.println("age : " + age);
JSONArray jsonArray = jsonObject.getJSONArray("a"); ④
int n1 = jsonArray.getInt(0); ⑤
System.out.println("数组a第一个元素 : " + n1);
int n2 = jsonArray.getInt(1);
System.out.println("数组a第二个元素 : " + n2);} catch (JSONException e) {
e.printStackTrace();}复制代码上述代码第①行是声明一个JSON字符串,网络通信过程中JSON字符串是从服务器返回的。代码第②行通过JSON字符串创建JSON对象,这个过程事实上就是JSON字符串解析过程,如果能够成功地创建JSON对象,说明解析成功,如果发生异常则说明解析失败。
代码第③行从JSON对象中按照名称取出JSON中对应的数据。代码第④行是取出一个JSON数组对象,代码第⑤行取出JSON数组第一个元素。
注意 如果按照规范的JSON文档要求,每个JSON数据项目的“名称”必须使用双引号括起来,不能使用单引号或没有引号。在下面的代码文档中,“名称”省略了双引号,该文档在其他平台解析时会出现异常,而在Java平台则可以通过,这得益于Java解析类库的强大,但这并不是规范的做法。如果与其他平台进行数据交换时,采用这种不规范的JSON文档进行数据交换,那么很有可能会导致严重的问题发生。
{ResultCode:0,Record:[
{ID:'1',CDate:'2012-12-23',Content:'发布iOSBook0',UserID:'tony'},
{ID:'2',CDate:'2012-12-24',Content:'发布iOSBook1',UserID:'tony'}]}。复制代码Java的java.net包中还提供了高层次网络编程类——URL,通过URL类访问互联网资源。使用URL进行网络编程,不需要对协议本身有太多的了解,相对而言是比较简单的。
互联网资源是通过URL指定的,URL是Uniform Resource Locator简称,翻译过来是“一致资源定位器”,但人们都习惯URL简称。
URL组成格式如下:
协议名://资源名复制代码
“协议名”指明获取资源所使用的传输协议,如http、ftp、gopher和file等,“资源名”则应该是资源的完整地址,包括主机名、端口号、文件名或文件内部的一个引用。例如:
http://www.sina.com/http://home.sohu.com/home/welcome.htmlhttp://www.51work6.com:8800/Gamelan/network.html#BOTTOM复制代码
访问互联网大多都基于HTTP/HTTPS协议。下面介绍一下HTTP/HTTPS协议。
HTTP协议
HTTP是Hypertext Transfer Protocol的缩写,即超文本传输协议。HTTP是一个属于应用层的面向对象的协议,其简捷、快速的方式适用于分布式超文本信息的传输。它于1990年提出,经过多年的使用与发展,得到不断完善和扩展。HTTP协议支持C/S网络结构,是无连接协议,即每一次请求时建立连接,服务器处理完客户端的请求后,应答给客户端然后断开连接,不会一直占用网络资源。
HTTP/1.1协议共定义了8种请求方法:OPTIONS、HEAD、GET、POST、PUT、DELETE、TRACE和CONNECT。在HTTP访问中,一般使用GET和HEAD方法,其他方法都是可选的。
GET方法:是向指定的资源发出请求,发送的信息“显式”地跟在URL后面。GET方法应该只用在读取数据,例如静态图片等。GET方法有点像使用明信片给别人写信,“信内容”写在外面,接触到的人都可以看到,因此是不安全的。
POST方法:是向指定资源提交数据,请求服务器进行处理,例如提交表单或者上传文件等。数据被包含在请求体中。POST方法像是把“信内容”装入信封中,接触到的人都看不到,因此是安全的。
HTTPS协议
HTTPS是Hypertext Transfer Protocol Secure,即超文本传输安全协议,是超文本传输协议和SSL的组合,用以提供加密通信及对网络服务器身份的鉴定。
简单地说,HTTPS是HTTP的升级版,HTTPS与HTTP的区别是:HTTPS使用https://代替http://,HTTPS使用端口443,而HTTP使用端口80来与TCP/IP进行通信。SSL使用40位关键字作为RC4流加密算法,这对于商业信息的加密是合适的。HTTPS和SSL支持使用X.509数字认证,如果需要的话,用户可以确认发送者是谁。
Java 的java.net.URL类用于请求互联网上的资源,采用HTTP/HTTPS协议,请求方法是GET方法,一般是请求静态的、少量的服务器端数据。
URL类常用构造方法:
URL(String spec):根据字符串表示形式创建URL对象。
URL(String protocol, String host, String file):根据指定的协议名、主机名和文件名称创建URL对象。
URL(String protocol, String host, int port, String file):根据指定的协议名、主机名、端口号和文件名称创建URL对象。
URL类常用方法:
InputStream openStream():打开到此URL的连接,并返回一个输入流。
URLConnection openConnection():打开到此URL的新连接,返回一个URLConnection对象。
下面通过一个示例介绍一下如何使用java.net.URL类,示例代码如下:
//HelloWorld.java文件package com.a51work6;...public class HelloWorld {
public static void main(String[] args) {
// Web网址
String url = "http://www.sina.com.cn/";
URL reqURL;
try {
reqURL = new URL(url); ①
} catch (MalformedURLException e1) {
return;
}
try ( // 打开网络通信输入流
InputStream is = reqURL.openStream(); ②
InputStreamReader isr = new InputStreamReader(is, "utf-8");
BufferedReader br = new BufferedReader(isr)) {
StringBuilder sb = new StringBuilder();
String line = br.readLine();
while (line != null) {
sb.append(line);
sb.append('\n');
line = br.readLine();
}
// 日志输出
System.out.println(sb);
} catch (IOException e) {
e.printStackTrace();
}
}}复制代码上述代码第①行创建URL对象,参数是一个HTTP网址。代码第②行通过URL对象的openStream()方法打开输入流。

服务热线
顶部
备案号: 苏ICP备11067224号
CopyRight © 2011 书生商友信息科技 All Right Reserved
24小时服务热线:400-111-6878 E-MAIL:1120768800@qq.com QQ:1120768800
网址: http://www.768800.com 网站建设:上往建站
关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|
企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|
400电话办理| 书生商友软件| 葬花网| 调温纤维| 海洋馆运营维护| 北京保安公司| 殡仪馆服务| 殡葬服务| 苏州殡葬一条龙| 朝阳殡葬| 苏州殡葬服务|
欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系
服务热线:400-111-6878