Hibernate4教程一:入门介绍
第一部分:Hibernate入门







- <?xml version='1.0' encoding='utf-8'?>
- <!DOCTYPE hibernate-configuration PUBLIC
- "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
- "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
- <hibernate-configuration>
- <session-factory>
- <property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
- <property name="connection.url">jdbc:oracle:thin:@localhost :1521:orcl</property>
- <property name="connection.username">test</property>
- <property name="connection.password">test</property>
- <property name="connection.pool_size">2</property>
- <property name="dialect">org.hibernate.dialect.OracleDialect</property>
- <property name="show_sql">true</property> //开发时可开启
- <property name="hibernate.hbm2ddl.auto">update</property> //开发时可开启
- <mapping resource="cn/javass/h4/hello/UserModel.hbm.xml"/>
- </session-factory>
- </hibernate-configuration>
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE hibernate-mapping PUBLIC
- '-//Hibernate/Hibernate Mapping DTD 3.0//EN'
- 'http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd'>
- <hibernate-mapping>
- <class name="cn.javass.h4.hello.UserModel" table="tbl_user">
- <id name="uuid">
- <generator class="assigned"/>
- </id>
- <property name=“userId”></property>
- <property name=“name”></property>
- <property name="age"></property>
- </class>
- </hibernate-mapping>
- package cn.javass.h4.hello;
- import org.hibernate.Session;
- import org.hibernate.SessionFactory;
- import org.hibernate.Transaction;
- import org.hibernate.cfg.Configuration;
- public class Client {
- public static void main(String[] args) {
- SessionFactory sf = new Configuration().configure().buildSessionFactory();
- Session s = null;
- Transaction t = null;
- try{
- //准备数据
- UserModel um = new UserModel();
- um.setUuid("1");
- um.setUserId("id1");
- um.setName("name1");
- um.setAge(1);
- s = sf.openSession();
- t = s.beginTransaction();
- s.save(um);
- t.commit();
- }catch(Exception err){
- t.rollback();
- err.printStackTrace();
- }finally{
- s.close();
- }
- }
- }
测试:直接在Elipse里面运行Client文件即可,运行结束,你将会看到在console输出:“Hibernate: insert into tbl_user (userId, name, age, uuid) values (?, ?, ?, ?)”,打开数据库的数据表,你会看到一条值已经加入了。
configure(
“javass.cfg.xml”
).buildSessionFactory();
ServiceRegistryBuilder builder = new ServiceRegistryBuilder().configure();
builder.applySetting("connection.driver_class", "oracle.jdbc.driver.OracleDriver");
builder.applySetting("connection.url", "jdbc:oracle:thin:@localhost:1521:orcl");
builder.applySetting("connection.username", "ztb");
builder.applySetting("connection.password", "ztb");
builder.applySetting("connection.pool_size", "2");
builder.applySetting("hibernate.dialect", "org.hibernate.dialect.OracleDialect");
builder.applySetting("show_sql", "true");
MetadataSources sources = new MetadataSources( builder.buildServiceRegistry() );
sources.addResource("cn/javass/h4/hello/UserModel.hbm.xml");
MetadataImpl metadata = (MetadataImpl) sources.buildMetadata();
SessionFactory sf = metadata.getSessionFactoryBuilder().buildSessionFactory();

