
java
文章平均质量分 59
lubiaopan
天行健,君子以自强不息;地势坤,君子以厚德载物!
展开
-
Ibatis之RowHandler
Ibatis rowhandler fetchsize原创 2014-10-21 15:07:37 · 7647 阅读 · 1 评论 -
Java虚拟机原理(摘)
Java虚拟机原理(摘)2009-05-11 13:16一、什么是Java虚拟机Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。1.为什么要使用Java虚拟机 Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这转载 2009-10-25 12:53:00 · 635 阅读 · 0 评论 -
C#和java中String的异同
Java和C#是极其的相似,两种语言都各有优劣,这里对Java和C#中string的异同进行一下介绍。相同点:1/ 在java和C#中string都被看做对象来处理,都有处理字符串的丰富的方法。2/ 在java和C#中string都是不可变类。亦即,当两个sting变量指向同一个字符串对象时,如果改变某个变量的值,那么不会对另一个变量指向的string产生影响,而是开辟另一块内存空间存储新的string,这也是和其他普通类最大的不同。对于下面的代码,java和C#都会输出相同的结果,先输出true后输出fa原创 2010-08-03 12:40:00 · 4009 阅读 · 1 评论 -
使用ResultSet的geRow()方法的注意事项
<br />public class Test{<br /> public static void main(String args[]){<br /> String s="XXX";//驱动程序字符串<br /> String s1="XXX"//连接数据库字符串<br /> <br /> try{<br /> Class.forName(s);<br /> }catch(ClassNotFoundExc原创 2010-06-04 21:19:00 · 1063 阅读 · 0 评论 -
子类会自动调用父类的无参构造函数
今天去一个公司笔试,遇到了如下的一道题:class TestA{ public TestA(){ System.out.println("A"); }}class TestB extends TestA{ public TestB(){ System.out.println("B"); }}public class Test{ public static void main(String原创 2010-05-23 20:20:00 · 7927 阅读 · 5 评论 -
Private——你真的了解了吗?
大家都知道java中的Private关键字是一个访问控制符,类中定义的变量如果被Private修饰,那么这个变量就不能在类外被访问,但是你是真的理解了这句话的意思了吗?请看下面的代码。示例:class TestDemo{ private int i = 5; public void f(TestDemo another){ another.i++原创 2009-12-16 20:40:00 · 1508 阅读 · 2 评论 -
Java内部类全接触
内部类也就是定义在类内部的类,可以将其分为以下四种:1、成员内部类、 2、局部内部类、3、静态内部类、4、匿名内部类 一、成员内部类1、四个访问权限修饰符都可以修饰成员内部类。2、内部类和外部类在编译时是不同的两个类,即在编译时生成的各自的字节码文件(Outer.class和Outer$Inner.class),没有任何依赖。3、内部类中可以访问外部类的成员,包括静态成员、实例成员原创 2009-12-12 20:04:00 · 750 阅读 · 0 评论 -
枚举总结
枚举本质上是一个类,他编译后会生成一个class文件,并且这个类的对象是现成的,在定义类的时候,即定义好了对象, 程序员要使用的时候,只能从中选择,而无权创建。创建枚举最简单的形式如下: enum 枚举名{ 枚举值1(..),枚举值2(..),.....;}//枚举值之间都是都好,最后一个是分号;在没有出现枚举以前,我们往往都是通过模式来达到枚举的效果,如下:final class S原创 2009-12-12 22:24:00 · 766 阅读 · 0 评论 -
java继承中的几点注意事项
继承是面向对象语言的一个重要特征,在进行大型项目开发的时候其优点尤其明显,这里对java中应用继承时的几点注意事项(容易出错的地方)进行了总结。笔者本打算将这几种现象从基本原理上解释一下,但是想来想去都感觉无从下手,因为需要读者比较了解java虚拟机的内部机制,很多东西比较抽象,所以看到这篇文章的读者记住下面这几种现象就行了,如果想深入理解其本质原理,建议大家读一下《深入java虚拟机》这本书。原创 2009-12-05 21:28:00 · 3768 阅读 · 1 评论 -
java基础经典五十问
1、&和&&的区别。 答:&是位运算符,&&是布尔逻辑运算符。&也可用于逻辑运算,但是此时他不支持短路运算(即如果第一个变量的值为false,他还会判断第二个变量的bool值)2、Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 答:Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11.原创 2009-12-13 12:54:00 · 1329 阅读 · 0 评论 -
jar工具的使用
本文为转帖加原创,在原帖的基础上进行了完善常常在网上看到有人询问:如何把 java 程序编译成可执行文件。通常回答只有两种,一种是利用java的jar.exe制作一个可执行的JAR文件包,然后就可以像.chm 文档一样双击运行了;另一种是使用 JET来进行编译。但是JET是要用钱买的,而且据说JET也不是能把所有的Java程序都编译成执行文件,性能也要打些折扣。所以,制作可执行 JAR 文件包原创 2009-09-29 16:11:00 · 2369 阅读 · 1 评论 -
Ibatis之3个不常用的Query方法
1.queryForObject /** * Executes a mapped SQL SELECT statement that returns data to populate * the supplied result object. * * The parameter object is generally used to supply the i原创 2014-10-22 10:42:27 · 5141 阅读 · 0 评论 -
java中String s=”abc“及String s=new String("abc")详解
本博客内容由网上搜集而来,作者加以修改整理而成 首先,我们先来看一下java中变量的语义:java的变量有两种语义,原始类型的变量是值语义(value),也就是说,你给一个原始类型变量赋值,就改变了这个数据值本身。对象类型的变量是引用语义,也就是说,给一个对象类型的变量赋值只是让它指向另一个对象,但不改变原来引用的那个对象的值。 然后,我们了解一下String的特性以及java对于原创 2009-11-06 12:45:00 · 8796 阅读 · 2 评论 -
String s = new String("abc");创建了几个String对象?
String s="abc";创建了几个String对象 String s = new String("abc");创建了几个String对象? 首先需要明确下面的知识点:1、引用变量与对象的区别;2、字符串文字"abc"是一个String对象; 3、文字池(pool of literal strings)和堆(heap)中的字符串对象。一、引用变量与对象A aa;这个语句声明一个原创 2009-11-05 21:31:00 · 8324 阅读 · 5 评论 -
WebService对象可空的困惑,关于nillable和minOccurs
首先来看minOccurs和Nillable的官方解释minOccurs:表示XML文档中某个元素节点是否可以不出现,默认值为1,表示必须出现nillable:表示XML文档中某个元素的取值是否可以为空,默认值为false,表示不能为空下面来看例子Java版Server端代码Person.javapackage com.lubiao.axis;public clas原创 2013-12-17 16:14:04 · 22468 阅读 · 2 评论 -
面向接口编程的好处
面向接口编程就是面向抽象编程、面向规范编程,它带来的最大的好处便是解耦、增强扩展性、屏蔽变化举例:非单例的情况,侧重于强调[扩展性强]//命令接口public interface ICommand{ void doCommand();}//命令1public class Command1 implements ICommand{}//命令2publ原创 2013-12-05 15:35:04 · 5789 阅读 · 0 评论 -
Hibernate Dialect must be explicitly set 错误信息解决方法
Hibernate Dialect must be explicitly set 错误信息解决方法编程时出现这种错误的原因如下:1、最明显的原因,在配置文件中没有设置Dialect;2、第二个原因,和编程时采用哪种配置文件有关系,hibernate有两种配置文件:一种是XML格式的,另一种是*.properties文件格式,你可以采用这两种配置文件中的任意一种,但是要注意的是在编写原创 2009-10-11 15:43:00 · 15479 阅读 · 1 评论 -
java反射全接触(原理,示例和应用)
网上已经有很多关于反射的文章,之所以需要写这篇博客,原因在于:一是自己做一下学习笔记,二是从我学习的感触来做一下比较全面的总结,三是笔者想从基本原理上来阐述反射机制、去掉边边角角而专注于反射的基本概念和应用。一、预先需要掌握的知识(java虚拟机)java虚拟机的方法区:java虚拟机有一个运行时数据区,这个数据区又被分为方法区,堆区和栈区,我们这里需要了解的主要是方法区。方法区的主要原创 2009-12-06 15:28:00 · 2002 阅读 · 2 评论 -
请注意:java中没有引用传递
说明:本文的适用对象为java初学者、如果有读者发现文章中有叙述不妥之处,请指正。今天在论坛上有人提了一个关于java中调用函数时有没有引用传递的问题,可谓是吵的不可开交。有人说java只有值传递,也有人说java既有值传递也有引用传递,那么java中到底有没有引用传递呢,下面我来分析一下。一、首先来明确一下"值传递"和"引用传递的"区别值传递:是对所传递参数进行一次副本拷原创 2009-11-19 20:48:00 · 15008 阅读 · 24 评论 -
用java实现的一个简单web服务器程序
一、首先来看一下http的报文结构1、请求报文一个HTTP请求报文由请求行(request line)、请求头部(header)、空行和请求数据4个部分组成,下图给出了请求报文的一般格式。 (1)请求行请求行由请求方法字段、URL字段和HTTP协议版本字段3个字段组成,它们用空格分隔。例如,GET /index.html HTTP/1.1。HTTP协议的请求方法有GET原创 2009-12-01 12:59:00 · 4502 阅读 · 1 评论 -
java对数据库中NULL的处理
java中null的概念:java中,null表示类或变量是空,不代表任何对象或实例,可以将null赋给引用类型变量,但不可以将null赋给基本类型变量。数据库中NULL的概念:数据库中,null表示未填写、未知、不可用的概念,和java不同的是数据库中可以将null赋给任何数据类型。这样一来,我们从数据库中读取字段的值后,在java程序中如何判断读取的值是否为null呢?用x==null方法吗原创 2009-11-18 16:46:00 · 7987 阅读 · 0 评论 -
hashmap与hashtable的区别,以及实现hashmap的同步操作
2009-07-02hashmap与hashtable的区别,以及实现hashmap的同步操作Hashtable和HashMap的区别 1.Hashtable是Dictionary的子类,HashMap是Map接口的一个实现类;2.Hashtable中的方法是同步的,而HashMap中的方法在缺省情况下是非同步的。即是说,在多线程应用程序中,不用专门的操作就安全地可以使用Has转载 2009-11-18 12:31:00 · 1743 阅读 · 0 评论 -
Java:Unicode简介
Java:Unicode简介责任编辑:ITPUB实习编辑作者:hhong123 2006-11-09 文本Tag: Java 【IT168技术文档】 Unicode是一种字符编码规范 。 先从ASCII说起。ASCII是用来表示英文字符的一种编码规范,每个ASCII字符占用1个字节(8bits) 因此,ASCII编码可以表示的最大字符数是256,转载 2009-10-22 20:36:00 · 7246 阅读 · 0 评论 -
jvm内存问题和String到底有没有长度限制
jvm内存问题和String到底有没有长度限制有人说: “不断的将被选中的字符串加到某一字符串末尾,当长度超过一定量是就提示: java.lang.StringIndexOutOfBoundsException: String index out of range: 10 ”说明String有长度限制。 看一下Java API就会知道 java.lang.StringIndexOutOfBou转载 2009-10-22 18:52:00 · 3506 阅读 · 0 评论 -
J2EE全面简介
J2EE 全面简介 级别: 初级刘湛 (jeru@163.net), 武汉大学信息与计算科学系学士2001 年 7 月 07 日本文从五个方面对J2EE进行了比较全面的介绍。从J2EE的概念说起,到它的优势,到J2EE典型的四层模型,和它的框架结构,最后是J2EE十三种核心技术的一个简介。本文分转载 2009-10-23 23:13:00 · 1068 阅读 · 0 评论 -
Java的四大应用领域
Java的四大应用领域 (计算机世界报 2008年01月14日第02期 C9)2008-01-12 14:30:56 Java进入中国10多年来,已得到我国学术界、产业界的重视,成为企业级应用的主要支撑平台。■ 龚炳铮转载 2009-10-23 21:06:00 · 11496 阅读 · 0 评论 -
MyEclipse快速开发Hibernate的步骤
MyEclipse快速开发Hibernate的步骤用 MyEclipse, 就有必要把 MyEclipse 快速开发的功能熟悉一下. 当我们熟悉了基本的开发过程之后, 就需要考虑用顺手的 IDE 来让我们的开发速度有个飞跃了.这次讨论的主题包括: Hibernate 快速开发, Spring 快速开发, Struts 登录应用开发, UML 建模, 可视化Swing界面转载 2009-10-11 21:52:00 · 1481 阅读 · 1 评论 -
java RMI简介和例子
RMI一步一步来RMI,远程方法调用(Remote Method Invocation)是Enterprise JavaBeans的支柱,是建立分布式Java应用程序的方便途径。RMI是非常容易使用的,但是它非常的强大。RMI的基础是接口,RMI构架基于一个重要的原理:定义接口和定义接口的具体实现是分开的。下面我们通过具体的例子,建立一个简单的远程计算服务和使用它的客户程序一转载 2009-09-29 00:56:00 · 967 阅读 · 1 评论 -
RMI的几个问题总结, 共勉
最近由于项目的需要,研究了一下RMI的相关应用,学习JAVA最大的好处就是大牛们为我们做了好多底层的工作,我们只是直接拿过来用就好了,但是这之间也碰到了不少的问题,所以对于学习JAVA的人来说,必要的了解一些底层的东西还是很有必要的,不然以后只能停留在技工的这个阶段上了。开发一直用的是Ubuntu系统,很喜欢这个系统,部分原因是因为它的特效做的很炫,当然更大的原因是对开源社区的尊敬和喜爱,因为转载 2009-09-29 00:52:00 · 4746 阅读 · 0 评论 -
Eclipse下的RMI编程
现在Eclipse使用的比较多,而其功能的可扩展性也是超级强大,可以将多种工具和开发技术通过插件包的形式融合进来。这里说一下怎么通过RMI Plugin在Eclipse里面调试RMI程序。一、准备安装包 Eclipse的下载地址这里就不说了。这里提供RMI Plugin for Eclipse 的下载地址: http://www.genady.n转载 2009-09-29 20:25:00 · 3778 阅读 · 0 评论 -
java中判断string是否为空的三种方法——效率比较
/** * * @author USER * 以下是 Java 判断字符串是否为空的三种方法. 方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低. 方法二: 比较字符串长度, 效率高, 是我知道的最好一个方法. 方法三: Java SE 6.0 才开始提供的方法, 效率和方法二几乎相等, 但出于兼容性考虑, 推荐使用方法二. 以下代码在我机器上的运行结果: (机器性能不一, 仅转载 2009-10-23 21:23:00 · 7655 阅读 · 0 评论 -
初学者如何开发出一个高质量的J2EE系统
初学者如何开发出一个高质量的J2EE系统板桥里人 http://www.jdon.com 2005/06/20 J2EE学习者越来越多,J2EE本身技术不断在发展,涌现出各种概念,本文章试图从一种容易理解的角度对这些概念向初学者进行解释,以便掌握学习J2EE学习方向。 首先我们需要知道Java和J2EE是两个不同概念,Java不只是指一种语言,已转载 2009-10-23 23:35:00 · 758 阅读 · 0 评论 -
判断String是否为空的注意事项
首先需要注意一点,笔者在这里不将"s==nul"l的情况视为"s是空字符串"。 一,初学者容易出现的错误 1、用if(s==""){}判断s是否为空。这种方式是最低级的错误同时也是最隐蔽的错误,说它低级是因为这样构造语句的程序员对String了解甚少,说它隐蔽是因为这条语句不仅不会发生编译错误而且很多新手还会认为这样判断完全正确,殊不知存在严重的bug。先看下面的示例:示原创 2009-11-16 21:50:00 · 13335 阅读 · 2 评论 -
作为函数参数时String和String[]数组的区别
首先、我们必须牢记的一点是:java语言规范规定,String型变量指向的内存空间中的内容是不能被改变的,即String是不可改变的类!示例一:public class TestConstant{ public static void main(String args[]){ String str=new String("hello");原创 2009-11-16 09:54:00 · 10532 阅读 · 2 评论 -
静态(static)方法的继承和重写
静态方法大家应该都比较熟悉,在这里主要谈一下静态方法在继承时的一些注意事项。 1、父类方法如果是静态方法,子类不能覆盖为非静态方法;2、父类方法如果是非静态方法,子类不能覆盖为静态方法;3、父类静态方法可以被覆盖,允许在子类中定义同名的静态方法,但是没有多态。下面对第3条特性进行一下代码演示:class Demo{ public static void display()原创 2009-11-12 20:50:00 · 10027 阅读 · 0 评论 -
static{}语句块详解
声明:转载请注明出处static{}(即static块),会在类被加载的时候执行且仅会被执行一次,一般用来初始化静态变量和调用静态方法,下面我们详细的讨论一下该语句块的特性及应用。 一、在程序的一次执行过程中,static{}语句块中的内容只被执行一次,看下面的示例:示例一class Test{ public static int X=100; publi原创 2009-11-12 14:27:00 · 25554 阅读 · 9 评论 -
在TreeSet中实现存储自定义对象
在TreeSet中实现存储自定义对象 一、先来看一下TreeSet的继承结构和类声明形式继承结构:java.lang.Object |_ java.util.AbstractCollection |_ java.util.AbstractSet |_ java.util.TreeSet 类声明:public class原创 2009-11-10 20:37:00 · 5682 阅读 · 1 评论 -
equals方法和hashCode方法详解
一、初识equals()和hashCode()方法 1、首先需要明确知道的一点是:hashCode()方法和equals()方法是在Object类中就已经定义了的,所以在java中定义的任何类都会有这两个方法。原始的equals()方法用来比较两个对象的地址值,而原始的hashCode()方法用来返回其所在对象的物理地址,下面来看一下在Object中的定义:equals:pub原创 2009-11-09 21:06:00 · 6294 阅读 · 3 评论 -
java堆栈
1. 栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。 2. 栈的优势是,存取速度比堆要快,仅次于直接位于CPU中的寄存器。但缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。另外,栈数据可以共享,详见第3点。堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,Jav转载 2009-11-08 22:07:00 · 1270 阅读 · 0 评论 -
JAVA中String与StringBuffer 、StringBuilder的区别
JAVA中String与StringBuffer 、StringBuilder的区别一、String和StringBuffer的区别在java中有3个类来负责字符的操作。 1.Character 是进行单个字符操作的,2.String 对一串字符进行操作。不可变类。3.StringBuffer 也是对一串字符进行操作,但是可变类。 Str转载 2009-11-05 22:04:00 · 1200 阅读 · 0 评论