
JAVA网络编程
文章平均质量分 67
千念飞羽
这个作者很懒,什么都没留下…
展开
-
读书笔记-java网络编程-7URLConnection-缓存
7.5 缓存7.5.1缓存简述通常来说,get通过http访问获得的页面可以缓存,也应当缓存,使用HTTPS或者POST方法访问的页面通常不应该缓存。不过HTTP首部可以对此作出调整:Expires首部(主要用于HTTP1.0)指示可以缓存这个资源表示,直到指定的时间为止Cache-control首部(HTTP1.1)提供了粒度更细的缓存策略: max-age=[seconds]s-maxa原创 2016-07-06 13:59:57 · 525 阅读 · 0 评论 -
读书笔记-java网络编程-3线程-java线程概述
解决服务器超负荷问题: - 重用进程 - 采用线程 如果一个应用同时需要大量的长时间链接,就应该考虑异步IO而不是线程。1. java的线程简介:1.1 java线程实例Thread t = Thread();t.start();在主线程中运行上述代码,就会自动的创建一个线程。并运行Thread实例t的run()方法。当然run方法要实现定义好。原创 2016-07-03 15:57:32 · 444 阅读 · 0 评论 -
读书笔记-java网络编程-3线程-从线程返回信息
2. 从线程返回信息run()和start()方法都是没有返回值也没有输入参数的。那如何返回参数就是一个比较麻烦的事情。 最直接的想法是建立一个私有的字段,然后通过get之类的方法访问,但是这样的思路会有一个基本的问题就是竞态条件: race condition:竞态条件,能否得到正确的结果依赖于进程的相对速度,而你无法控制这一点。 否定了这样直接的方法后,还有一种新手常用的获取数据的方法。原创 2016-07-03 16:02:10 · 506 阅读 · 0 评论 -
读书笔记-java网络编程-3线程-同步
3. 同步当不同的进程方法同一个资源的时候,只有一个进程可以获得资源的访问权限,而其他进程将要继续阻塞。3.1同步块 synchronized (System.out) { System.out.print(input+":"); System.out.print(DatatypeConverter.printHexBinary(dige原创 2016-07-03 17:01:10 · 514 阅读 · 0 评论 -
读书笔记-java网络编程-3线程-线程调度
4. 线程调度4.1线程调度java中10是最高优先级,0是最低优先级,默认的优先级5。 这与Unix优先级相反。 Windows只有7个优先级。 尽量不要设置过高的优先级否则会导致低优先级饥饿。public final void setPriority(int newPriority)使用这条语句来指定设置优先级。4.2 抢占主要有两种线程调度机制: 抢占式(preemptive):调度器原创 2016-07-03 20:06:21 · 601 阅读 · 0 评论 -
读书笔记-java网络编程-3线程-线程池和Executor
5. 线程池和Executor如果线程之间的切换太过频繁也会消耗过多的资源,避免大量的线程切换可以保证提高任务完成的效率 如果线程自然阻塞如等待网络数据,没什么正常影响,但是如果是CPU受限,如果能避免大量线程切换可以提高效率。java.util.concurent中的Executors类可非常容易的建立线程池。 只需要将各个任务做完一个Runnable对象通过submit提交给这个线程池,你就原创 2016-07-04 15:35:18 · 632 阅读 · 0 评论 -
读书笔记-java网络编程-4Internet地址-地址简述
1. 地址简述连接到Internet网络的设备为节点node,计算节点称为主机host 地址IPv4: 4字节长 点分十进制dotted quad格式 152.19.134.132IPv6 16字节长。 通常写成为冒号分隔的8个区块,每个区块是4个十六进制。 前导的0不需要写出。 两个冒号表示多个0区块,但是每个地址中双冒号最多出现一次。在混合网络中,IPv6的最后四个字节有时写为原创 2016-07-04 15:49:38 · 494 阅读 · 0 评论 -
读书笔记-java网络编程-4Internet-InetAddress类
2. InetAddress类java.net.InetAddress类是java对IP地址的高层表示。一般来说他包含一个主机名和一个IP地址2.1创建新的InetAddressInetAddress没有公共的构造函数,而是采用静态方法,可以连接到DNS服务器来解析主机名。最常用的是:2.1.1 getByName和getAllByNameInetAddress address = InetAdd原创 2016-07-04 16:19:29 · 756 阅读 · 0 评论 -
读书笔记-java网络编程-4Internet-NetworkInterface类
3. NetworkInterfaceNetworkInterface表示一个本地的IP地址。如物理接口:以太网卡,虚拟接口:与机器的其他IP地址绑定到同一个物理硬件。 它提供了一些方法枚举所有本地地址(而不考虑接口),并由他们创建InetAddress对象,然后这些对象可用于创建socket,服务器socket等等。3.1 工厂方法可以通过IP地址、名字或者枚举来请求一个NetworkInter原创 2016-07-04 17:55:13 · 1166 阅读 · 0 评论 -
读书笔记-java网络编程-5URL和URI-简述
1. 简述1.1 URI统一资源标识符(Uniform Resource Identifier, URI)采用一种特定语法标识一个资源的字符串语法: 模式:模式特定部分模式包括: data 链接中直接包含的Base64编码数据 file 本地磁盘上的文件 ftp ftp服务器 http 使用超文本传输协议的国际互联网服务器 mailto 电子邮件地址 telnet 基原创 2016-07-04 21:00:48 · 645 阅读 · 0 评论 -
读书笔记-java网络编程-5URL和URI-URL类
2. URL类java.net.URL类是对url的抽象,是一个final类。URL类不可变,构造一个URL对象后,其字段不在改变,因此它是线程安全的。使用了策略设计模式。2.1 创建新的URLpublic URL(String url) throws MalformedURLExceptionpublic URL(String protocol, String hostname, String原创 2016-07-04 23:02:52 · 670 阅读 · 0 评论 -
读书笔记-java网络编程-5URL和URI-URI类
3. URI类URI是对URL的抽象,不仅包括URL还包括URN。 实际使用的URI大多是URL,但是大多数规范和标准都是URI定义的。在Java中这里两个类的主要区别是: 1. URI类完全有关于资源的标识和URI的解析,它没有提供方法来获取URI所标识资源的表示 2. 相比URL,URI类更规范 3. URI对象可以表示相对的URI,URL类在储存URI之前会将其绝对化。简单的原创 2016-07-05 10:53:53 · 614 阅读 · 0 评论 -
读书笔记-java网络编程-5URL和URI-x-www-form-urlencoded
4. x-www-form-urlencodedURL中使用的字符必须是来自ASCII码的固定子集。具体的说:大小写字母,数字标点符号:- _ .!~*’(和,)用于特定用途的符号:/ & ? @ # ; $ + = 和 %其他所有字符均需要用%转义,特定用途的符号不做特定用途用时也要转义URL类不自动编码解码,但是由getPath和toExternalForm时候回出现错误。 java原创 2016-07-05 11:26:58 · 998 阅读 · 0 评论 -
读书笔记-java网络编程-5URL和URI-代理
5. 代理代理的作用:出于安全原因防止远程主机了解到本地网络配置的秘密细节为了通过滤出站请求,限制可以浏览的网络。出于性能考虑,运行多个用户从本地缓存获取同样的一些经常访问的文档,而不是重复从远程主机下载5.1 系统属性 没看懂基本操作所要做的就是设置一些系统属性,指示本地代理服务器的地址。 如果使用存储的HTTP代理,则将http.proxyHost设置为代理服务器的域名或IP地址原创 2016-07-05 12:02:06 · 841 阅读 · 0 评论 -
读书笔记-java网络编程-6URL和URI-HTTP协议和cookie的java实现
6 HTTP协议这章内容大部分比较浅显。这里抽取一部分不太熟悉的说下:6.1 HTTP协议6.1.1 概述6.1.2 Keep-Alive6.2 HTTP方法get: 可以获取一个资源的表示。 get没有副作用,如果失败可以重新获取。 通常get的输出会缓存。可以通过首部来控制 可以对get请求加书签。也可以预取get请求。但是其他方法不可以。 如果没有明确的用户动作,好的浏览器和爬虫不原创 2016-07-06 11:39:08 · 1040 阅读 · 0 评论 -
读书笔记-java网络编程-7URLConnection-获取URL首部
7 URLConnection7.1 URLConnection简介URLConnection是一个抽象类,表示指向URL指定资源的活动连接。有两个不同但是相关的用途: 1. 一个是与服务器(特别是HTTP服务器)的交互,可以用来查看服务器发送的首部,设置连接的属性,设置客户端的请求的首部等。利用它也可以实现POST和PUT方法来发送数据。 2. URL是Java的协议处理器机制的一部分。所谓的原创 2016-07-06 13:48:01 · 686 阅读 · 0 评论 -
读书笔记-java网络编程-2java流的工作原理及应用-
java流的基本原理和结构1.java流的基本原理和结构1.1采用装饰者模式的java流设计java流的设计采用装饰器模式的方式,装饰者模式采用共同抽象类或者接口A,被装饰者的组件B直接继承于抽象类,而所有的装饰者也有一个共同的抽象类或者接口C,而这个装饰者们的公共抽象类和接口C也是继承或者实现了A。下面是一张装饰者模式的通用原理图。 而在装饰者模式的所有类中实现了相同原创 2016-07-02 21:55:18 · 764 阅读 · 0 评论