• hibernate 业务流程

1    创建配置对象      Configuration config  = new  Configuration().configure();

2    创建服务注册对象    ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applysettings(config.getProperties()).buildServiceRegistry();

3    创建会话工厂      SessionFactory sessionFactory = config.buildSessionFactory(serviceRegistry);

4    开启会话        Session session = sessionFactory.openSession();

5    开启事务        Transaction  transaction = session.beginTransaction();

6    写业务逻辑

7    提交事务        transaction.commit();

8    关闭会话        session.close();

9    关闭会话工厂      sessionFactory.close();

  • hibernate 实现功能:

1    生成数据对象

2    数据库创建表结构

3    数据库插入表数据

  • 代码:

package hibernate_001;

import java.util.Date;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import com.ddwei.student.Student;

public class StudentTest {

private SessionFactory sessionFactory;
private Session session;
private Transaction trasaction;

@Test
public void testSaveStudent(){
Student student =new Student(1,"周恩来","男",new Date(),"绍兴");//创建学生对象
session.save(student);//会话保存学生对象进入数据库

}

@Before
public void init(){
//1 创建配置对象
Configuration config = new Configuration().configure();
//2 创建服务对象
ServiceRegistry serviceRe = new ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry();

//3 创建会话工厂
sessionFactory = config.buildSessionFactory(serviceRe);

//4 打开会话
session = sessionFactory.openSession();
//5 创建事务
trasaction = session.beginTransaction();
}

@After
public void destroy(){
trasaction.commit();
session.close();
sessionFactory.close();
}

}

hibernate课程 初探单表映射1-11 通过hibernate API访问编写第一个小例子的更多相关文章

  1. hibernate课程 初探单表映射1-1 第一章

    本章内容: 1 什么是orm 2 hibernate简介 3 编写第一个hibernate小例子

  2. hibernate课程 初探单表映射4-1 课程总结

    ORM是一种面向对象编程的方法,用这种方法来避免写数据库底层语言sql语句,这样有利于java的跨平台,扩展.维护.而hirenate是ORM的一种框架 hirbernate开发基本步骤编写配置文档h ...

  3. hibernate课程 初探单表映射3-1 hibernate单表操作简介

    本章简介: 1 单一主键 2 基本类型 3 对象类型 4 组件属性 5 单表操作CRUD实例

  4. hibernate课程 初探单表映射1-9 创建关系映射文件

    创建关系映射文件:(把实体类映射成一个表) 1 右键src==>new==>other==>hibernate==>hbm.xml==>Student==>Fini ...

  5. hibernate课程 初探单表映射3-3 对象类型

    本节简介: 1 简介对象类型(重点是音视频blob类型) 2 demo(对图片的写入数据库与读取) 1 简介对象类型 映射类型 java类型 标准sql类型 mysql类型 oracle类型 bina ...

  6. hibernate课程 初探单表映射2-7 hbm配置文件常用设置

    本节主要简介hbm配置文件以下内容: 1 mapping标签 2 class标签 3 id标签 1 hibbernate-mapping标签 schema 模式名称 catalog 目录名称 defa ...

  7. hibernate课程 初探单表映射2-4 transaction简介

    1 hibernate是非自动提交.如果transaction不写的话,会只创建表结构而不插入语句.   如果不写transaction而想实现插入的功能的话,需要重写session的dowork方法 ...

  8. hibernate课程 初探单表映射2-2 hibernate常用配置

    1 hibernate.cfg.xml常用配置: show_sql 控制台打印sql format_sql 控制台将sql排版 hbm2ddl.auto: create 删除表结构,重新建表并插值 u ...

  9. hibernate课程 初探单表映射2-1 hibernate进阶 本章简介

    本章简介,主要讲5大块的内容 1 hibernate.cfg.xml的配置 2 session 的简介 3 transaction的简介 4 session的详解 5 对象关系映射常用配置

随机推荐

  1. python的gzip库使用方法

    解压gzip文件示例: import gzip f = gzip.open('file.txt.gz', 'rb') file_content = f.read() f.close() 创建gzip文 ...

  2. 代码,用c++实现线性链表

    #include <iostream> #include <stdio.h> #include <malloc.h> using namespace std; #d ...

  3. netstat查看网络信息

    Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Membershi ...

  4. WSDL入门

    WSDL: 网络服务描述语言, 是Web Service的描述语言,它全名:Web Services Description Language,是一门基于 XML 的语言,用于描述 Web Servi ...

  5. CSS样式基础:

    CSS:外部文件导入  <link rel="stylesheet" type="text/css" href="./style.css&quo ...

  6. ES Docs-2:Exploring ES cluster

    The REST API Now that we have our node (and cluster) up and running, the next step is to understand ...

  7. cargo实现自动化部署远程jetty容器(非安全模式)

    cargo实现自动化部署应用至远程jetty容器 (非安全模式) 一.准备: WAR包:Deployer Web application for the Jetty remote containers ...

  8. Flask-SQLAlchemy 配置,处理对象-关系,一对多,多对多

      ORM(Object Relational Mapper) 对象关系映射.指将面对对象得方法映射到数据库中的关系对象中. Flask-SQLAlchemy是一个Flask扩展,能够支持多种数据库后 ...

  9. module.exports 和 export default

    CommonJS模块规范和ES6模块规范完全是两种不同的概念 CommonJS模块规范 Node应用由模块组成,采用CommonJS模块规范. 根据这个规范,每个文件就是一个模块,有自己的作用域.在一 ...

  10. EOS概念理解总结

    本文参考EOS版本:v1.1.1 一.EOS投票相关 //用户投票1.不能自己代理自己,但可以自己给自己投票; 2.投票的生产节点名称不能重复;3.投票人设置了投票代理人后自己不能再投票;4.投票人需 ...