1.Hibernate框架之Hello Word
来源:互联网 发布:数据交换平台部署架构 编辑:程序博客网 时间:2024/05/17 08:02
搭建一个Hibernate环境,开发步骤:
1. 下载源码
版本:hibernate-distribution-3.6.0.Final
2. 引入jar文件
hibernate3.jar核心 + required必须引入的(6个) + jpa 目录 + 数据库驱动包
3. 写对象以及对象的映射
Employee.java 对象
Employee.hbm.xml 对象的映射 (映射文件)
4. src/hibernate.cfg.xml 主配置文件
-数据库连接配置
- 加载所用的映射(*.hbm.xml)
5. App.java 测试
public class Employee { private int empId; private StringempName; private DateworkDate; }
二,Employee.hbm.xml 对象的映射
<?xmlversion="1.0"?><!DOCTYPEhibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> <hibernate-mappingpackage="cn.itcast.a_hello"> <classname="Employee"table="employee"> <!-- 主键,映射--> <idname="empId"column="id"> <generatorclass="native"/> </id> <!-- 非主键,映射 --> <propertyname="empName"column="empName"></property> <propertyname="workDate"column="workDate"></property> </class> </hibernate-mapping>
三,hibernate.cfg.xml 主配置文件
<!DOCTYPEhibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <!-- 数据库连接配置 --> <propertyname="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <propertyname="hibernate.connection.url">jdbc:mysql:///hib_demo</property> <propertyname="hibernate.connection.username">root</property> <propertyname="hibernate.connection.password">root</property> <propertyname="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property> <propertyname="hibernate.show_sql">true</property> <!-- 加载所有映射 --> <mappingresource="cn/itcast/a_hello/Employee.hbm.xml"/> </session-factory></hibernate-configuration>
四,App.java 测试类
public class App { @Test public void testHello() throws Exception { // 对象 Employee emp = new Employee(); emp.setEmpName("班长"); emp.setWorkDate(new Date()); // 获取加载配置文件的管理类对象 Configuration config = new Configuration(); config.configure(); // 默认加载src/hibenrate.cfg.xml文件 // 创建session的工厂对象 SessionFactory sf = config.buildSessionFactory(); // 创建session (代表一个会话,与数据库连接的会话) Session session = sf.openSession(); // 开启事务 Transaction tx = session.beginTransaction(); //保存-数据库 session.save(emp); // 提交事务 tx.commit(); // 关闭 session.close(); sf.close(); }}
Hibernate Api
|-- Configuration 配置管理类对象
config.configure(); 加载主配置文件的方法(hibernate.cfg.xml)
默认加载src/hibernate.cfg.xml
config.configure(“cn/config/hibernate.cfg.xml”); 加载指定路径下指定名称的主配置文件
config.buildSessionFactory(); 创建session的工厂对象
|-- SessionFactory session的工厂(或者说代表了这个hibernate.cfg.xml配置文件)
sf.openSession(); 创建一个sesison对象
sf.getCurrentSession(); 创建session或取出session对象
|--Session session对象维护了一个连接(Connection), 代表了与数据库连接的会话。
Hibernate最重要的对象: 只用使用hibernate与数据库操作,都用到这个对象
session.beginTransaction();开启一个事务; hibernate要求所有的与数据库的操作必须有事务的环境,否则报错!
更新:
session.save(obj); 保存一个对象
session.update(emp); 更新一个对象
session.saveOrUpdate(emp); 保存或者更新的方法:
1.没有设置主键,执行保存;
2.有设置主键,执行更新操作;
3.如果设置主键不存在报错!
- 1.Hibernate框架之Hello Word
- hibernate的hello word
- hibernate搭建hello word
- hibernate学习之路——hello word
- Struts1 之Hello Word
- hibernate之Hello world
- hibernate之hello world
- Hibernate之hello world
- 1.hello word 程序
- hibernate的hello word(国内高手撰写)
- hibernate的hello word(国内高手撰写)
- hibernate的hello word(国内高手撰写)
- hibernate的hello word(国内高手撰写)
- Hibernate学习之一 项目搭建 hello Word!
- hibernate 学习一 hello word示例
- IronPython学习 之hello word.
- Spring boot之hello word
- myBatis入门之Hello word
- 源码圈 300 胖友的书单整理(最后更新时间:2017.09.22)
- Anaconda环境的创建/激活/删除/管理
- 关于中断处理程序中的关中断函数disable_irq和disable_irq_nosync
- as3 自定义事件的使用
- 工作总结
- 1.Hibernate框架之Hello Word
- 游戏数据分析框架
- str和repr的区别
- quick 3.2 android 返回键功能
- 【HTML5】——音视频处理
- Jibx 结合 ant使用的一些心得
- NOIP初赛模拟赛总结
- A query was run and no Result Maps were found for the Mapped Statement
- Java文件读操作(两种read方法)