已经在兰州上班近4个月了,但是由于在这边持久层框架使用的是mybatis,没有使用hibernate,我当时在其他地方上班的时候使用的hibernate最为持久层,为了把之前学的东西不忘掉,我还是总结总结我认为hibernate比较难懂和核心的东西。
这里我使用的是hibernate4.2.7,的版本,但是我看hibernate都已经4.9了,这是飞一般的速度呀。
1、首先介绍一下基本使用和配置(我是使用注解)
(1)、添加jar包
添加红框文件夹下面的全部jar包,这个是你只要使用hibernate就必须添加的包(required文件夹下面的所有jar)。
还的加一个数据库驱动包,我使用的mysql,使用我使用的是mysql驱动包,这个最好和计算机上安装的版本差不多,还有一个,我在前几天使用的hibernate生成表的时候突然发现生成不了,原来,我的数据库方言有问题,org.hibernate.dialect.MySQLDialect,org.hibernate.dialect.MySQL5Dialect,注意这两个的方言,5.3及以上版本用后面的一个,之前的版本就前面的一个。
包加完整之后如下图所示:
(2)、hibernate的配置
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <!-- 使用的数据库方言 --> <property name="dialect">org.hibernate.dialect.MySQLDialect</property> <!-- 数据库驱动 --> <property name="connection.driver_class">com.mysql.jdbc.Driver</property> <!-- 数据库连接的url --> <property name="connection.url">jdbc:mysql://127.0.0.1:3306/hibernateDemo</property> <!-- 数据库的用户名 --> <property name="connection.username">root</property> <!-- 数据库的密码 --> <property name="connection.password">root</property> <!-- 显示sql语句 --> <property name="show_sql">true</property> <!-- 自动创建表 --> <property name="hbm2ddl.auto">update</property> <!-- 映射文件,这里使用的是注解,所有就是class文件,不是resource --> <mapping class="com.west.dao.User"/> </session-factory> </hibernate-configuration>
(3)、编写实体bean文件
package com.west.dao; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.Table; @Entity @Table(name = "user") public class User { private Integer userId; private String username; @Id @GeneratedValue(strategy = GenerationType.AUTO) public Integer getUserId() { return userId; } public void setUserId(Integer userId) { this.userId = userId; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } }
(4)、编写测试的java文件
package com.west.dao; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import org.hibernate.service.ServiceRegistry; import org.hibernate.service.ServiceRegistryBuilder; public class Demo1 { public static void main(String[] args) { // 加载hibernate.cfg.xml配置文件 Configuration cfg = new Configuration().configure(); ServiceRegistry srb = new ServiceRegistryBuilder().applySettings(cfg.getProperties()).buildServiceRegistry(); SessionFactory sf = cfg.buildSessionFactory(srb); Session session = sf.openSession(); Transaction tr = session.beginTransaction(); User user = new User(); user.setUsername("zhangjl11"); session.save(user); tr.commit(); } }
注意:在获得SessionFactory的时候和之前有点不一样
相关推荐
最新hibernate 4.2.7.Final版本(2013年10-23最新发布) 需要的请下载 另:4.3.0.Beta5 版本也已发布,估计稳定性还有待验证
hibernate-release-4.2.7.SP1.chm
primefaces jsf作为画面表示层,后台是spring 和 hibernate框架, 采用maven编译
charles 4.2.7charles 4.2.7charles 4.2.7charles 4.2.7
Charles 4.2.7破解文件 自己亲自破解的,替换可用,不信可以看我之前破解的4.2.6. Charles 4.2.7破解文件 自己亲自破解的,替换可用,不信可以看我之前破解的4.2.6. Charles 4.2.7破解文件 自己亲自破解的,替换可用,...
WinSCP4.2.7
struts-2.5.1-spring-4.2.7-hibernate-5.0.9 整合的项目 可以直接用 . spring 4.3 + hibernate 5.0 测试不可用 冲头
这是CAS4.2.7的源码编译,并打包好的说明书噢。 目前(2022.3.27)CAS已经升到6版本,4版本以前的说明书,都已经下线,网上找不到任何痕迹。 翻到源码,把相关文档整理,编译成chm,方便大家查阅和使用。 cas最大的...
该包是hibernate中所用的一个包,专门用来去处理特定的问题,它是和ehcache一起用的一个包
单点登录SSO之CAS-4.2.7源码,github下载速度太慢,所以保存一份供大家学习使用。
我本地的 charles 4.2.7 中文版打包的。
emqx-windows-4.2.7.zip,mqtt服务器
利用cas server overlay template制作的cas server 4.2.7 包。
OptiGrating安装包v4.2.7,可以用来对光纤光栅的各种参数进行仿真。
css4.2.7 中文手册.zip
css3参考手册.chm文件,速查各种属性含义和属性取值,对属性语法的分析和说明,包含属性的示例还有在各浏览器上的兼容性。
css 4.2.7中文手册给大家列举了一些CSS中的相关知识。比如:属性,选择符,语法与规则,取值与单位等。 还展示了速查总表,列举了一些使用比率较高的常用CSS Hack。 另外,给大家总结了一些使用过程中,遇到的问题...
css4.2.7 中文手册。学习前端web必备的系列手册之一。
Charles4.2.7中文版.zip
提供spring4的框架,各种依赖包齐全,适合新手搭建并且使用