![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java SE
文章平均质量分 51
liyancheng984807972
这个作者很懒,什么都没留下…
展开
-
Java NIO原理 图文分析及代码实现
Java NIO原理图文分析及代码实现 前言: 最近在分析hadoop的RPC(Remote Procedure Call Protocol ,远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。可以参考:http://baike.baidu.com/view/32726.htm )机制时,发现hadoop的RPC机制的实现主要用到了两个技术:转载 2013-07-08 14:54:55 · 503 阅读 · 0 评论 -
浅谈java enum
对于任何枚举类都是java.lang.Enum类的子类,且枚举类都要符合>,而 E 表示枚举类型的名称。枚举类型的每一个值都将映射到protected Enum(String name, int ordinal) 构造函数中,在这里,每个值的名称都被转换成一个字符串,并且序数设置表示了此设置被创建的顺序。例如public enum Command { RM, CD, MK,原创 2013-08-11 13:20:50 · 494 阅读 · 0 评论 -
dom4j对xml的读取
今天了解了一下dom4j对xml的读写,保存一下代码以防以后忘记读取xml:private static Document getDocument(String xmlUrl) throws DocumentException, FileNotFoundException { SAXReader reader = new SAXReader(); // 从文件中获取do原创 2013-08-13 15:59:21 · 555 阅读 · 0 评论 -
使用xstream对xml的写入
使用xstream很方便的将list集合转换成一个xml类型数据代码如下: private static Student student = null; private static List stuList = null; private static XStream stream = null; private static String xml_head = "";原创 2013-08-13 16:41:25 · 700 阅读 · 0 评论 -
解析java iterator 原理
今天有空把iterator解析了一遍,算是彻底了解了它的原理,我们首先看它的源代码:让我们看看AbstractList的创建一个内部类private class Itr implements Iterator {}大家可以看出这是jdk1.5出来的亲特性迭代器,不需要知道集合中某个值所在索引进行循环输出这个集合中所有的值,是不是很强大?在这个类中迭代器进行了初始化: public Iterat原创 2013-08-15 20:28:55 · 2932 阅读 · 0 评论 -
POI导出EXCEL实现
Apache的Jakata项目的POI子项目,目标是处理ole2对象。POI可以到 http://www.apache.org/dyn/closer.cgi/jakarta/poi/下载。编译好的jar主要有这样4个:poi包,poi Browser包,poi hdf包,poi hssf例程包。实际运行时,需要有poi包就可以了。HSSF提供给用户使用的对象在org.apach原创 2013-09-04 14:13:58 · 652 阅读 · 0 评论 -
webService简介
1.1、Web Service基本概念Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。是:通过SOAP在Web上提供的软件服务,使用WSDL文件进行说明,并通过UDDI进行注册。XML:(Extensible Markup Language)扩展型可标记语转载 2013-11-26 10:35:36 · 465 阅读 · 0 评论 -
webservice简单案例
一、首先建立一个bean主要用于连接数据库的时候封装数据的(看自己的情况来定)package com.ifly.ms.beans;import java.io.Serializable;public class OrderBean implements Serializable{ /** * TODO */ private static final long s原创 2013-11-26 10:51:53 · 527 阅读 · 0 评论 -
json工具处理对象属性时,该属性需要特殊处理时,例如时间本来是yyyy/MM/dd你想转换为yyyy-MM-dd
第一步、时间格式化工具public static synchronized String getDateSecondFormat(java.util.Date date) { return getDateFormat(date, "yyyy-MM-dd"); }第二步、自定义json的处理日期转换类public class CustomJsonDateSerializer exten原创 2014-12-04 09:38:54 · 539 阅读 · 0 评论 -
short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
对于short s1 = 1; s1 = s1 + 1;由于s1+1运算时会自动提升表达式的类型,所以结果是int型,再赋值给short类型s1时,编译器将报告需要强制转换类型的错误。而对于+=则是java编辑器对其有特殊处理,先将是s1+1相加得int类型,然后编译器将其强制类型转换为short类型的,所以不会出错!原创 2013-08-10 15:41:15 · 453 阅读 · 0 评论 -
生成java可执行文件(bat)
1.在eclipse中选择你要导出的类或者package,右击,选择Export子选项;2.在弹出的对话框中,选择java文件---选择JAR file,单击next;3.在JAR file后面的文本框中选择你要生成的jar包的位置以及名字,注意在Export generated class files and resources和Export java source files转载 2013-08-09 17:16:23 · 628 阅读 · 0 评论 -
Java获取系统时间的几种方法
import java.text.SimpleDateFormat;import java.util.Calendar; 方法一: SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String ly_time = sdf.format(newjava.util.Da转载 2013-07-02 14:10:46 · 553 阅读 · 0 评论 -
java 保留数字有效位含有进位
方式一: double f = 111231.5585; BigDecimal b = new BigDecimal(f); double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP)。doubleValue(); //数字2是保留两位小数BigDecimal.RO转载 2013-07-21 08:23:05 · 1344 阅读 · 0 评论 -
java String
今天回顾了一下java基础,发现原理性问题,以前不太了解的地方,刚刚看了String类型,发现string类型的变量每次赋值时这个变量在内存中的地址都会改变。而不像数据类型一样。转载 2013-07-24 11:40:35 · 435 阅读 · 0 评论 -
java垃圾回收机制剖析
Java的堆是一个运行时数据区,类的实例(对象)从中分配空间。Java虚拟机(JVM)的堆中储存着正在运行的应用程序所建立的所有对象,这些对象通过new、newarray、anewarray和multianewarray等指令建立,但是它们不需要程序代码来显式地释放。一般来说,堆的是由垃圾回收 来负责的,尽管JVM规范并不要求特殊的垃圾回收技术,甚至根本就不需要垃圾回收,但是由于内存的有限性,JV转载 2013-07-23 16:54:30 · 386 阅读 · 0 评论 -
Java内存溢出
常见的Java内存溢出有以下三种1 、java.lang.OutOfMemoryError: Java heap spaceJVM Heap(堆)溢出JVM在启动的时候会自动设置JVM Heap的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)不可超过物理内存。可以利用JVM提供的-Xmn -Xms -Xmx等选项进行设置。Heap的大小是Young Gene原创 2013-08-01 16:21:03 · 398 阅读 · 0 评论 -
java 迭代器iterator的原理 浅谈
迭代器是工作在一个独立的线程中,并且拥有一个mutex锁,就是说iterator在工作的时候,是不允许被迭代的对象被改变的。iterator被创建的时候建立一个内存索引表(单链表),这个索引表指向原来的对象,当原来的对象数量改变的时候,这个索引表的内容没有同步改变,所以当索引指针往下移的时候,便找不到要迭代的对象,于是错误。List、Set等是动态的,可变对象的数量的数据结构,但是iterator原创 2013-08-04 10:17:27 · 6369 阅读 · 0 评论 -
serializable的串行化
串行化:对象的寿命通常随着生成该对象的程序的终止而终止。有时候,可能需要将对象的状态保存下来,在需要的时候再将对象恢复。我们把对象的这种能记录自己的状态以便将来再生的能力叫做对象的持续化。对象通过写出描述自己状态的数值来记录自己,这个过程叫做对象的串行化。串行化的主要任务是写出对象的实例变量的数值。如果交量是另一个对象的引用,则引用的对像也要串行化。这个过程是递归的,串行化可能要涉及一个复杂的树结转载 2013-08-04 10:04:19 · 800 阅读 · 0 评论 -
Java分割字符串spilt方法使用需注意的地方
在Java程序中,由于系统类库的支持,分割字符串变得很容易,但是,在使用spilt方法时,有些细节不容忽视。当使用"+"、"?"、"\"、"*"、"^"、"."等特殊字符分割字符串时,若不进行特殊字符的转义,将得不到正确的结果,有些还会报错。仔细研究API中spilt方法的介绍,才知晓其中原委。API中的描述,public String[] spilt(String regex),从参数名即可看转载 2013-07-04 15:32:28 · 652 阅读 · 0 评论 -
@JSONField的含义
将对象属性转换为json时,为了防止把不需要的属性转换时,可以使用@JSONField(serialize = false, deserialize = false)原创 2014-12-04 09:30:55 · 2223 阅读 · 0 评论