hibernate环境配置与单表操作

原创 2012年03月29日 18:42:35

1、ORM:POJO<-->table
2、主键生成策略:identity(sql)、sequence(oracle)、native(自动选择)、assigned(手动)
3、配置:6准备(3拷3配):
3拷:hibernate包、jdbc包、log4j配置文件(properties(src下))
3配:POJO(实体bean)、映射文件(POJO类.hbm.xml(与一个POJO对应(src下)))、总配置文件hibernate.cfg.xml

POJO类.hbm.xml:
<hibernate-mapping>
<class name="com.pojo.Student" table="student"> <!-- O/R -->
<id name="sid" column="sid">  <!-- primary key -->
  <generator class="native"></generator> <!-- 生成策略 -->
</id>
<property name="sname" column="sname"></property>   <!-- 其他字段 -->
<property name="saddr" column="saddr"></property>
<property name="sbirthday" column="sbirthday"></property>
</class>
</hibernate-mapping>

hibernate.cfg.xml:方言dialect、format_sql:true(显示sql)、POJO类.hbm.xml在此注册

4、基本操作zsgc
Configuration cfg = new Configuration().configure(); //读取配置
SessionFactory sessionFactory = cfg.buildSessionFactory(); //创建工厂
Session  session = sessionFactory.openSession(); //打开session
Transaction tr = session.beginTransaction();  //开启事务(针对zsg)
a.创建表
  //到src读取默认的配置文件
  Configuration cfg = new Configuration().configure();
  SchemaExport  export = new SchemaExport(cfg);
  //根据pojo和映射文件生成表,是否删除旧表,是否显示sql语句
  export.create(true, true);
b.
  Transaction tr = session.beginTransaction();
  try {
   Student stu = new Student();
   stu.setSbirthday(java.sql.Date.valueOf("1980-2-1"));
   stu.setSex(0);
   stu.setSname("范剑");
   session.save(stu);  //保存
   tr.commit();
  } catch (Exception e) {
   // TODO: handle exception
   e.printStackTrace();
   tr.rollback();
  }finally{
   session.close();
  }
c.
  先查:
  Student stu = (Student) session.get(Student.class, 1);  //根据主键查找
  再删:
  session.delete(stu);
d.(同删:先查后改)
  session.update(stu);
e.
  1.查询所有:
   Query  query  = session.createQuery("from Student");  //HQL语句
   java.util.List<Student>   list   = query.list(); //存放list
   //遍历输出
  2.条件查询:
   Query  query  = session.createQuery("from Student where Sname like ?");
   query.setParameter(0, "夏%");
   //存放结果-->遍历输出

Hibernate对单表的CRUD操作

在上篇博客配置完开发环境后,现在是在JUnit中测试CRUD方法的,话不多说,我们来看看代码如何实现的, 1.增 @Test public void testSave() { Student ...
  • qq_26624661
  • qq_26624661
  • 2016年08月11日 15:50
  • 328

Hibernate单表操作(五)——增删改查操作实例

转载请注明:http://blog.csdn.net/uniquewonderq 增:sava 删:delete 改:update 查:get/load(查询单个记录)...
  • uniquewonderq
  • uniquewonderq
  • 2015年06月25日 14:21
  • 1553

hibernate对单表增删改查(CRUD)

增删改查: save update delete get/load(查询单个记录) import java.util.Date; import org.hibernate.Session; impor...
  • syf1970
  • syf1970
  • 2016年08月28日 15:22
  • 688

【Hibernate集锦】---继承映射之单表继承

package com.test.hibernate; /** * 父类:User * @author WYQ * */ public class User { //用户id号 pri...
  • u010773667
  • u010773667
  • 2015年10月25日 20:31
  • 781

Hibernate初探之单表映射笔记(1)

以下内容来自慕课网视频《Hibernate初探之单表映射》 第一章 Hibernate初识 1-2 什么是ORM 1-3 Hibernate简介 1-4 Hibernate开发前准备 1-...
  • qq_33547950
  • qq_33547950
  • 2016年08月16日 20:40
  • 635

Hibernate单表映射之hibernate单表操作

Hibernate初探之单表映射 本文为学习时所做笔记,不足之处,欢迎指正。 主要内容: 单一主键 基本类型 对象类型 组件属性 单表操作CRUD实例 单一主键(以MySQL为例) as...
  • chensanwa
  • chensanwa
  • 2018年01月19日 15:03
  • 73

[Hibernate单表操作] 单表操作CRUD实例

一 常用方法 save update delete get/load(查询单个记录)   二 测试代码 import java.io.File; import java.io.File...
  • chengqiuming
  • chengqiuming
  • 2017年11月22日 12:44
  • 36

Hibernate(2)——单表操作

一、 单一主键策略 assigned:表示由java程序来指定id或者手工赋值 native:由底层数据库自动生成标识符。如果是MySQL就是auto_increment,如果是Oracle就是seq...
  • Ascend2015
  • Ascend2015
  • 2017年08月30日 13:43
  • 91

Hibernate单表操作

Hibernate单表的CRDU save() get/load() —— get在被调用之后,立刻向数据库发送sql语句 load被调用后会返回一个代理对象,改代理对象只保存了实体对象的id, 直到...
  • u013899738
  • u013899738
  • 2016年04月22日 11:45
  • 280

hibernate dao保存方法无法持久化到数据库的问题

source: http://hi.baidu.com/magiejue/blog/item/f4b6d12679b19dfdd6cae2d2.htmlhibernate dao保存方法无法持久化到数...
  • samron
  • samron
  • 2011年06月30日 18:52
  • 884
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:hibernate环境配置与单表操作
举报原因:
原因补充:

(最多只允许输入30个字)