Java进阶
惊变二十八天
这个作者很懒,什么都没留下…
展开
-
引用 使用JDBC时Class.forName()的作用
使用JDBC时,我们都会很自然得使用下列语句:为什么说很自然呢,因为无论是网上还是书本教程上得例子都是这样的,而且程序也确实正常运行了,于是大家也就心安理得的找葫芦画瓢下去了。 一定要有这一句吗?不是的,我们完全可以用这样一句代替它:1com.mysql.jdbc.Driver driver = new com.mysql.jdbc.Driver();2//or:3//new com.mysql.原创 2009-12-14 08:26:00 · 626 阅读 · 0 评论 -
JAVA IO 输入流 输出流 笔记(二)
一.I/O 流(java 如何实现与外界数据的交流) 流定义: 任何有能力产出数据的数据源对象或者有能力接收数据的数据源对象。他屏蔽了实际的I/O设备处理数据的细节。1.Input/Output:指跨越出了JVM 的边界,与外界数据的源头或者目标数据源进行数据交换,这正因为跨出了JVM的边界,所以要我们手动来关闭close()2.流的分类: 按流向分为:输入流和输原创 2012-12-21 14:23:26 · 8222 阅读 · 1 评论 -
JAVA IO 输入流 输出流笔记(一)
IO负责数据的传递,也是最容易形成瓶颈的一环,使用IO的情况有很多,大致分为以下几部分: ·字节操作(InputStream、OutputStream) ·字符操作(Writer、Reader) `磁盘操作 ·控制台操作 ·网络操作 socket (此类不在java.io包下面)影响IO操作原创 2012-12-21 12:25:14 · 9090 阅读 · 0 评论 -
java.io 序列化 总结(一)---Serializable 和 Externalizable 的区别与联系
我们可以通过序列化来保存一个对象的状态(实例变量)到文件中,也可以从这个格式化的文件中很容易地读取对象的状态从而可以恢复我们保存的对象。对象序列化就是把对象写入到输出流中,用来存储或者传输。对象的反序列化就是从输入流中读取对象。 用来实现序列化的类都在java.io包中,我们常用的类或接口有: ObjectOutputStream:提原创 2012-12-26 16:24:07 · 6233 阅读 · 0 评论 -
代码优化
1、if(1101=obj.getId())这种方式是没有错的,但是考虑到版本问题,建议拆开 先获得id 再去比较2、能使用==对字符串进行比较的地方就不要用equal 前者快, 为了能使用==,有时要将str用intern()加入到驻留池中 如下返回true String str1= new String("abc").intern() String str2="ab原创 2012-04-10 13:44:36 · 902 阅读 · 0 评论 -
优化---集合优化
1、iterator如果集合中元素未进行排序,那么获得元素规则是不定的,不一定按照元素加入的顺序2、Arraylist有get()方法,所以按位置查询速度快,但是插入慢,而LinkedList插入快,查询慢如果你知道Arraylist将会很大,应ensureCapacity()初始化容量,来提高性能3、TreeSet与hashSet相比,TreeSet是可以排序的,有序树,原创 2012-04-10 13:46:27 · 608 阅读 · 0 评论 -
优化---JDBC优化
-------------------------优化statement----------------------一、使用恰当的statement接口1、在新建statement传参的时候可以指定其将产生的resultset类型是并发只读的等效率会更高2、三种接口 statementstatement每次都编译preparedstatement 有in的sql 只编译一次原创 2012-04-10 13:48:45 · 749 阅读 · 0 评论 -
优化---数组优化
1、数组复制 最高效: system.arraycopy(srcArray,srcPosition,desArray,desPosition,length) 复制数组还有Arrays.copyOf(src,length)生成一个新数组; Arrays.copyOfRange(src,from ,to)2、数组元素查找 如果数组是按升序排列的话,使用Arrays.原创 2012-04-10 13:45:36 · 1334 阅读 · 0 评论 -
PrepareCall() 执行存储过程
<br />原文地址:http://hi.baidu.com/lookxj527/blog/item/82e2d4cbaa5ee041f21fe7d4.html CallableStatement 对象为所有的 DBMS 提供了一种以标准形式调用已储存过程的方法。已储存过程储存在数据库中。对已储存过程的调用是 CallableStatement对象所含的内容。这种调用是用一种换码语法来写的,有两种形式:一种形式带结果参,另一种形式不带结果参数。结果参数是一种输出 (OUT) 参数,是已储存过程的返回值。两种转载 2010-09-17 11:46:00 · 3517 阅读 · 0 评论 -
java.nio NIO原理和使用
Java NIO非堵塞应用通常适用用在I/O读写等方面,我们知道,系统运行的性能瓶颈通常在I/O读写,包括对端口和文件的操作上,过去,在打开一个I/O通道后,read()将一直等待在端口一边读取字节内容,如果没有内容进来,read()也是傻傻的等,这会影响我们程序继续做其他事情,那么改进做法就是开设线程,让线程去等待,但是这样做也是相当耗费资源的。Java NIO非堵塞技术实际是采取React原创 2012-12-30 18:04:42 · 981 阅读 · 0 评论