
Java
iteye_3179
这个作者很懒,什么都没留下…
展开
-
一个 Java SE 7 Fork/Join 的小例子
使用 Java SE 7 Fork/Join 的关键是要是 fork 出来的任务数与处理器的数量和谐统一 :D,否则就会适得其反。原创 2012-12-30 17:48:03 · 211 阅读 · 0 评论 -
Java Classloader
看了 IBM developerWorks 上的“深入探讨 Java 类加载器”后小结下:系统提供的 Classloader 主要有三种:Bootstrap Classloader、Extensions Classloader 和 System Classloader。Bootstrap Classloader 用来加载 Java 核心类库;Extensions Classloader ...2010-03-09 15:48:01 · 81 阅读 · 0 评论 -
NIO 文件随机存取问题
NIO 的内存映射文件机制虽然在操作大文件上有速度的优势,但我觉得它不能真正实现文件随机。FileChannel fc = new RandomAccessFile(new File("temp.tmp"), "rw").getChannel();IntBuffer ib = fc.map(FileChannel.MapMode.READ_WRITE, 0, fc.size()).asIn...2010-03-07 20:11:44 · 213 阅读 · 0 评论 -
配置 iBatis TypeHandler 时遇到的一个问题
需要使用 iBatis 将对象序列化到一个表的 BLOB 字段中,当然还有反序列化。这就需要用到 iBatis 的 TypeHandler 功能。具体实现并不麻烦,我就不多说了。我实现的是 TypeHandlerCallback 接口,因为相对来说简单点。 在配置的时候,我先尝试了全局配置 TypeHandler。 <typeHandler javaType="xxx" jd...2010-09-30 14:49:34 · 1039 阅读 · 0 评论 -
Search OSGi Bundle
找 OSGi Bundle,到 http://repo2.maven.org/maven2/org/apache/servicemix/bundles/ 你懂的原创 2010-09-20 11:13:08 · 130 阅读 · 0 评论 -
iBatis 返回自动生成的主键的问题
想让 iBatis insert 返回生成的主键的话还要在 sql map 里面加上 <selectKey> 然后自己写上一段 sql。这个也低级了点了吧。JDBC 3 已经支持自动返回生成的主键了,iBatis 却还要这样搞,低级了了点了吧。当然不是所有的 DB Driver 都支持 JDBC3,不过支持的就自动返回生成主键就好了,不支持的再自己搞。不知 iBatis 怎么想的。...2010-09-20 11:07:20 · 149 阅读 · 0 评论 -
JBoss Envers 学习笔记
下文转自:http://www.blogjava.net/xmatthew/archive/2008/11/14/238432.html 试用JBoss Envers项目有一阵子了,趁Envers项目发布 1.1.0版,也同时把学习笔记共享给大家,希望对大家有所帮助。 下面来看一下JBoss Envers项目的目的,官方说明如下:The Envers project aims to ...原创 2008-11-14 13:02:18 · 160 阅读 · 0 评论 -
Web Beans and the EE platform
http://in.relation.to/Bloggers/WebBeansAndTheEEPlatform 上面的链接是 Gavin King 博客上关于 Web Beans 的文章,主要介绍 Web Beans 的前前后后,以及在 Web Beans 专家组中比较有争议的问题,还有一些小话题,比如 Web Beans 的命名问题 :-) 这篇文章对 Web Beans 规范倒没什么介...2008-11-11 22:48:17 · 98 阅读 · 0 评论 -
JavaServer Faces 2.0 的复合组件
下文转自:http://www.infoq.com/cn/news/2008/11/jsf20 自从JavaServer Faces于2004年首次发布后,JSF 2.0就成为Java EE标准规范的首个主要更新。JSF 2.0是JSF规范的一次重要革新,其目的在于解决开发者使用Web框架时所遇到的诸多问题。主要的变化包括:使用基于Facelets的视图技术代替JSP。提供一种标准化的资...原创 2008-11-09 10:35:14 · 180 阅读 · 0 评论 -
了解事务陷阱
读了 IBM developerWorks 上的文章:“事务策略: 了解事务陷阱”,总结一下。 在使用 Spring 的事务注释的时候,还要在配置文件中加入<tx:annotation-driven transaction-manager="transactionManager"/>使用过 Spring 的事务注释的应该都知道这一条。只读操作不用设置事务...原创 2009-08-23 12:00:31 · 101 阅读 · 0 评论 -
简单用了一下 VisualVM
原来分析程序性能用的是 YourKit(其实是别人用,自己看分析结果)。主要原因是由于 YourKit 是收费的,不是想用就能用的。后来看到网上介绍 VisualVM 的文章,自己就来试试。发现还不错。VisualVM 是 Sun JDK 自带的,6.0 版本的会有。不过最低可支持 J2SE 1.4 应用的性能分析。执行 JDK bin 目录下的 jvisualvm.exe 就能运行。BTW. W...2010-04-17 13:21:06 · 151 阅读 · 0 评论 -
在 IntelliJ IDEA 中加快 Maven 项目的单元测试编译速度
IntelliJ IDEA 是一个很棒的 IDE,它有很多 Eclipse 所没有的特性,但是其有一个缺点,就是在运行单元测试时,编译速度很慢。(我的系统是 Windows,我见别人在 Mac 下没有这个问题。。。)有时几秒钟就能搞定的事,IDEA 要花上几分钟。解决方法是使用 Maven 的编译取代 IDEA 本身的编译。在 "Run/Debug Configuration" -...2011-10-31 10:03:49 · 998 阅读 · 0 评论 -
SLF4J 与 Log4J,以及何时使用 isDebugEnabled 判断
之前一篇关于 SLF4J 和 Log4J 的文章有不当之处,SLF4J 虽然避免了 Log4J 的字符串拼接问题,但是除非复杂的字符串拼接,否则使用 SLF4J 不会给你带来任何性能上的好处(我写了个小程序,有数据才有说服力)。当然 SLF4J + Logback 另当别论。使用 SLF4J 的主要目的是替代 Apache Common Logging,后者在 OSGi 环境中会有问题(从另一篇博...2011-10-28 09:25:28 · 774 阅读 · 0 评论 -
新技术介绍:Hades and Spring Data
RecentlyI read some articles about Hades and Spring Data. I think it is worth to share.The link of articles are following:Hades——JPA的开源实现: http://www.infoq.com/cn/articles/hades_jpa_repositor...2011-02-16 09:43:11 · 208 阅读 · 0 评论 -
JAXB unmarshall
在使用 JAXB 将 XML umarshall 为 JavaBean 的时候,XML 文件的 root 节点将 xmlns 定为和对应 XML Schema 中 namespace 相同的值。2011-02-09 15:31:21 · 130 阅读 · 0 评论 -
使用 Felix Maven Bundle 插件将 Jar 包打入到 OSGi bundle 中
在开发 OSGi bundle 时,如果你的 Bundle 所依赖的某个 Jar 并不是一个 OSGi bundle(可以通过 MANIFEST.MF)文件看出来)。有一些解决方法: 将这个 Jar 包的 MANIFEST.MF 文件修改为符合 OSGi 规范的格式。这个工作可以手工做。(网上的使用 Eclipse 完成这个工作的方法我没有成功。成功者可告诉我方法)将 Jar 包打入...2010-06-28 14:34:34 · 612 阅读 · 0 评论 -
总结使用 SericeMix 遇到的问题
现在的项目使用 ServiceMix 作为运行环境,由于之前没有 OSGi 的经验,所以在使用过程中碰到了很多钉子,在这里总结一下:在 start 一个 bundle 时报出这样的错:XXX bundle could not be resolved. Reason: Missing constraint: Import-package: XXX。直接的原因当然是你要 impo...2010-06-27 16:37:26 · 159 阅读 · 0 评论 -
The reason of ServiceMix cannot start up after install CollabNet Subversion Edge
What's the problem?Today I found ServiceMix on 74 cannot start up. Before this, I also found ServiceMix on 108 also cannot start up. Finally, I found the reason is from install CollabNet Subvers...2011-09-08 14:40:49 · 150 阅读 · 0 评论 -
[转] 高扩展WEB应用HTTP SESSION共享方案
www.yeeach.com/2010/03/27/高扩展web应用http-session共享方案/2010-04-21 21:09:01 · 96 阅读 · 0 评论 -
My Top List of Java Tools
一篇介绍 Java 工具包的文章,转自:http://java.dzone.com/articles/my-top-list-java-tools原创 2008-11-01 18:41:47 · 155 阅读 · 0 评论 -
简单看了看 Exadel Fiji
前几天在 DZone 上看了一篇介绍使用 Exadel Fiji 去整合 JSF 和 Flex 的文章。因为 JSF 和 Flex 都是很有前途的技术,所以对 Exadel Fiji 也较为看好。但是读完文章后发现 Fiji 的一些问题。虽然使用 Fiji 为 JSF 添加 Flex 图表功能比较方便简单,但是如果想在 JSF 中整合 Flex 的表单就比较麻烦了。除了要在 JSF 中加入一些 ...2008-10-29 14:22:22 · 174 阅读 · 0 评论 -
LambdaJ
Lambda = λLambdaJ 的主要目的是简化对集合的操作。下面的代码展示了 LambdaJ 是如何简化的:[code="java"]List personInFamily = asList(new Person("Domenico"), new Person("Mario"), new Person("Irma"));forEach(personInFamily).se...2009-06-23 15:21:57 · 219 阅读 · 0 评论 -
Java Web 的 Security Constraint 配置
原来知道 Java Web 应用的 DD 中的 配置,但是并没有真正配置过。昨天下午试着配了一下,发现问题还是有一些的。说一下两个需要注意的问题:[list=1][*] 的子元素 是可选的,如果没有 元素,这表示将禁止所有 HTTP 方法访问相应的资源。[*] 子元素 需要和 相配合使用,但可以被单独使用。如果没有 子元素,这表明任何身份的用户都可以访问相应的资源...2008-05-30 10:58:50 · 527 阅读 · 0 评论 -
将 Seam Messages 示例转移到 MySQL 时遇到的问题
最近本人正在将 Seam 中提供的示例重写一遍,以锻炼实际编写 Seam 应用的能力。在将 Seam 提供的 Messages 示例重写的时候遇到了问题。Messages 示例原本使用的是 HSQLDB,在我转移到 MySQL 的时候,程序始终无法正常原因,经过了两天的调试,终于发现了原因。原来 Messages 中的 EntityBean "Message" 有个字段名为 "Read",...2008-05-24 18:49:02 · 91 阅读 · 0 评论 -
推荐三篇关于 Seam 的文章
[url=http://www.ibm.com/developerworks/cn/java/j-seam/]Seam - 无缝集成 JSF[/url][url=http://www.javaworld.com/javaworld/jw-04-2008/jw-04-spring-seam.html]Spring into Seam, Part 1: Build a Spring-Seam hy...2008-05-21 18:10:43 · 88 阅读 · 0 评论 -
enum 的那点事
[list=1][*]enum 能够让你摆脱掉大部分的“public static final”变量声明[*]通常,你只需要用到 enum 的基本功能[*]enum 是 class,所以也可以有方法,也可以实现接口[*]enum 如此简单:[code="java"]public enum Grade { A, B, C, INCOMPLETE}[/code]...2008-05-12 18:46:13 · 97 阅读 · 0 评论 -
[转]ArrayList Vector LinkedList 区别与用法
[url=http://www.cnblogs.com/mgod/archive/2007/08/05/844011.html]ArrayList Vector LinkedList 区别与用法[/url]2008-05-11 17:45:53 · 80 阅读 · 0 评论 -
也谈 EJB 3.1 的新特性
看了 kyo100900 翻译的《EJB 3.1 真的来了吗?》之后,我也凑个热闹,谈谈 EJB 3.1 的新特性。 1. 可选的 EJB 接口: 记得刚开始学 EJB 的时候,被 EJB 的接口概念搞得很晕。最不好的是要写一个 Session EJB 就要写一对的接口。在 EJB 3.0 中,我们虽然可以通过 Annotation 简化 EJB 业务接口的声明,但是我...2008-03-23 13:13:14 · 123 阅读 · 0 评论 -
Eclipse 中的 Ant 自动运行
这段时间在学 Seam。Seam 有一个非常方便的代码生成工具 seam-gen。在将用 seam-gen 生成的代码导入 Eclipse 项目之后,我发现每当我保存对源码的修改之后,Eclipse 都会执行 Ant 任务。对于我这种小菜来说,这是非常令人吃惊的现象。研究一番之后,发现其实这样很简单。要实现这样的目的无非需要两个文件:.project 和 *.launch 文件。.proj...2008-03-14 14:26:07 · 242 阅读 · 0 评论 -
关于 JPA Annotation 的两点心得
第一,注释的继承Class 的属性可以继承,但是注释就不可以了。写一个 Domain 基类,并在其中加入使用了 @Id 和 @GeneratedValue 注释的 id 属性。但在运行时,编译器报告子类缺少 identifier。如果在子类中加入 id 属性(这是需要在基类中去掉 id 属性),这时程序就会运行成功。我在 Spring 的 Samples 中也发现每个 Domain 类都有 i...2008-02-29 17:54:34 · 125 阅读 · 0 评论 -
EJB 3.0 与 Seam-managed Persistence Context
本文将简单谈谈我对 EJB 3.0 的两种 Persistence Context 和 Seam-managed Persistence Context 的不同点的理解、所要解决的问题和我自己所疑惑的问题。EJB 3.0 (JPA) 的 Persistence Context 大家在使用 EJB 3.0 的时候会注意到 EJB 3.0 中的容器管理 Persis...2008-06-02 18:21:43 · 139 阅读 · 0 评论 -
Java EE 应用中的事务
事务是企业应用开发中的重要概念,对于部分 Web 应用,事务也是非常重要的(试想一下,如果没有事务,ATM 和网银的操作将会使多么的危险)。下面我就对 Java EE 应用中各种事务技术做一个简介。数据库: 无论 Java EE 中采用了何种的事务技术,归根结底都是基于数据库的事务。不论是本地事务,还是分布式事务,都必须有数据库的支持...2008-06-11 17:55:03 · 93 阅读 · 0 评论 -
Introduction to Open Terracotta 段落总结
最近一段时间我在学习 Terracotta,一种 JVM 级的集群化技术。infoQ 上的<<introduction to="" open="" terracotta="">> 是一篇简要介绍 Terracotta 技术原理和应用的文章,适合大家为了解 Terracotta 而去阅读。为了能更好的理解这篇文章,也希望能够对大家了解 Terracotta 有所帮助,下面我将...2007-11-15 10:30:20 · 115 阅读 · 0 评论 -
常用 Hibernate 方法比较
update() 与 merge()update() 与 merge() 的功能是相同的,都是持久化 Detached 状态的对象。但如果当前 Session 中存在两个或两个以上的,持久化标示相同的对象的话,update() 操作是会抛出异常的。而 merge() 会合并你对持久化对象的改动。除了上面一点 merge() 与 update() 不同外,merge() 可以被看做是 saveO...2007-10-15 16:24:45 · 92 阅读 · 0 评论 -
常用 JPA Annotation [转]
TableTable用来定义entity主表的name,catalog,schema等属性。元数据属性说明: name: 表名 catalog: 对应关系数据库中的catalog schema:对应关系数据库中的schema UniqueConstraints:定义一个UniqueConstraint数组,指定需要建唯一约束的列 @...2007-10-15 14:15:43 · 104 阅读 · 0 评论 -
关于数据库已死这个话题,谈谈我的看法
[url=http://www.jdon.com/artichect/dbdead.htm]原文:数据库已死[/url]这是 Jdon 作者写的一篇文章,十一无事,读了这篇文章。下面谈谈我的看法。此文章最基本的一个思想就是说数据库现在已经成为网络应用和企业应用发展的一个瓶颈,MySpace便是一个例子。要改变这个现状,就要改变以数据库作为应用中心的结构,转而使用 Java EE 中...2008-10-04 21:56:47 · 106 阅读 · 0 评论 -
Tomcat6 使用 NIO
[b]昨天看了一篇使用 Jetty6 和 DWR 实现 Comet 的文章。因为 Jetty6 使用了 NIO,所以看了看关于 NIO 的文章。自然,和多数人一样产生了关于在使用 NIO 之后 ThreadLocal 是否还能正常工作的问题。下面这篇文章对这个问题有一个简单的解释,虽然不是很详细,但也可以参考一下。[/b]转自:[url=http://tech.it168.com/...原创 2008-10-01 21:13:54 · 296 阅读 · 0 评论 -
Debug Maven with NetBeans
转载自:http://macyou.yo2.cn/articles/debug-maven-with-netbeans.html 新版本的Maven(2.0.8+)debug的时候不用再手动的去设置MAVEN_OPTS,直接使用mvnDebug代替mvn执行。 例如 mvnDebug jetty:run 然后就可以在Netbeans里面使用Run(Debug)->Attach ...原创 2008-09-12 13:30:13 · 155 阅读 · 0 评论 -
由 Spring Security 引起的 Maven Site 命令异常
用过 Maven 的朋友都知道其 site 命令。昨天在使用 mvn site 命令是发现这样的错误 The repository url 'http://s3.amazonaws.com/maven.springframework.org/release' is invalid - Repository 'spring-release' will be blacklisted. 这直接导...2008-09-08 10:37:20 · 123 阅读 · 0 评论 -
错误地理解了 Boolean.parseBoolean 的用法
写程序,用到了 Boolean.parseBoolean 方法,将其误解。原因:误以为 Boolean.parseBoolean("true")==true,Boolean.parseBoolean("false")==false,Boolean.parseBoolean("other") Exception。In fact,Boolean.parseBoolean("true")==true,B...原创 2009-03-05 10:35:16 · 2545 阅读 · 0 评论