![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
cucumberpieces
简简单单,随遇而安~
展开
-
Dom4j解析xml文档
一.前言 dom4j是一套非常优秀的Java开源api,主要用于读写xml文档,具有性能优异、功能强大、和非常方便使用的特点。 另外xml经常用于数据交换的载体,像调用webservice传递的参数,以及数据做同步操作等等, 所以使用dom4j解析xml是非常有必要的。二.准备 自己在网上下载dom4j.jar三.实战 实现思路: <1>根据读取的xml路径,传递给SAXRea原创 2017-03-28 09:28:24 · 253 阅读 · 0 评论 -
IO框架
java.io包里面主要有三个类: 1.File 文件和目录类2.InputStream OutputStream 都是抽象类不能实例化 字节流读写类 一.File类 File类的对象,表示了磁盘上的文件或者目录 Flie类不能对文件内容读写操作,直接处理文件或文件系统构造方法 File(目录名) 文件输入输出流 FileInputStream 为InputStream原创 2017-03-25 10:40:11 · 209 阅读 · 0 评论 -
String,StringBuffer,StringBuilder
1.String 是常量,一旦创建就不可改变,假设对字符串进行修改的话,则相当于在内存中重新开辟一块内存空间,用来存储新的字符串变量, 每次对String类型进行改变的时候,其实都等同于生成了一个新的String对象,然后将指针指向新的String对象。所以经常改变内容的字符串最好不要用String ,因为每次生成对象都会对系统性能产生影响,特别当内存中无引用对象多了以后, JVM 的 GC 就会开原创 2017-03-29 09:47:19 · 181 阅读 · 0 评论 -
【Java面试必备】最近5年133个Java面试问题列表
好文章 链接:https://www.nowcoder.com/discuss/21112 来源:牛客网Java 面试随着时间的改变而改变。在过去的日子里,当你知道 String 和 StringBuilder 的区别(String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象。因此在每次对 String 类型进行改变的时候其实都等同于生转载 2017-04-09 17:47:26 · 531 阅读 · 0 评论 -
JAVA处理流BufferedReader、BufferedWriter
处理流就是包在其它流上面的流(有时包在节点流之外, 节点流就是直接和数据源连接的流),处理流不是直接和数据源连接,而是从数据源读取到数据以后再通过处理流处理一遍。 缓冲流也包含了四个类:BufferedInputStream、BufferedOutputStream、BufferedReader和BufferedWriter。package cn.com.jlu.test;import java.原创 2017-03-29 10:58:12 · 3107 阅读 · 0 评论 -
JavaのNIO
NIO(New IO )或者是Non Blocking IO非阻塞IOStream是单向的,譬如:InputStream, OutputStream. Channel是双向的,既可以用来进行读操作,又可以用来进行写操作。 NIO中的Channel的主要实现有:FileChannelDatagramChannelSocketChannelServerSocketChannel两个比较重要原创 2017-04-17 21:06:06 · 315 阅读 · 0 评论 -
Javaの值传递和引用传递
引用传递和值传递 java中是没有指针的,java中只存在值传递,只存在值传递,只存在值传递!!! 然而我们经常看到对于对象(数组,类,接口)的传递似乎有点像引用传递,可以改变对象中某个属性的值。但是不要被这个假象所蒙蔽,实际上这个传入函数的值是对象引用的拷贝,即传递的是引用的地址值,所以还是按值传递。这里要用实际参数和形式参数的概念来帮助理解,1.值传递:方法调用时,实际参数把它的值传递给对应原创 2017-04-13 21:06:14 · 206 阅读 · 0 评论 -
Javaの线程池
池”技术对我们来说是非常熟悉的一个概念,它的引入是为了在某些场景下提高系统某些关键节点性能,最典型的例子就是数据库连接池,JDBC是一种服务供应接口(SPI),具体的数据库连接实现类由不同厂商实现,数据库连接的建立和销毁都是很耗时耗资源的操作,为了查询数据库中某条记录,最原始的一个过程是建立连接、发送查询语句、返回查询结果、销毁连接,假如仅仅是一个很简单的查询语句,那么可能建立连接与销毁连接两个步骤原创 2017-04-14 21:54:32 · 144 阅读 · 0 评论 -
HashMap底层源码分析
值得注意的是HashMap不是线程安全的,如果想要线程安全的HashMap,可以通过Collections类的静态方法synchronizedMap获得线程安全的HashMap。Map map = Collections.synchronizedMap(new HashMap());HashMap的数据结构 HashMap的底层主要是基于数组和链表来实现的,它之所以有相当快的查询速度主要是因为它是原创 2017-04-24 21:35:29 · 277 阅读 · 0 评论