廖雪峰Java14Java操作XML和JSON-1XML-3SAX
摘要:SAX:Simple API for XML 基于事件的API 总结: SAX解析XML 一种流式解析XML的API 通过事件触发,速度快 调用方式通过回调获得数据
阅读全文
posted @
2019-08-20 21:57
singleSpace
阅读(163)
推荐(0)
廖雪峰Java14Java操作XML和JSON-1XML-2DOM
摘要:XML是一种数据表示形式。 可以描述非常复杂的数据数据结构 用于传输和传输数据 DOM:Document Object Model DOM模型就是把XML文档作为一个树形结构,从根结点开始,每个节点都可以包含任意个字节点。 用Java解析XML时, Document代表整个XML文档 Element
阅读全文
posted @
2019-08-19 19:58
singleSpace
阅读(164)
推荐(0)
廖雪峰Java14Java操作XML和JSON-1XML-1XML介绍
摘要:1.XML:可扩展标记语言(extensible Markup Language) 是一种数据表示格式 可以描述非常复杂的数据结构 用于存储和传输数据 1.1XML特点: 1.纯文本,默认utf 8编码 2.可嵌套,是和表示结构化数据 1.2XML应用: 文件形式,如book.xml 网络传输,xm
阅读全文
posted @
2019-08-19 19:03
singleSpace
阅读(221)
推荐(0)
廖雪峰Java13网络编程-3其他-2RMI远程调用
摘要:1.RMI远程调用: Remote Method Invocation 目的:把一个接口方法暴露给远程 示例: 定义一个接口Clock,它有一个方法能够获取当前的时间,并编写一个实现类,来实现这个接口。 RMI远程调用示例: 服务器端: 客户端: 在一个RMI远程调用中,客户端持有的是Clock引用
阅读全文
posted @
2019-08-19 10:42
singleSpace
阅读(214)
推荐(0)
廖雪峰Java13网络编程-3其他-1HTTP编程
摘要:1.HTTP协议: Hyper Text Transfer Protocol:超文本传输协议 基于TCP协议之上的请求/响应协议 目前使用最广泛的高级协议 使用浏览器浏览网页和服务器交互使用的就是HTTP协议 手机应用上绝大多数程序与服务器之间交互数据使用的也是HTTP协议。 HTTP协议是一个纯文
阅读全文
posted @
2019-08-13 12:49
singleSpace
阅读(553)
推荐(0)
廖雪峰Java13网络编程-2Email编程-2接收Email
摘要:1接收Email协议类型 接收Email:收件人通过MUA软件把邮件从MDA抓取到本地计算机的过程。 1.1 POP3 从MUA到MDA使用最广泛的是协议是POP3 Post Office Protocol version 3,建立在tcp之上的协议 标准端口110 整个会话加密,加密端口995 1
阅读全文
posted @
2019-07-27 23:00
singleSpace
阅读(240)
推荐(0)
廖雪峰Java13网络编程-2Email编程-1发送email
摘要:1.邮件发送 1.1传统邮件发送: 传统的邮件是通过邮局投递,从一个邮局到另一个邮局,最终到达用户的邮箱。 1.2电子邮件发送: 与传统邮件类似,它是从用户电脑的邮件软件(如outlook)发送到邮件服务器上,然后经过若干个邮件服务器的中转,到达对方邮件服务器上,收件方就可以用软件或浏览器来接收邮件
阅读全文
posted @
2019-07-15 05:20
singleSpace
阅读(397)
推荐(0)
廖雪峰Java13网络编程-1Socket编程-5UDP编程
摘要:1. UDP编程: 不需要建立连接 可以直接发送和接收数据 1.1 客户端 1.2 服务端: 1.3 实例 TCPClient.java TCPServer.java 先运行server 再运行client 2. 总结: UDP编程模型: 客户端使用DatagramSocket.connect()指
阅读全文
posted @
2019-07-07 14:02
singleSpace
阅读(268)
推荐(0)
廖雪峰Java13网络编程-1Socket编程-3TCP多线程编程
摘要:TCP多线程编程 一个ServerSocket可以和多个客户端同时建立连接,所以一个Server可以同时与多个客户端建立好的Socket进行双向通信。 因此服务器端,当我们打开一个Socket以后,通常使用一个无限for循环,在这个for循环内部,每次调用accept方法,返回一个与远程客户新建的S
阅读全文
posted @
2019-07-07 12:44
singleSpace
阅读(171)
推荐(0)
廖雪峰Java13网络编程-1Socket编程-2TCP编程
摘要:1. Socket 在开发网络应用程序的时候,会遇到Socket这个概念。 Socket是一个抽象概念,一个应用程序通过一个Socket来建立一个远程连接,而Socket内部通过TCP/IP协议把数据传输到网络。 Socket/TCP/部分IP都是由操作系统提供的。不同的编程语言只是提供了对操作系统
阅读全文
posted @
2019-07-06 17:13
singleSpace
阅读(315)
推荐(0)
廖雪峰Java13网络编程-1Socket编程-1网络编程概念
摘要:1.计算机网络 1.1 什么是计算机网络? 两台或更多计算机组成的网络 同一网络内的任意2台计算机都可以直接通信 所有计算机必须遵循同一种网络协议 1.2 什么是互联网 互联网是网络的网络 互联网采用TCP/IP协议 TCP/IP协议泛指互联网协议 其中最重要的2个协议是TCP协议和IP协议 2.
阅读全文
posted @
2019-07-04 23:02
singleSpace
阅读(348)
推荐(0)
廖雪峰Java12maven基础-2maven进阶-2模块管理
摘要:1. 把大项目拆分为模块是降低软件复杂度的有效方法 在Java项目中,我们通常会会把一个项目分拆为模块,这是为了降低软件复杂度。 例如:我们可以把一个大的项目氛围module a, module b, module c三个模块,这样我们就可以降低软件的复杂度。 maven可以有效管理多个模块 2.建
阅读全文
posted @
2019-06-26 19:58
singleSpace
阅读(243)
推荐(0)
廖雪峰Java12maven基础-2maven进阶-1使用插件
摘要:1.maven的Lifecycle,Phase和Goal: 使用maven构建项目就是执行Lifecycle 执行Lifecycle就是按顺序执行一系列Phase 每执行一个Phase,都会执行该Phase绑定的若干Goal Goal是最小任务单元 2.maven通过调用不同的插件Plugin来构建
阅读全文
posted @
2019-06-26 19:35
singleSpace
阅读(394)
推荐(0)
廖雪峰Java12maven基础-1maven入门-3构建流程
摘要:maven是一个Java项目管理和构建工具: 标准化项目结构 标准化构建流程(编译、打包、发布) 依赖管理 Maven的构建流程 clean 删除所有编译生成的文件 compile 编译源码、编译测试源码 test 运行测试 package 打包为jar/war maven的生命周期Lifecycl
阅读全文
posted @
2019-06-20 22:29
singleSpace
阅读(279)
推荐(0)
廖雪峰Java12maven基础-1maven入门-2依赖管理
摘要:maven 如果我们的项目依赖第三方的jar包: Commons Logging发布的jar包在那里下载? 使用Log4j需要哪些jar包 其他依赖:junit,Javamail,MySQL驱动... 方法1:搜索引擎——手动下载——解压——放入classpath:过程非常繁琐 方法2:maven解
阅读全文
posted @
2019-06-20 21:33
singleSpace
阅读(363)
推荐(0)
廖雪峰Java12maven基础-1maven入门-1maven介绍
摘要:1.Java项目: 1.1.首先确定引入哪些依赖包,如commons logging, log4j, selenium 1.2.确定项目的目录结构 1.3.配置环境:如JDK的版本号 1.4.编译打包流程 1.5.版本控制:当前代码的版本号 1.6.命令行恐惧:除了使用IDE进行编译外,我们还必须能
阅读全文
posted @
2019-06-19 13:46
singleSpace
阅读(589)
推荐(0)
廖雪峰Java11多线程编程-4线程工具类-1ThreadLocal
摘要:1. ThreadLocal 1.1 回顾 多线程是Java实现多任务的基础: Thread:通过Thread来启动一个新的线程。Thread对象代表一个线程:调用Tread.currentThread()获取当前线程。 ExecutorService、ScheduledThreadPool、For
阅读全文
posted @
2019-06-18 21:07
singleSpace
阅读(612)
推荐(0)
廖雪峰Java11多线程编程-3高级concurrent包-9Fork_Join
摘要:1. Fork/Join模式 线程池可以高效执行大量小任务: Fork/Join线程池可以执行一种特殊的任务: 把一个大任务拆成多个小任务并行执行 Fork/Join是在JDK 1.7引入的 Fork/Join模式的应用: java.util.Arrays.parallelSort(array):方
阅读全文
posted @
2019-06-16 21:55
singleSpace
阅读(402)
推荐(0)
廖雪峰Java11多线程编程-3高级concurrent包-8CompletableFuture
摘要:1. 使用Future不能自动获得异步执行结果 使用Future获得异步执行结果: 但是当我们使用get()获得异步执行结果的时候,这个方法可能会阻塞。 还可以通过while循环反复调用isDone()来判断异步结果是否已经完成。 所以使用Future获得异步执行的结果有2个方法: 1.调用阻塞方法
阅读全文
posted @
2019-06-16 15:50
singleSpace
阅读(711)
推荐(1)
廖雪峰Java11多线程编程-3高级concurrent包-7Future
摘要:1. Runnable接口的限制 JDK提供了ExecutorService接口表示线程池,可以通过submit提交一个任务。 但这里的task有个问题,因为继承制Runnable,如果希望返回一个结果,只能用result来表示,这样主线程获取结果,就很不方便。 因此JDK又提供了一个Callabl
阅读全文
posted @
2019-06-13 22:37
singleSpace
阅读(283)
推荐(0)