摘要: 这篇随笔将会记录hql的常用的查询语句,为日后查看提供便利。 在这里通过定义了三个类,Special、Classroom、Student来做测试,Special与Classroom是一对多,Classroom与Student是一对多的关系,这里仅仅贴出这三个bean的属性代码: Special类: 阅读全文
posted @ 2017-08-03 17:50 戏子人生 阅读(1229) 评论(0) 推荐(0) 编辑
摘要: 在我们的hibernate中,除了我们常用的HQL查询以外,还非常好的支持了原生的SQL查询,那么我们既然使用了hibernate,为什么不都采用hibernate推荐的HQL查询语句呢?这是因为HQL查询语句虽然方便我们查询,但是基于HQL的查询会将查询出来的对象保存到hibernate的缓存当中 阅读全文
posted @ 2017-08-03 17:20 戏子人生 阅读(2665) 评论(0) 推荐(0) 编辑
摘要: 在本篇随笔里将会分析一下hibernate的缓存机制,包括一级缓存(session级别)、二级缓存(sessionFactory级别)以及查询缓存,当然还要讨论下我们的N+1的问题。 随笔虽长,但我相信看完的朋友绝对能对hibernate的 N+1问题以及缓存有更深的了解。 一、N+1问题 首先我们 阅读全文
posted @ 2017-08-03 17:00 戏子人生 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 一、什么是数据库连接池? 官方:数据库连接池(Connection pooling)是程序启动时建立足够的数据库连接,并将这些连接组成一个连接池,由程序动态地对池中的连接进行申请,使用,释放。个人理解:创建数据库连接是一个很耗时的操作,也容易对数据库造成安全隐患。所以,在程序初始化的时候,集中创建多 阅读全文
posted @ 2017-08-03 12:29 戏子人生 阅读(428) 评论(0) 推荐(0) 编辑
摘要: hibernate 中createQuery与createSQLQuery两者区别是:前者用的hql语句进行查询,后者可以用sql语句查询前者以hibernate生成的Bean为对象装入list返回后者则是以对象数组进行存储 比如我们在获得session后: createQuery: try{ Se 阅读全文
posted @ 2017-08-03 10:20 戏子人生 阅读(4775) 评论(0) 推荐(0) 编辑