一.配置数据库连接池: 1.使用默认的数据库连接池: Hibernate提供了默认了数据库连接池,它的实现类为DriverManegerConnectionProvider,如果在Hibernate的配置文件中没有明确配置任何连接池,Hibernate就会使用这个默认的连接池. 注意:在开发正式的商业软件产品时,不能使用这个连接池,因为它不是成熟的专业连接池产品,缺乏响应大批量并发请求及荣错的能力. 2.使用配置文件指定的数据库连接池: hibernate.properties配置C3P0连接池…
一.Hibernate缓存机制简介 对于Hibernate本身来说,它的缓存主要包括三部分:session缓存(一级缓存).二级缓存.查询缓存. 1.1,session缓存 随着session的关闭而消失,load.iterator操作,会从一级缓存中查找数据,如果找不到,再到数据库里面查找.Query.list操作,如果没有配置查询缓存,将直接从数据库中获取数据. 特点:只能被当前事务访问,每个事务都有各自的缓存,缓存内的数据通常采用相互关联的对象形式.缓存的生命周期依赖于事务的生命周期,只有…
一.结构 二.Hibernate支持的UserTypes接口  UserType —You can transform values by interacting with the plain JDBC PreparedStatement (when storing data) and ResultSet (when loading data).By implementing this interface, you can also control how Hibernate caches a…
360周鸿祎反而最为开明,他说“不要抱着打工心态去工作,而是把工作当创业”,就像是,鼓励你拿着公司的工资,锻炼自己的能力,为自己以后创业积累资源和人脉(读书笔记:真是天底下最好的机会,天底下没有比工作更开心的事情了)——在这个过程中,公司也不亏,个人成长必然伴随着公司业务的发展(读书笔记:自己发挥主观能动性和能力拼命的产品做好了,公司当然成长,效果就是没有期权胜似期权). 在老周看来,只有抱着“为自己做事”的态度,才具备非一般的热情和主观能动性. 所以说,企业要成长,员工也要成长,对于核心技术.…
解决方法:自定义一个Hibernate Dialect. package com.yourcompany.util ; import java.sql.Types; import org.hibernate.Hibernate; import org.hibernate.dialect.MySQL5Dialect; public class CustomDialect extends MySQL5Dialect { public CustomDialect() { super(); regist…
声明: 1.这篇文章是原创.非复制或转载过来. 2.在本文中,参数都亲自做过实验证明. 3.这篇文章谈到了Hibernate配置基于注释的方法.hbm语法不可用. 不清JPA.Hibernate.EJB3.0的关系,这里做一下简单的说明:JPA是一个持久层设计接口.EJB3.0和Hibernate是详细的实现类.EJB3.0和Hibernate的功能近似相等的(Hibernate没有Session Bean,Spring MVC3的SessionAttribute跟Session Bean近似)…
平台:MS office 2010 任务:有个excel工作簿,其中有上百个工作表,要求把每一个工作表全部保存为新工作簿,如果一个一个复制出来太傻了,可以用excel自带的VB解决. 方法:打开工作簿,在工作表上点右键,选择“查看代码”,打开Microsoft Visual Basic for Application对话框,在菜单栏,单击“插入”—“模块”.在模块对话框中输入如下代码: Private Sub hjs() Dim sht As Worksheet Dim ThisBook As…
一.对象的持久化 狭义的理解: 持久化仅仅指把对象永久的保存到数据库中. 广义的理解: 持久化包括和数据库相关的各种操作.         保存: 把对象永久保存到数据库中.         更新: 更新数据库中对象的状态.         删除: 从数据库中删除一个对象.         查询: 根据特定的查询条件,把符合查询条件的一个或者多个对象加载到内存中.   二.ORM      ORM(Object-Relation-Mapping),对象关系映射.      ORM的思想: 将关系…
一:为什么使用Hibernate缓存: Hibernate是一个持久层框架,经常访问物理数据库. 为了降低应用程序访问物理数据库的频次,从而提高应用程序的性能. 缓存内的数据是对物理数据源的复制,应用程序在运行时从缓存中读取数据,在特定时间或事件会同步缓存和物理数据源的数据 二:什么是Hibernate缓存: Hibernate缓存分为两种:一级缓存,二级缓存. 1.一级缓存:又称为Session缓存, Session缓存是Hibernate内置的缓存,不能被卸载,生命周期也就是在open和cl…
Hibernate.cfg.xml 主配置文件中主要配置:数据库连接信息.其他参数.映射信息! 常用配置查看源码: hibernate-distribution-3.6.0.Final\project\etc\hibernate.properties   <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hiber…
前言 前面已经学过了Struts2框架了,紧接着就是学习Hibernate框架了-本博文主要讲解介绍Hibernate框架,ORM的概念和Hibernate入门 什么是Hibernate框架? Hibernate是一种ORM框架,全称为 Object_Relative DateBase-Mapping,在Java对象与关系数据库之间建立某种映射,以实现直接存取Java对象! 为什么要使用Hibernate? 既然Hibernate是关于Java对象和关系数据库之间的联系的话,也就是我们MVC中的…
配置文件可配项: 参考文档:hibernate-release-5.2.9.Final/documentation/userguide/html_single/Hibernate_User_Guide.html 1)Hibernate配置文件主要用于配置数据库连接和Hibernate运行时所需要的各种属性. hibernate.cfg.xml常用的属性: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYP…
Java为什么被人诟病,因为一切都是过度设计.Hibernate其实就是实现了一套JPA的ORM,不过用极度冗赘的配置方式,nodejs Sequelize.js,甚至Python SQLAlchemy,都比Java的实现优雅的多.当然这个是历史问题了,就没必要抱怨了. 许多时候,我们不需要用hibernate.cfg.xml,并没有程序化的简单可控. 下面开始实战. 假设使用了Maven系统,首先确认hibernate-core已经作为依赖添加到pom.xml. <dependency> &…
异常名称 org.hibernate.MappingException: Unknown entity: org.hibernate.cfg.Configuration 异常详细信息 org.hibernate.MappingException: Unknown entity: org.hibernate.cfg.Configuration at org.hibernate.internal.SessionFactoryImpl.getEntityPersister(SessionFactory…
excel如何将一个工作薄中的工作表生成独立的工作薄  '用vba代码 Sub 另存所有工作表为工作簿() Dim sht As Worksheet Application.ScreenUpdating = False ipath = ThisWorkbook.Path & "\" For Each sht In Sheets sht.Copy ActiveWorkbook.SaveAs ipath & sht.Name & ".xls" '…
功能:当前文件夹中所有Excel文件中 多个工作簿的第一个工作表 复制到工作簿中 Sub Books2Sheets() '定义对话框变量 Dim fd As FileDialog Set fd = Application.FileDialog(msoFileDialogFilePicker) '新建一个工作簿 Dim newwb As Workbook Set newwb = Workbooks.Add With fd Then '定义单个文件变量 Dim vrtSelectedItem As…
部分异常,如下 org.hibernate.MappingException: Unknown entity: com.zcd.hibernate.oneToMany.Teamat org.hibernate.internal.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:1141)at org.hibernate.internal.SessionImpl.getEntityPersister(SessionImpl.…
Hibernate加载数据 Session.get(Class clazz, Serializable id) clazz:需要加载对象的类,例如:User.class id:查询条件(实现了序列化接口的对象): 返回值: 此方法返回类型为Object,也就是对象,然后我们再强行转换为需要加载的对象就可以了. 如果数据不存在,则返回null; 注:执行此方法时立即发出查询SQL语句.加载User对象 加载数据库中存在的数据,代码如下 @Test public void testLoad() {…
前言: 最近由于有点时间,就像深入的学习一下Hibernate.之前只是简单的使用,并没领会它的妙处.这里就趁着分享的机会,好好整理一下. 这篇主要讲到了下面几个部分: Hibernate框架 Hibernate发展背景 Hibernate使用介绍 Hibernate Tools安装 Hibernate那些必要的包 首先说一下,这个Hibernate是做什么的.Hibernate官网上面罗列了它的基本框架 我们最常用的应该就是Hibernate ORM了.下面简单的说下几个框架的作用: Hibe…
因为博客园自带的markdown不太好用,因此所有markdown笔记都使用cmd_markdown发布 Hibernate二次学习一----------Hibernate简单搭建: https://www.zybuluo.com/chy282/note/970569…
一.Hql 入门 1.实体类: package learn.hibernate.bean; import java.util.Date; import java.util.HashSet; import java.util.Set; /** * 持久化类设计 * 注意: * 持久化类通常建议要有一个持久化标识符(ID) * 持久化标识符通常建议使用封装类(例如:Integer 因为基本类型存在默认值) * 持久化类通常建议手动添加一个无参构造函数 (因为有些操作是通过放射机制进行的) * 属性通…
近日,潜在某个技术交流群的我发现即将毕业的小伙伴在焦虑实习.校招,刚好本周 GitHub 热榜有个远程工作项目.不妨大家换个思路,"走"出去也许有更多的机会.当然,除了全球的远程工作集,本周远程工作特推也收录了 greatghoul 及其他小伙伴整理的超详细远程工作事项以及相关工作方向推荐. 远程工作也好,坐班也好,难免需要用一些软件来提升效率.本期依旧收录了 7 个收藏夹项:好用而全的绘图项目--awesome-diagramming,以及编译速度"噌噌噌"号称下…
举个简单的样例说明: 1.Base.java package cn.flymouse.hibernate; import java.util.Date; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; impo…
最近在研究系统启动时将数据加载到内存非常耗时,想着是否有办法优化!经过日志打印测试发现查询时间(查询时间:将数据库数据查询到系统中并转为List<Map>或List<*.Class>,下面将全部针对转化类型为List<Map>进行分析)居然和数据加载时间一样长(加载时间:将查询到的数据组装成系统中业务所需要的数据模型,基本调用了所有key为get/set方法).由此我觉得系统查询时间是有优化的空间的,并通过两个周末对此进行了研究学习并优化此问题,一下是整体流程: 1.疑…
本人用的是sg-uap虚拟环境 //查询方法 //参数 RequestCondition 配合 controller 的 @QueryRequestParam注解可以将前台传入整个对象进行接收 //参数 UserSession 当前登录的用户信息 //obj 实体类 public QueryResultObject query(RequestCondition queryCondition,UserSession userSession){ QueryCriteria qc = new Quer…
一.Hibernate缓存简介: Session接口是Hibernate向应用程序提供的操纵数据接口的最主要接口,它提供了基本的保存.更新.删除和加载Java对象的方法. Session具有一个缓存,位于缓存中的对象称为持久化对象,Session能够在某些时间点来同步更新数据库,这一过程即为清理缓存. Hibernate把对象分为4种状态:持久化状态.临时状态.游离状态和删除状态. 二.Session的缓存: Session的缓存由一系列Java集合构成的. 1.Session缓存的作用: A.…
知识的准备: (参考:汤阳光Hibernate3.6(基础)) 一.浅谈javaBean之间的关系 存在的关系: 1.关联(一对一.一对多.多对一.多对多) 2.聚合/组合(最后考虑) 3.继承 所以,映射主要分为关联映射.继承映射.其它映射 二.hibernate映射研究的就是持久化对象那一整流程 通过配置文件来控制映射 三个实体中,只要确定两个,就能得到第三个: 此文,主要是从javaBean+配置---------------自动生成-------------table() 需要自动生成,…
Hibernate 是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命 意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任. 工具/原料 Myeclipse 创建数据库连接 1 Myeclipse的下载安装就不用我介绍了吧,…
前言: 上一篇简单的讲解了下Hibernate的基础知识.这里对Hibernate比较重要的一些知识点,进行总结和归纳. 手码不易,转载请注明!——xingoo 总结的知识点: 1 关于hibernate映射的实体类标识符访问权限 2 关于对象描述标识符OID及其生成策略 3 Session缓存——清理缓存 4 Session中的状态变更 5 Session中的常用方法 首先简单的看下整理的思维导图,还没有整理完,所以仅仅是一部分而已. 关于Hibernate映射 关于Hibernate的映射要…
一.Spring整合Hibernate 1.如果一个DAO 类继承了HibernateDaoSupport,只需要在spring配置文件中注入SessionFactory就可以了:如果一个DAO类没有继承HibernateDaoSupport,需要有一个HibernateTemplate的属性,并且在配置文件中进行注入.注意,之前使用的是JdbcDaoSupport和JdbcTemplate,传递的是DataSource,现在使用的是HibernateDaoSupport和HibernateTe…