Hibernate4教程一:入门介绍的更多相关文章
- CRL快速开发框架系列教程一(Code First数据表不需再关心)
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...
- Hibernate4.x之入门篇
Hibernate作为一个优秀的持久化框架.ORM框架.在日常的Java开发中常常用到.本文主要通过一个简单的例子来介绍下Hibernate4.x的入门知识. 新建一个Java项目,并加入Hibern ...
- Quartz教程一:使用quartz
原文链接 | 译文链接 | 翻译:nkcoder | 校对:方腾飞 本系列教程由quartz-2.2.x官方文档翻译.整理而来,希望给同样对quartz感兴趣的朋友一些参考和帮助,有任何不当或错误之处 ...
- Cobalt Strike使用教程一
Cobalt Strike使用教程一 0x00 简介 Cobalt Strike是一款基于java的渗透测试神器,常被业界人称为CS神器.自3.0以后已经不在使用Metasploit框架而作为 ...
- C# BackgroundWorker组件学习入门介绍
C# BackgroundWorker组件学习入门介绍 一个程序中需要进行大量的运算,并且需要在运算过程中支持用户一定的交互,为了获得更好的用户体验,使用BackgroundWorker来完成这一功能 ...
- 初识Hadoop入门介绍
初识hadoop入门介绍 Hadoop一直是我想学习的技术,正巧最近项目组要做电子商城,我就开始研究Hadoop,虽然最后鉴定Hadoop不适用我们的项目,但是我会继续研究下去,技多不压身. < ...
- [Python爬虫] 在Windows下安装PhantomJS和CasperJS及入门介绍(上)
最近在使用Python爬取网页内容时,总是遇到JS临时加载.动态获取网页信息的困难.例如爬取CSDN下载资源评论.搜狐图片中的“原图”等,此时尝试学习Phantomjs和CasperJS来解决这个问题 ...
- [Python爬虫] scrapy爬虫系列 <一>.安装及入门介绍
前面介绍了很多Selenium基于自动测试的Python爬虫程序,主要利用它的xpath语句,通过分析网页DOM树结构进行爬取内容,同时可以结合Phantomjs模拟浏览器进行鼠标或键盘操作.但是,更 ...
- NGUI系列教程一
NGUI是Unity的一个插件,使用它来制作你的游戏UI必定将事半功倍.为什么这么说呢?首先我们说说GUI与NGUI的区别,GUI是Unity自带的绘制界面工具,它的成像原理是基于表层的,所以执行效率 ...
随机推荐
- Linux服务器攻击防御(转)
攻击小贴士 如果你打算做一些搓事,那么你需要采取一些措施来保护自己.这是一切的前提,不然我会追杀你,并破坏你的生活. 我总结了几大忌(fuckups): 不要在honeypots执行操作.(在一切开始 ...
- Android中shape的使用方法总结
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http ...
- 调试Xamarin.Android时出现缺少"Mono.Posix 2.0.0"的错误
1.在http://originaldll.com/file/mono.posix.dll/31191.html中下载mono.posix 2.0.0 dll 2.以管理员权限运行Visual Stu ...
- SSH远程管理服务实战
目录 SSH远程管理服务实战 1.SSH基本概述 2.SSH相关命令 3.Xshell连接不上虚拟机 4.scp命令 5.sftp命令 6.SSH验证方式 7.SSH场景实践 8.SH安全优化 9.交 ...
- go语言从例子开始之Example17.指针
Go 支持 指针,允许在程序中通过引用传递值或者数据结构 Example: package main import "fmt" func zeroval(ival int){ iv ...
- mongodb使用本地日期查询
db.getCollection('userLog').find({createAt:{"$gt":new Date("2018-08-05"),"$ ...
- linux安装apue.3e
(1)下载源代码,可以去官网下载:http://apuebook.com/code3e.html (2)解压缩源代码文件:tar -zxvf src.3e.tar.gz (3) 安装静态链接库:sud ...
- MariaDB 创建表
在本章中,我们将学习如何创建表. 在创建表之前,首先确定其名称,字段名称和字段定义. 以下是表创建的一般语法: CREATE TABLE table_name (column_name column_ ...
- 关于Extjs6.0 controller文件过大,实现模块化分离
Extjs一般都是一个视图对应着一个controller 一旦碰到视图中逻辑过于繁琐造成controller文件过大不利于维护和修改,所以要通过混入mixins混入功能来实现模块化! 首先创建一个视图 ...
- 爬取猎聘大数据岗位相关信息--Python
猎聘网站搜索大数据关键字,只能显示100页,爬取这一百页的相关信息,以便做分析. __author__ = 'Fred Zhao' import requests from bs4 import Be ...