Java
iteye_5372
这个作者很懒,什么都没留下…
展开
-
Direct vs non-direct ByteBuffer
转载于:http://crmky.spaces.live.com/Blog/cns!8C989768DB1A6B14!458.entry?sa=254330365 这两种类型的ByteBuffer相信大家都知道,但是两者的区别在什么地方呢?在不同的环境下采用哪种类型的ByteBuffer会更有效率呢? 先解释一下两者的区别: Non-direct ByteBuffer内存是分配在堆上的,直接由J...原创 2008-12-24 16:38:39 · 81 阅读 · 0 评论 -
Java运行时内存模型(转)
Java在运行时,可以根据声明周期大致把内存分为两部分:与JVM声明周期一致的内存,与线程生命周期一致的内存。根据Java虚拟机规范第二版,Java在运行时内存可以分为以下6个部分: PC计数器 栈 堆 方法区 运行时常量池 本地方法栈 PC计数器 每个线程都有自己的PC计数器。在不是本地方法的时候,PC计数器始终记着下一条需要执行的指令。在执行本地方法的时候,PC计数器里...原创 2010-07-21 21:44:25 · 84 阅读 · 0 评论 -
The Live API
The Live API Live API构建于Manager API之上,提供额外的抽象。与直接使用actions和events与Asterisk互动不同,它使用动态域对象(live Objects)代替Asterisk中的概念如:channel、extension。live objects的行为遵循了Sun JavaBeans的规范。 示例可查看:http://a...原创 2010-12-17 14:36:59 · 86 阅读 · 0 评论 -
JSTL使用技巧
用EL表达式获得集合的长度 长度函数fn:length的出现有重要的意义。在JSTL1.1中,有一个功能被忽略了,那就是对集合的长度取值。虽然java.util.Collection接口定义了size方法,但是该方法不是一个标准的JavaBean属性方法(没有get,set方法),因此,无法通过EL表达式" ${collection.size} "来轻松取得。fn:length函数正是为了解决...2008-11-19 17:05:15 · 80 阅读 · 0 评论 -
无语的double精度问题
Double c = 18000000000000000D + 10; Double d = 18100000000000000D + 10; System.out.println(c.longValue()); System.out.println(d.longValue()); 如上代码,将输出奇怪的结果,对Java 的double和float不抱希望了。而Math.po...2009-07-13 17:27:10 · 63 阅读 · 0 评论 -
文件处理中发现JDK的BUG
该BUG是在一次删除WINDOWS下超长路径的时候发现的,JDK版本为1.4.2,当路径长到一定程度时,java.io.File中的exists()方法将失效,同时其他读取文件属性的方法如canRead(),canWrite(),isFile(),isDirectory()都将失效,最终导致文件处理的异常! 解决办法:升级JDK版本到1.5.0...2009-07-10 17:33:46 · 103 阅读 · 0 评论 -
The entity "nbsp" was referenced, but not declared.
问题 使用xhtmlrenderer将网页转成PDF时报The entity "nbsp" was referenced, but not declared.异常;而某些页面却是正常。这个问题是页面中包含了 导致的,而这个标记在页面中使用是很正常且频繁了。 原因 该问题是由于未定义HTML的DOCTYPE,致使SAX将内容按照xml默认定义进行解...2009-12-09 10:36:54 · 661 阅读 · 0 评论 -
Hibernate中ordinal parameter mismatch的BUG
问题 最近在调整hql语句时,发生一个莫名其妙的问题,hql语句如下:"from Bill where dataDate?=? and callerNumber like ?”;如此简单的一条语句,在执行时却报了一个“ordinal parameter mismatch;”异常。奇哉怪哉,把callerNumber条件放到最前面却是好的:“from Bill where callerNumber...2009-11-23 10:46:35 · 101 阅读 · 0 评论 -
Using non-qualified column reference
在hibernate中使用HQL直接对数据库进行update、save、delete操作时,日志中会输出: org.hibernate.hql.ast.tree.FromElementType -164767 [http-8080-Processor72] WARN - Using non-qualified column reference 的警告信息。该警告实乃Hibernate-...2009-04-02 17:11:52 · 165 阅读 · 0 评论 -
Java中的位处理(bitsValue)
在做网络协议的时候,为了节省流量,通常会把一些简短的业务数据整合到一个字节中,以二进制形式用1位或几位表示。如6、7位代表valueA,而第5位到第3位代表valueB,剩下3位代表valueC。如何在Java中有效的提取出需要的数据呢? Java中的基础数据类型和包装类型中都没有bit这个对象,因为Java中拥有位运算符,通过组合这些运算符即可实现位操作。然而位提取却不那...2009-03-04 14:03:37 · 343 阅读 · 0 评论 -
基于springmodules的缓存方案
简介 通常在系统开发中,必不可少的要使用到缓存(Cache),如用户信息、字典信息都会使用缓存来提高性能;但是如何使用好缓存是个需要深入研究的话题,缓存方案没有通用性,针对不同的应用层面,缓存的设计通常也是千差万别的!这里只是介绍了一种比较轻量级、无侵入的缓存方案,该方案基于Spring+SpringModules。 目的 方法级别的缓存 声明式、无侵入 不绑定缓存框架 J...2009-01-04 15:01:14 · 79 阅读 · 0 评论 -
应用级自增ID的生成
背景:以前一直使用数据库的自增ID作为数据表的主键,ID的唯一性由数据库控制,在传统单机系统环境下,该方式一直是比较主流的方案。然而特定情况下,需要在插入数据前就获得记录的ID,对以该ID为基础做一些业务处理(如生成唯一业务编码),这就需要在应用层面由程序控制来生成该ID。虽然应用程序可以根据时间,机器MAC,随机数等一些因子来生成ID,或者直接使用UUID;但这些方案生成的ID长度均较大,无法...2013-07-05 12:50:19 · 296 阅读 · 0 评论