Hibernate第一个程序
1、 下载资源:www.hibernate.org
2、 资源介绍hibernate-release-4.3.10.Final
a) Documentation 相关文档
b) Lib 相关jar包
c) Project相关资源文件,模板文件,源码等
3、 搭建hibernate环境:
a) 新建一个java项目
b) 导入相关jar包
antlr-2.7.7.jar
dom4j-1.6.1.jar
hibernate-commons-annotations-4.0.5.Final.jar
hibernate-core-4.3.10.Final.jar
hibernate-jpa-2.1-api-1.0.0.Final.jar
jandex-1.1.0.Final.jar
javassist-3.18.1-GA.jar
jboss-logging-3.1.3.GA.jar
jboss-logging-annotations-1.2.0.Beta1.jar
jboss-transaction-api_1.2_spec-1.0.0.Final.jar
mysql-connector-java-5.1.20-bin.jar
c) 编写配置文件hibernate.cfg.xml文件
在下载的资源中找到 hibernate-release-4.3.10.Final\project\etc\hibernate.cfg.xml 放入到项目中src下:
修改hibernate.cfg.xml文件如下:
<!--以MySQL为例:-->
<hibernate-configuration>
<session-factory>
<!-- 配置数据库连接信息 -->
<!--数据库驱动-->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<!--数据库地址-->
<property name="connection.url">jdbc:mysql://localhost:3306/hibernate4</property>
<!--数据库用户名-->
<property name="connection.username">root</property>
<!--数据库密码-->
<property name="connection.password">root</property>
<!-- 数据库方言 -->
<property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
</session-factory>
</hibernate-configuration>
<!-- 这些配置都可以在hibernate.properties文件中找到 -->
d) 创建数据库表,以及对应的pojo对象
Pojo对象:
public class User {
private int id;
private String name;
private String pwd;
//省略setter、getter
}
User表:user:
|
id |
name |
pwd |
e) 编辑*.hbm.xml文件
文件名一般为pojo类的名称User.hbm.xml,放在pojo类所在的包下,头文件可以在project下查找,也可拷贝。然后将*.hbm.xml配置文件加入到hibernate.cfg.xml中.
<hibernate-mapping>
<class name="cn.siggy.pojo.User" table="user">
<id name="id">
<!-- 主键生成策略 -->
<generator class="native"></generator>
</id>
<!-- 实体类的属性 -->
<property name="name"/>
<property name="pwd"/>
</class>
</hibernate-mapping>
f) 测试:将*.hbm.xml配置文件加入到hibernate.cfg.xml中。在hibernate.cfg.xml中点击Session Factory,在Mappings中add即可。
public static void main(String[] args) {
//1.新建Configuration对象
Configuration cfg = new Configuration().configure();
//2.通过Configuration创建SessionFactory对象
//在hibernate3.x中是这种写法
//SessionFactory sf = cfg.buildSessionFactory();
//hibernate4.3之前~hibernate4.0
// ServiceRegistry sr = new ServiceRegistryBuilder()
// .applySettings(cfg.getProperties())
// .buildServiceRegistry();
//hibernate4.3
ServiceRegistry registry = new StandardServiceRegistryBuilder()
.applySettings(cfg.getProperties())
.build();
SessionFactory sf = cfg.buildSessionFactory(registry);
//3.通过SessionFactory得到Session
Session session = sf.openSession();
//4.通过session对象 得到Transaction对象
//开启事务
Transaction tx = session.beginTransaction();
//5.保存数据
User user = new User();
user.setName("张三疯");
user.setPwd("1111");
session.save(user);
//6.提交事务
tx.commit();
//7.关闭session
session.close();
}
Hibernate第一个程序的更多相关文章
- Hibernate第一个程序(最基础的增删改查) --Hibernate
本例实现Hibernate的第一个程序,Hibernate的优点我想大家都很清楚,在这里不做过多赘述.总之,使用Hibernate对数据库操作,也就是来操作实体对象的! 项目目录: 一.第一步要做的就 ...
- 用my eclipse 新建hibernate 第一个程序
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. 今天就来开始建我们的第一个hibernat ...
- Hibernate5笔记1--Hibernate简介和第一个程序
Hibernate简介: Hibernate是一个开放源代码的ORM(对象关系映射)框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. Hib ...
- Hibernate 入门的第一个程序
一. Hibernate介绍 Hibernate是基于对象/关系映射(ORM,Object/Relational Mapping)的一个解决方案.ORM方案的思想是将对象模型表示的对象映射到关 ...
- Android开发-之第一个程序:HelloWorld!
小编觉得不管学习什么编程的时候,第一个程序都是要求打印输出一个"HelloWorld!",那就从最简单的HelloWorld开始吧!哈哈~~~~ 一.创建一个Android工程 1 ...
- 在运行Hibernate Hello World程序的时候,抛如下错误: view plain Exception in thread "main" org.hibernate.exception.LockAcquisitionException 解决方法
在运行Hibernate Hello World程序的时候,抛如下错误: Exception in thread "main" org.hibernate.exception.Lo ...
- [Fluent NHibernate]第一个程序
目录 写在前面 Fluent Nhibernate简介 基本配置 总结 写在前面 在耗时两月,NHibernate系列出炉这篇文章中,很多园友说了Fluent Nhibernate的东东,也激起我的兴 ...
- rails再体验(第一个程序)
掌握redmine plugin开发的目标在2016年未实现,2017年继续. 选择<Ruby on Rails Tutorial>教程,windows安装railsinstaller,该 ...
- OpenGL学习笔记1——第一个程序
学习的参考书基本是按照GL编程指南,如果有消息机制概念,对于GLUT的理解是很自然的.下面就按照自己写的第一个程序详细解释一下GL,还是比较容易上手的. 程序实现的功能是,根据当前随即种子摇出来的结果 ...
随机推荐
- POJ 1469 COURSES(二部图匹配)
COURSES Time Limit: 1000MS Memory ...
- hdu2647 拓扑序
题意:年终要给 n 个员工发奖金,每个人的起始金额是888,有些人觉得自己做的比另一个人好所以应该多得一些钱,问最少需要花多少钱,如果不能满足所有员工的要求,输出 -1 拓扑排序,从奖金少的向奖金多的 ...
- Spring源码学习之:模拟实现BeanFactory,从而说明IOC容器的大致原理
spring的IOC容器能够帮我们自动new对象,对象交给spring管之后我们不用自己手动去new对象了.那么它的原理是什么呢?是怎么实现的呢?下面我来简单的模拟一下spring的机制,相信看完之后 ...
- LNMP-查看安装编译时参数
查看mysql编译参数: cat /usr/local/mysql/bin/mysqlbug | grep CONFIGURE_LINE 查看apache编译参数: cat $apachehome$/ ...
- Python-属性(property)
在2.6版本中,添加了一种新的类成员函数的访问方式--property. 原型 class property([fget[, fset[, fdel[, doc]]]]) fget:获取属性 fset ...
- open_table与opened_table
好多人在调优Mysql的时候,总是对open_tables和opend_tables两个参数分别不清. 网上好多解释都是这样的:open_tables:当前打开表的数量opened_tables:当前 ...
- 最大化 AIX 上的 Java 性能,第 3 部分: 更多就是更好
http://www.ibm.com/developerworks/cn/aix/library/es-Javaperf/es-Javaperf3.html 最大化 AIX 上的 Java 性能,第 ...
- TFS 强制撤销别人签出的代码
有个同事离职一段时间了,今天改一下她的代码,发现有个文件签出了,晕,而且TFS用的也是只允许单用户签出. 1,找原来的用的机器,已经被人占用了,系统已经重做. 2,只有用命令行来搞了. 大致如下: t ...
- snort-2.9.7.0源码安装过程
2015/02/15,centos6.5-64-minimal,初始205个包 [root@localhost snort]# yum install wget[root@localhost snor ...
- ios 企业发布
ios 1. 支持的tls 协议 1.2 windows server 默认没有启用 检测的网站: https://www.ssllabs.com/ssltest 解决的方法: IIS crypto ...