2006年4月26日

通过运用hibernate Interceptor(拦截器) 发现,在改变一个持久对象以后,hibernate 就会进行脏数据检测.这时执行 Interceptor 的findDirty()方法.在执行select 时也会执行session.flush(),也叫同步内存(自己理解),这时就调用Interceptor的onFlushDirty()方法,(同步数据库对象,但没有保存,直到执行Transaction.commit() ) .

session.flush() 在执行select  ,Transaction.commit() 时执行.
posted @ 2006-10-20 11:22 张春利 阅读(1851) | 评论 (0)编辑 收藏
 
1、Iterator可以删除元素,而Enumeration不能;
2、Vertor可以线程同步,安全,但效率较低,而ArrayList不同步,效率高,使用ArrayList创建一个大小固定的List,运行比其他的list要快;
3、List是一个能包含重复元素的已排序的Collection,有时也称序列。和数组一样,都基于0开始的。
List接口是由Arraylist类,LinkedList类和Vector类实现的;.
Collections类是用来操纵List的,有reverse,fill,copy,max,min,binarySearch等等方法.
4、Set是没有重复元素的,集合框架含有set的两种实现:HashSet和TreeSet。
HashSet把它的元素存储在哈希表中,TreeSet把它的元素存储在树中。可以使用HashSet从ArrayList删除重复
5、Map把键和值联系起来,不包含重复的键(每一个键只能映射到一个值,即是一对一的关系,这称为一对一关系)。Map和Set的不同之处在于Map包含键和值,而Set只包含键。HaspMap 类和TreeMap类实现了Map接口. HashMap把它的元素存储在哈希表中,TreeMap把它的元素存储在树中。
posted @ 2006-08-11 13:47 张春利 阅读(188) | 评论 (0)编辑 收藏
 
http://www.lwcj.com/pages/hr.asp

http://www.2020china.com/jgzp.asp
posted @ 2006-08-07 14:28 张春利 阅读(204) | 评论 (0)编辑 收藏
 
CompareToBuilder,EqualsBuilder,ToStringBuilder 很好用
																						

在编码过程中,我们可能经常用到两个对象比较,将对象中的元素 转化成字符串等等。现在这些工作已经有相应的包了

import org.apache.commons.lang.builder.CompareToBuilder
import org.apache.commons.lang.builder.EqualsBuilder
import org.apache.commons.lang.builder.HashCodeBuilder
import org.apache.commons.lang.builder.ToStringBuilder

class LavaLamp implements Comparable{
@Property model
@Property baseColor
@Property liquidColor
@Property lavaColor

def String toString() {
   return new ToStringBuilder(this).
       append(this.model).
    append(this.baseColor).
    append(this.liquidColor).
    append(this.lavaColor).
    toString()
}

def boolean equals(obj) {
     if (!(obj instanceof LavaLamp)) {
        return false
     }
     LavaLamp rhs = (LavaLamp) obj
        return new EqualsBuilder().
            append(this.model, rhs.model).
            append(this.baseColor, rhs.baseColor).
            append(this.liquidColor, rhs.liquidColor).
            append(this.lavaColor,rhs.lavaColor).isEquals()
  } 
  def int compareTo(obj) {
     LavaLamp lmp = (LavaLamp)obj
        return new CompareToBuilder().
            append(lmp.model, this.model).append(lmp.lavaColor, this.lavaColor).append(lmp.baseColor, this.baseColor).
            append(lmp.liquidColor, this.liquidColor).
            toComparison()
  }
}

posted @ 2006-04-26 11:24 张春利 阅读(664) | 评论 (0)编辑 收藏