java应用
iteye_7048
这个作者很懒,什么都没留下…
展开
-
ArrayList的性能优化
size、isEmpty、get、set、iterator 和 listIterator 操作都以固定时间运行。add 操作以分摊的固定时间运行,也就是说,添加 n 个元素需要 O(n) 时间。其他所有操作都以线性时间运行(大体上讲)。与用于LinkedList 实现的常数因子相比,此实现的常数因子较低。每个 ArrayList 实例都有一个容量。该容量是指用来存储列表元素的数组的大小...原创 2012-06-13 19:56:09 · 408 阅读 · 0 评论 -
unable to access jarfile ***.jar
相信有不少朋友遇到过这样的问题——如题,我今天也遇到了,后来发现是路径中存在空格的问题,我最初的路径是:C:\Tomcat 6.0\webapps\dynamicReport\WEB-INF\lib,后来改为C:\Tomcat6.0\webapps\dynamicReport\WEB-INF\lib,一切ok?搞定了...原创 2012-02-28 10:52:56 · 3018 阅读 · 0 评论 -
java trim
去掉字符串开头和结尾的空格,防止不必要的空格导致的错误。 public static void main(String arg[]){ String a=" abc"; String b="abc"; System.out.println(b.equals(a)); a=a.trim();//去掉字符串中的空格 System.out.println(a.equa...原创 2010-07-29 14:45:15 · 178 阅读 · 0 评论 -
instance的用法
instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。 用法:result = object instanceof class参数:result必选项。任意变量。object必选项。任意对象表达式。class必选项。任意已定义的对象类。...原创 2010-07-29 14:27:47 · 1696 阅读 · 0 评论 -
关于序列化
序列化解释:序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据序列化的目的:1、以某种存储形式使自定义对象持久化; 2、将对象从一个地方传递到另一个地方。关于序列化:将对象的状态信息转换为可以存储或传输的窗体的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从...原创 2010-07-27 19:07:25 · 76 阅读 · 0 评论 -
AES加密解密
由于刚才的方法不好使,算出来的东西不知道是什么进制,整迷糊了,就用如下的算法。[code="java"] /** * 加密 * * @param content 需要加密的内容 * @param password 加密密码 * @return */ public static byte[] encr...原创 2012-01-06 16:48:29 · 129 阅读 · 0 评论 -
java 加密解密 算法1
采用对称的加密的算法,具体看代码吧。[code="java"]import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.security.Key;...原创 2012-01-06 15:44:07 · 114 阅读 · 0 评论 -
搞懂java中的synchronized
我再次看了侯捷译的Thinking in Java第二版中文版,得到有关synchronized的如下信息: 1、synchronized关键字的作用域有二种: 1)是某个对象实例内,synchronized aMethod(){}可以防止多个线程同时访问这个对象的synchronized方法(如果一个对象有多个synchronized方法,只要一个线程访问了其中的一个synchronized方法...原创 2010-07-12 10:55:58 · 93 阅读 · 0 评论 -
java面试之String
String s = new String("abc");String s1 = "abc";String s2= new String("abc"); 第一个语句生成了几个对象?生成了两个,一个在String pool中,另一个在内存堆中!s是一个引用,指向内存中的abc s1指向String pool中的abc(创建时,看看String pool中是否存在abc...原创 2010-07-10 08:44:59 · 80 阅读 · 0 评论 -
关于@SuppressWarnings
最近做程序碰到了个@SuppressWarnings所以就去网上了解了下: 以下是我对@SuppressWarnings的理解: J2SE 提供的最后一个批注是 @SuppressWarnings。该批注的作用是给编译器一条指令,告诉它对被批注的代码元素内部的某些警告保持静默。 一点背景:J2SE 5.0 为 Java 语言增加了几个新的特性,并且和它们一起增加了许多新的警告并承...原创 2010-11-14 16:56:07 · 87 阅读 · 0 评论 -
几种常用的数据库分页
1.oracle数据库分页select * from (select a.*,rownum rc from 表名 where rownum=startrow2.DB2数据库分页Select * from (select rownumber() over() as rc,a.* from (select * from 表名 order by 列名) as a) where rc be...原创 2011-11-01 22:33:51 · 356 阅读 · 0 评论 -
Oracle: ORA-01000: 超出打开游标的最大数问题
java.sql.SQLException: ORA-01000: 超出打开游标的最大数ORA-01000: 超出打开游标的最大数ORA-06512: 在"SYS.DBMS_LOB", line 521ORA-06512: 在line 1 at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:180) at...原创 2011-11-02 09:53:21 · 234 阅读 · 0 评论 -
java.lang.ArrayIndexOutOfBoundsException: 6
java.lang.ArrayIndexOutOfBoundsException: 6今天上午在查看这个异常时感觉有点奇怪,感觉写的程序怎么会越界呢?看了看,原来是这的问题:ResultSetMetaData rsmd = rs.getMetaData();int count = rsmd.getColumnCount();这两句话得出的是列的长度,不是行的所以出现了数组越界...原创 2011-11-06 11:11:03 · 2729 阅读 · 0 评论 -
java支持的最大内存
1、jdk各个版本在不同操作系统中支持的最大内存是不一样的,但是可以通过以下方法来进行测试。 c:>java -Xmxxxxxm(g) -version 其中xxxx为最大内存数值, m(g)是内存的计量单位,如果命令能够正确显示出jdk的版本等信息,说明当前jdk支持测试的最大内存数量,否则说明测试的内存超出了jdk支持的最大值,例如: c:\\documents and set...原创 2012-06-13 11:14:24 · 666 阅读 · 0 评论 -
JAVA 程序中使用ORACLE 绑定变量( bind variable )
1、为什么要使用绑定变量 (1)SQL语 句硬分析(Hard Parse)太多,严重消耗CPU资源,延长了SQL语句总的执行时间 SQL语句的执行过程分几个步骤:语法检查、分析、执行、 返回结果。其中分析分为硬分析(Hard Parse)和软分析(Soft Parse)。一条SQL语句通过语法检查后,Oracle 会先去shared pool 中找是否有...原创 2012-08-17 10:45:26 · 319 阅读 · 0 评论 -
Java 的纯真年代已经离我们越来越远了
[size=large][size=medium]用Java 去写跨平台的基础软件,利用Java 优秀的网络处理能力,去探寻异构系统跨平台Java 多线程服务程序。Java 的Socket 程序也许是你用得最多的一个应用方向。每天都在为Java 多线程的开销而烦恼,不断的进行性能诊断和系统的调优。对真实计算机体系结构非常清楚,对于Java 虚拟出来的那个计算环境更是不在话下。甚至还...原创 2012-03-07 15:05:17 · 154 阅读 · 0 评论 -
邮件发送 java mail
根据需要写了一个java发送邮件的程序[code="java"] Properties props = new Properties(); props.put("mail.smtp.host", "smtp.126.com"); props.put("mail.smtp.auth", "true"); Session session ...原创 2011-05-10 21:51:17 · 114 阅读 · 0 评论 -
java定时启动跑批
要做一个自动的跑批的流程,需要定点启动一个进程,比如说每天7点。这需要用到java的一个Timer类来实现。一下为实现方法:[code="java"]public class autotask { public static void main(String[] args) { Date now = new Date(); // System.out.pr...2011-04-23 14:48:58 · 1581 阅读 · 0 评论 -
UNION替换OR效率测试及总结
大家在做SQL优化的过程中,可能都知道一个事实:某些情况下使用UNION替换OR可以提高SQL的运行效率。您知道这个“某些情况”指的是什么么?解释一下,“某些情况”指的是:使用的表字段要有索引。这个实验,给大家展示一下这个结论1.创建测试表sec@ora10g> drop table t;Table dropped.sec@ora10g> cre...原创 2011-11-09 17:11:50 · 781 阅读 · 0 评论 -
update 多表更新
在开发中,数据库来回换,而有些关键性的语法又各不相同,这是一件让开发人员很头痛的事情.本文总结了Update语句更新多表时在SQL Server,Oracle,MySQL三种数据库中的用法.我也试了SQLite数据库,都没成功,不知是不支持多表更新还是咋的. 在本例中: 我们要用表gdqlpj中的gqdltks,bztks字段数据去更新landleveldata中的同字段名的数据,条件是当la...原创 2011-11-09 15:35:06 · 103 阅读 · 0 评论 -
ora-00957:duplicate column name
ora-00957:duplicate column name很显然有个行的名字重复了,仔细耐心的查看了下果然。。。两个同名的column。改了名字,ok。编译成功。原创 2011-11-07 16:49:20 · 1875 阅读 · 0 评论 -
ResultSet获取行数
网上有人说用这种方式获取:ResultSet里面有,你先把rs.last(),再getRow(),就是总行数。经验证此方法不可取。java.sql.ResultSet 当你执行了executeQuery后,jdbc会返回给你一个结果集,这个结果集如果你要得到里面的值,就执行靠使用rs.next()的方法逐行的移动游标获得,这因为如此,所以在游标没有移动到最后一条记录之前,你是无法获...原创 2011-11-06 11:21:22 · 203 阅读 · 0 评论 -
cvs工作原理及对cvs的理解
cvs是一个不错的软件版本管理工具。 cvs分为客户端和服务器端管理,分别为wincvs和cvsnt。 CVS(Concurrent Version System)和Subversion都是非常优秀的版本控制系统,它可以在软件开发过程中记录文件的变更细节以及存储软件开发过程中的各种版本。版本控制系统允许多名开发人员同时编辑同一文件而不会丢失数据。每名开发人员都拥有该文件的副本,最后将所...原创 2010-11-09 08:50:48 · 1277 阅读 · 0 评论 -
Java数组新特性
Java数组可以传递不定数目的变量个数public class TestNewArray { public static void main(String args[]){ System.out.print("不传递参数(fun()):") ; fun() ; // 不传递参数 System.out.print("\n传递一个参数(fun(1)):") ; fu...2010-04-17 15:28:03 · 93 阅读 · 0 评论 -
java中抽象类和接口的关系
1.abstract class 在 Java 语言中表示的是一种继承关系,一个类只能使用一次继承关系。但是,一个类却可以实现多个interface。 2.在abstract class 中可以有自己的数据成员,也可以有非abstarct的成员方法,而在interface中,只能够有静态的不能被修改的数据成员(也就是必须是static final的,不过在 interface中一般不定...原创 2010-09-15 15:24:24 · 91 阅读 · 0 评论 -
给较大Java应用程序提速技巧
在我的系统上每次使用Java应用程序时,我都感觉特别慢。对于一些比较大的Java应用程序而言,这种感觉尤其明显。最近,我学到了一招技巧,提速的效果还不错。如果你也有类似的烦恼,那么赶紧来试试吧。 要使用该技巧,你必须满足以下条件: 1.开启 OpenGL 3D 加速的显卡 2.Sun Java version 5 及更高版本 说来也简单,你只需在Java应用程序的启动...原创 2010-09-15 10:49:41 · 179 阅读 · 0 评论 -
区别Java中堆与栈
栈与堆都是Java用来在RAM中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。 Java的堆是一个运行时数据区,类的对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarray等指令建立,它们不需要程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为它是...原创 2010-09-15 10:33:15 · 72 阅读 · 0 评论 -
java关于乱码问题的常见错误与解决
Java 关于中文乱码问题的解决方案与经验 (1) :一、字节和unicode java内核是unicode的,就连class文件也是,但是很多媒体,包括文件/流的保存方式是使用字节流的。因此java要对这些字节流经行转化。char是unicode的,而byte是字节。java中byte/char互转的函数在sun.io的包中间有。其中bytetocharconverter类是中调度,可以用来告诉...原创 2010-09-04 14:13:33 · 185 阅读 · 0 评论 -
拼接字符流
拼接字符流 1 得到字符流 2 定义一个byte【】【】 me二维数组用来接存储信息 3 判断得到的字节流是否为空 不为空me.avaible 在read一下 4 不为空 则加入length 5 在定义一个一位数组 将二维数组变成一位数组 6 String形成字符输出...原创 2010-09-03 17:38:06 · 104 阅读 · 0 评论 -
空指针错误 java.lang.NullPointerException
空指针异常,碰见这个错误真是挺恶心的,得去不停的debug。 空指针错误 java.lang.NullPointerException 错误原因:使用基本的JAVA数据类型,变量的值要么已经是默认值,如果没有对其正常赋值,程序便不能通过编译,因此使用基本的JAVA数据类型(double,float,boolean,char,int,long)一般不会引起空指针异常。由此可见,空...原创 2010-08-27 11:28:13 · 171 阅读 · 0 评论 -
JAVA错误 java.lang.Error
在调试java程序时,最常见的异常。 原因: 1.对系统所访问外部资源,未执行关闭操作,导致外部资源大量浪费,最终可能导致系统无法正常运行; 2.对系统所访问的外部资源关闭次数太多,外部系统无法正常处理; 3.系统访问的外部资源出现异常情况。 解决方案: 1.访问外部资源前,首先检查该资源(如数据库)是否可正常连接或操作。 2.访问外部资源时,如果进行了连接,一定进行关...原创 2010-08-27 11:24:08 · 3200 阅读 · 0 评论 -
类定义未找到错误 java.lang.NoClassDefFoundError
在写程序时,经常遇到这个错误。类定义未找到错误 java.lang.NoClassDefFoundError 原因: 由于该程序调用到的JAVA类文件没有正确上传; 解决方案: 将JAVA类文件重新上传。 JAVA类文件已经上传,但应用服务器并未检测到,建议将JSP页面重新更新。 解决方案: 将JSP页面更新并上传;或将应用程序服务器进行重新启动。 实...原创 2010-08-27 11:20:54 · 288 阅读 · 0 评论 -
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
String 报的这个错是截取时异常,超出了截取范围。java.lang.StringIndexOutOfBoundsException: String index out of range: -1 要避免截取异常,可以在截取之前先加个判断。例如:if(str.length<2){ return ;}String ss = str.subString(2); ...原创 2010-08-27 11:05:14 · 1035 阅读 · 0 评论 -
javaGUI应用程序发布&&数字签名
JavaGUI应用程序部署 JavaGUI程序发布分类1) Applet:可以嵌入到浏览器中,通过网页的方式展示给用户2) application :有两种发布方式ü 打包成jar包通过bat的方式运行,或者通过第三方软件打成exe(后续会再详细介绍)ü 通过Java Web Start的方式发布到服务器端,通过JNLP运行相对来说第二种方式可能更好一些,免除了更新的麻烦。用applet或者j...原创 2010-09-15 16:14:07 · 347 阅读 · 0 评论 -
ButtonGroup在swing中的应用
swing中使用ButtonGroup: public class ButtonGroupTest { public static void main(String[] args) { JFrame frame = new JFrame(); frame.setDefaultCloseOperation(3); JRadi...原创 2010-09-17 15:31:13 · 523 阅读 · 0 评论 -
GridBagLayout布局管理器
GridBagLayout 类是一个灵活的布局管理器,它不要求组件的大小相同即可将组件垂直和水平对齐。 * 每个 GridBagLayout 对象维持一个动态的矩形单元网格,每个组件占用一个或多个这样的单元,称为 显示区域。 * 每个由 GridBagLayout 管理的组件都与 GridBagConstraints 的实例相关联。 * Constraints 对象指定组件在网格中的显示区...原创 2010-09-17 15:41:28 · 116 阅读 · 0 评论 -
Java数组的一些方法
Java数组的一些方法public class TestArray { public static void main(String args[]){ int temp[] = {1,3,5} ; // 利用静态初始化方式定义数组 fun(temp) ; // 传递数组 for(int i=0;i<temp.length;i++){ System....2010-04-17 15:23:23 · 106 阅读 · 0 评论 -
java静态方法调用
public class TestMethod{ public static void main(String args[]){ printInfo() ; // 调用printInfo()方法 printInfo() ; // 调用printInfo()方法 printInfo() ; // 调用printInfo()方法 System.out.println(...2010-04-17 15:12:31 · 433 阅读 · 0 评论 -
java条件分支语句
java条件分支语句public class Test{ public static void main(String args[]){ for(int i=0;i<10;i++){ //break的使用,跳出循环 if(i==3){ break ; } System.out.println("i = " + i) ; }...2010-04-16 20:35:37 · 641 阅读 · 0 评论 -
Java运算符、表达式与语句
Java运算符、表达式与语句public class Test{ public static void main(String args[]){ int num = 22 ; System.out.println("第一次输出:num = " + num) ; num = num - 3 ; // 修改变量内容 System.out.println("第二次输出:n...2010-04-16 20:14:59 · 127 阅读 · 0 评论