`

Hibernate第一次教程

阅读更多
第一个Hibernate项目

1.启动MySQL服务
D:\DataBase\mysql-program\bin\mysqld-nt.exe
2.新建Java项目
3.导包Hibernate和MySQL
Bulid Path->Add Library->User Library->...
4.新建hibernate.cfg.xml
<?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="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
   <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
   <property name="hibernate.connection.url">jdbc:mysql:///test</property>
   <property name="hibernate.connection.username">root</property>
   <property name="hibernate.connection.password">lyyf</property>
   <property name="show_sql">true</property>
   <mapping resource="BasicCar/bean/BasicCar.hbm.xml"/>
  </session-factory>
</hibernate-configuration>
5. 新建BasicCar.hbm.xml
<?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="BasicCar.bean.basicCar" table="car" lazy="true">
   <id name="id" type="long">
    <generator class="increment"></generator>
   </id>
   <property name="name" type="string"></property>
   <property name="factory" type="string"></property>
   <property name="date" type="date"></property>
  </class>
</hibernate-mapping>
6.新建BasicCar.java文件
7.创新ExportToDB.java文件

package BasicCar;
import org.hibernate.cfg.Configuration;
import org.hibernate.tool.hbm2ddl.SchemaExport;

public class ExportToDB {
  public static void main(String[] args) {
   //读取配置文件
   Configuration cfg = new Configuration().configure();
   //创建生成表的对象
   SchemaExport export = new SchemaExport(cfg);
   //生成表
   export.create(true,true);
  }
}
8.创建一个测试类
package basicCar;
import java.util.Date;
import org.hibernate.*;
import org.hibernate.cfg.*;
import org.junit.Before;
import org.junit.Test;
import basicCar.bean.BasicCar;
public class TestHibernate {
  Configuration cfg;//Configuration类用于读取数据库配置
  SessionFactory sf;//生成session工厂类
  Session session;//用于操作数据库的session接口
  @Before
  public void init(){
   //读取hibernate.cfg.xml配置文件
   Configuration  cfg = new Configuration().configure("hibernate.cfg.xml");
   //生成session
   sf = cfg.buildSessionFactory();
   //得到session 就相当于得到Connection
   session = sf.openSession();
  }

  @Test//保存一个BasicCar到事务中
  public void testSave(){
   //开始一个保存的事务
   Transaction tr = session.beginTransaction();
   BasicCar bc=new BasicCar();
   bc.setFactory("上u28023 ");
   bc.setName("BenZ");
   bc.setDate(new Date());
   session.save(bc);
   tr.commit();
  }
  @Test//更新数据库中BasicCar
  public void testUpdate(){
   Transaction tr = session.beginTransaction();
   BasicCar bc=new BasicCar();
   bc.setFactory("上u28023 ");
   bc.setId(1);
   bc.setName("BenZ");
   bc.setDate(new Date());
   session.update(bc);
   tr.commit();
  }
  @Test//从数据库中删除id=1的BasicCar记录
  public void testDelete(){
   Transaction tr = session.beginTransaction();
   BasicCar bc = (BasicCar)session.load(BasicCar.class, new Long(1));
   session.delete(bc);
   tr.commit();
  }
  @Test//从数据库查询所有的BasicCar
  public void testLoad(){
   Query query = session.createQuery("from basicCar");
   BasicCar bc =(BasicCar)query.list().get(1);
   System.out.println(bc.getId());;
   System.out.println(bc.getName());
   System.out.println(bc.getFactory());
   System.out.println(bc.getDate());
  }
}

  • 大小: 94.5 KB
分享到:
评论

相关推荐

    hibernate 教程

    第一个可持久化类 1.3. 映射cat 1.4. 与猫同乐 1.5. 结语 2. 体系结构 2.1. 总览 2.2. JMX集成 2.3. JCA支持 3. SessionFactory配置 3.1. 可编程配置方式 3.2. 获取SessionFactory...

    Hibernate教程

    4. 预加载(Eager Loading):通过fetch()或@Fetch注解,可以在一次查询中获取所有关联对象。 八、其他高级特性 1. 异步操作:利用Future或CompletableFuture实现异步数据库访问,提升应用响应速度。 2. 联合主键:...

    hibernate教程

    3. Session:会话对象,代表一次数据库会话,用于执行查询和事务管理。 4. Transaction:事务对象,处理数据库的ACID属性,确保数据一致性。 5. Query和Criteria API:用于执行数据库查询,提供动态和类型安全的查询...

    Hibernate视频教程免费下载

    - SessionFactory:是重量级的不可变对象,它的创建开销很大,通常在整个应用启动时创建一次,在整个应用生命周期内都使用同一个SessionFactory实例。 - Session:是轻量级对象,代表与数据库的一次会话,它是线程...

    MyEclipse Hibernate 快速入门中文教程

    SessionFactory是Hibernate的核心组件,它是线程不安全的,因此通常在应用启动时创建一次。通过`Configuration`对象加载配置并建立SessionFactory,然后使用SessionFactory创建Session实例,进行数据操作。 7. **...

    私塾在线Hibernate4教程(上下部共241页)

    【私塾在线Hibernate4教程】是一份详尽的Java持久层框架学习资源,分为上下两部分,共计241页,旨在帮助开发者深入...这份资源是免费提供的,相比于其他网站的收费下载,它无疑为Java开发者提供了一次宝贵的学习机会。

    Hibernate教程03_Hibernate核心开发接口介绍

    SessionFactory由Configuration类实例化,通常在应用启动时创建一次并缓存,因为创建过程涉及读取配置信息、加载映射文件等较重的操作。 2. **Session接口**: Session是与数据库进行交互的前线接口,它模拟了JDBC...

    hibernate中文版教程

    级联操作则允许一次操作影响关联的对象集合,简化了代码并减少了数据库交互。 九、实体状态管理 Hibernate根据对象与数据库的同步情况,将对象分为瞬时、持久化、游离和脱管四种状态。理解这些状态有助于更好地控制...

    Hibernate最新中文教程

    - **批量更新**:支持一次性更新多个对象,减少数据库操作次数。 #### 七、性能调优 - **SQL 优化**:合理设计查询逻辑,避免 N+1 问题。 - **批处理**:利用批处理机制,减少网络 I/O 操作。 - **并发控制**:...

    hibernate学习资料大全

    延迟加载(Lazy Loading)是Hibernate的一项重要特性,允许我们在真正需要时才加载关联对象,从而避免了“大数据量”的一次性加载。理解并合理运用懒加载,可以避免内存溢出。 10. **性能优化**: Hibernate 提供...

    01_传智播客hibernate教程_hibernate介绍与动手入门体验

    9. 第一次Hello World程序:通过一个简单的例子,展示如何使用Hibernate进行首次数据库操作。 10. 引入关联和级联操作:讨论如何处理实体之间的关联,如一对一、一对多、多对一和多对多,以及级联操作的使用。 11. ...

    Hibernate教程25_Hibernate缓存

    **标题解析:** "Hibernate教程25_Hibernate缓存" 这个标题表明了我们要讨论的是关于Hibernate框架的第25个教程,重点是它的缓存机制。Hibernate是一个流行的Java对象关系映射(ORM)框架,它允许开发者用面向对象的...

    Hibernate 教程

    3. **`最经典的hibernate教程_从入门到精通_第一篇(共四篇).ppt`**:系列教程,逐步讲解Hibernate从基础到进阶的应用,帮助读者从零开始掌握Hibernate。 在学习过程中,建议结合实际项目练习,理论与实践相结合,以...

    02_传智播客hibernate教程_hibernate入门案例的细节分析

    11. **缓存机制**:理解Hibernate的第一级缓存(Session级别)和第二级缓存(SessionFactory级别),以及如何配置和使用第三方缓存。 12. **性能优化**:如批处理、延迟加载、懒加载、缓存策略等提高Hibernate应用...

    hibernate4教程

    Hibernate4是Hibernate框架的第四个主要版本,它在兼容性、性能和API设计上都有所提升。这个版本支持JPA 2.1规范,使得开发者可以同时利用Hibernate的高级特性与Java企业版的标准接口。 二、环境配置 配置Hibernate...

    hibernate入门级教程,零基础哟

    - **Session**:是与数据库交互的接口,代表一次会话,它不是线程安全的。 #### 七、Hibernate高级特性 - **XDoclet与Hibernate映射**:XDoclet是一个注释处理器,可以帮助生成或更新Hibernate映射文件和其他元数据...

    hibernate插件

    `hibernate.cfg.xml`是Hibernate的主要配置文件,包含了数据库连接信息、缓存设置、日志配置等,是启动Hibernate的第一步。 **5. 映射文件(User.hbm.xml)** 这是用户实体类到数据库表的映射文件,定义了对象属性...

Global site tag (gtag.js) - Google Analytics