摘要: 学过hibernate的人都可能都知道hibernate有三种状态,transient(瞬时状态),persistent(持久化状态)以及detached(离线状态),大家伙也许也知道这三者之间的区别,比如瞬时状态就是刚new出来一个对象,还没有被保存到数据库中,持久化状态就是已经被保存到数据库中,... 阅读全文
posted @ 2015-05-30 23:20 cornucopia 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 我们应该拒绝SQL(或HQL)的拼装,应该永远不要编写这样的代码,有这很严重的安全问题,众所周知的SQL注入。我们可以考虑参数绑定,在hibernate中它有两种方式。1.具名参数利用具名参数的例子:[java]view plaincopyString queryString ="from Item... 阅读全文
posted @ 2015-05-30 15:33 cornucopia 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 1.查询对象:Query有org.hibernate.query和javax.persistence.query,用法如下如果按条件查找2.占位符:比如下面的例子:min 和:max,和query.setParameter(key,value);链式的也可以,同时这里setParameter("",... 阅读全文
posted @ 2015-05-30 11:44 cornucopia 阅读(325) 评论(0) 推荐(0) 编辑
摘要: 首先,ThreadLocal 不是用来解决共享对象的多线程访问问题的,一般情况下,通过ThreadLocal.set() 到线程中的对象是该线程自己使用的对象,其他线程是不需要访问的,也访问不到的。各个线程中访问的是不同的对象。另外,说ThreadLocal使得各线程能够保持各自独立的一个对象,并不... 阅读全文
posted @ 2015-05-30 08:26 cornucopia 阅读(158) 评论(0) 推荐(0) 编辑