简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
前不久才了解到一个问题,JVM虚拟机的默认内存使用大小为64MB,也就是你不更改的话,他的JVM内存使用大小就是64MB,如果超出这个内存使用限度,就会报java head space错误,下面贴上代码 package com.bird.xml;public class
在对象序列化的时候,有些变量比如密码等等,你需希望他去序列化,否则别人就可以通过字节流来回复数据得到你的private的数据,这样是一个很危险的问题,下面使用关键字Transient 来解决这个问题,他的意思就是不需要虚拟机去序列化这个变量,我会自己去处理 package com.bird.thinking;import java.io.FileInputStream;import
众所周知,在JDBC创建或者使用的过程中,第一步创建连接是最复杂的也是最耗费时间的,因为它是一个网络操作,需要不断的去尝试连接地址,所以建立好一个连接以后仅仅发送少量的sql语句就将其关闭是很不划算的,所以这就诞生了连接池这个概念。所谓的连接池就是将多个创建好的连接放入到一个容器中,当使用的时候就从这个容器中取出来连接,使用完成之后再把这个连接放回到容器中去,这样就完成了连接的复用,这
对于JSP中的容器,进行迭代的方法最好就是使用标签,当然,SUN提供了JSTL标签库,但是我打算自己开发这个标签。首先得考虑对于单关键字容器和多关键字容器,分别对应Collection 和Map,然后还有数组还有特殊的八种基本数据类型,这八个基本数据类型因为不是对象所有需要特殊对待。我们使用的方法是是使用反射技术,反射包里面的Array提供了对于所有的数组元素的操作。下面还是先是实现标签的
在并发编程中,会经常遇到使用容器。但是如果一个容器不是线程安全的,那么他在多线程的插入或者删除的过程中就会出现各种问题,就是不同步的问题。所以JDK提供了线程安全的容器,他能保证容器在多线程的情况下安全的插入和删除。当然,线程安全的容器分为两种,第一种为非阻塞似的,非阻塞的意思是当请求一个容器为空或者这个请求不能执行的时候,就会报出异常,第二种阻塞的意思是,不能执行的命令不会报出异常,
在制作网页的时候,很多情况下会遇到需要某一个文字或者图片像广告那样水平或者垂直的滚动,这样的效果JavaScript可以制作,但是比较麻烦,直接看那些代码会感觉到非常的复杂。这里我们来介绍一种简单的方式实现这样效果,他就是HTML标签中的marquee,他其实是一个容器标签。该标签不是HTML3.2的一部分,并且只支持MSIE3以后内核,所以如果你使用非IE内核浏览器(如:Netsca
前面我们已经学习了使用ThreadPoolExecutor类来实现自动创建和运行线程。但是na'xie
以前我们创建线程的时候都是主动的new一个Thread,然后调用他们的start方法,但是如果线程非常多,任务也非常多的时候,这样写就会显得非常麻烦,当然可能效率也不是很高,Java给我们提供了叫线程创建器这个样概念的类,他可以帮助我们管理这些线程,你做的就是编写好代码,然后交给他,她就会自动帮你运行。当然,带cache的threadpool 对于死掉的线程重新调用,在性能上也会有非常
在顶目中无意中碰到PreparedStatement 在存DB时出现乱码,困扰了好久终于解决问题问题代码如下pstmt = con.prepareStatement(INSERT_OFFLINE);pstmt.setString(1, username);pstmt.setLong(2, messageID);