2012年3月20日

摘要: 转载自:http://www.4ucode.com/Study/Topic/1161684网上的JAVA面试题经常有两个String 字符串相加没有 StringBuffer.append();速度高但是很少有说明原因的。所以自己做了个小测试源代码1 public class TestMain {public static void main(String[] args) { String test1="测试测试1"; String test2="测试测试2"; String test3=test1+test2; System.out.println(t 阅读全文
posted @ 2012-03-20 15:38 anuo_ruibo 阅读(509) 评论(0) 推荐(0)
摘要: 1.输入参数一般而言,传递给update的对象要是处于游离状态的对象。如果传一个持久化对象,那么update方法就是多余的,因为Hibernate的脏检查机制会自动根据对象属性值的变化向数据库发送一条update语句;如果传入的对象处于临时状态,那么此时Hibernate应该会抛出异常。因为Hibernate在更新数据时会根据对象的OID去数据库查找相应的记录并更新之,而在数据库中是没有记录与这个临时对象相关联的,因此Hibernate会抛出异常,当然如果你人为的给临时对象指定一个OID就该另当别论了,如下所示代码片段:Customer customer=new Customer();cust 阅读全文
posted @ 2012-03-20 14:50 anuo_ruibo 阅读(533) 评论(0) 推荐(0)
摘要: Session.load/get方法均可以根据指定的实体类和id从数据库读取记录,并返回与之对应的实体对象。其区别在于:如果未能发现符合条件的记录,get方法返回null,而load方法会抛出一个ObjectNotFoundException。Load方法可返回实体的代理类实例,而get方法永远直接返回实体类。load方法可以充分利用内部缓存和二级缓存中的现有数据,而get方法则仅仅在内部缓存中进行数据查找,如没有发现对应数据,将越过二级缓存,直接调用SQL完成数据读取。Session在加载实体对象时,将经过的过程:首先,Hibernate中维持了两级缓存。第一级缓存由Session实例维护, 阅读全文
posted @ 2012-03-20 14:48 anuo_ruibo 阅读(282) 评论(0) 推荐(0)

导航