Hibernate的配置及保存操作
来源:互联网 发布:香港记者跑的快 知乎 编辑:程序博客网 时间:2024/05/22 12:43
Hibernate的配置及保存操作
一、导入jar包
二、在实体类包中新建实体类和数据库表关联的映射文件xxx.hbm.xml 其中xxx和实体类的类名一致
<hibernate-mapping>
<class name="com.cwl.domain.Answer" table="answer"> <!-- name为实体类的类名,table为数据库的表名-->
<id name="id" type="java.lang.Integer" length="10"> <!--name为实体类的属性名,type为类型这里是String,长度为10个字节-->
<column name="id"></column> <!-- 如果属性和表的字段相同可以省略-->
<generator class="increment"></generator> <!-- 设置主键的增长方式-->
</id>
<property name="uid" type="java.lang.Integer" length="10"> <!--同上配置,这个属性不是主键所以是property-->
<column name="u_id"></column>
</property>
</class>
</hibernate-mapping>
三、新建hibernate.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="transaction.factory_class">
org.hibernate.transaction.JDBCTransactionFactory
</property>
-->
<!-- 配置JDBC里batch的大小 -->
<property name="jdbc.batch_size">50</property>
<property name="cache.use_second_level_cache">false</property>
<!-- 显示SQL -->
<property name="show_sql">true</property>
<property name="format_sql">false</property>
<property name="hbm2ddl.auto">update</property>
<!-- 配置数据库方言 -->
<property name="dialect">
org.hibernate.dialect.MySQLDialect
</property>
<!-- 配置数据库连接 -->
<property name="connection.driver_class">
com.mysql.jdbc.Driver
</property>
<property name="connection.username">root</property>
<property name="connection.password">11111</property>
<property name="connection.url">
jdbc:mysql://localhost:3306/aaaa
</property>
<!-- 配置连接池 -->
<!-- 指定hibernate管理的映射文件 -->
<mapping resource="com/cwl/domain/Answer.hbm.xml" />
<mapping resource="com/cwl/domain/Questions.hbm.xml" />
<mapping resource="com/cwl/domain/User.hbm.xml" />
</session-factory>
</hibernate-configuration>
四、配置完毕,可以使用Hibernate
Configuration configuration = new Configuration();
//加载配置文件
configuration.configure();
//创建sessionFactory
SessionFactory sessionFactory = configuration.buildSessionFactory();
//获得session
Session session = sessionFactory.openSession();
//开启事务
Transaction transaction = session.beginTransaction();
Person person = new Person();
//由于在映射文件中已经说明主键的产生方式是hibernate内部产生,所以在程序中不用设置主键
//设置一下信息
person.setPid(3L);
//保存到数据库
session.save(person);
//提交事务
transaction.commit();
//关闭资源
session.close();
sessionFactory.close();
一、导入jar包
二、在实体类包中新建实体类和数据库表关联的映射文件xxx.hbm.xml 其中xxx和实体类的类名一致
<hibernate-mapping>
<class name="com.cwl.domain.Answer" table="answer"> <!-- name为实体类的类名,table为数据库的表名-->
<id name="id" type="java.lang.Integer" length="10"> <!--name为实体类的属性名,type为类型这里是String,长度为10个字节-->
<column name="id"></column> <!-- 如果属性和表的字段相同可以省略-->
<generator class="increment"></generator> <!-- 设置主键的增长方式-->
</id>
<property name="uid" type="java.lang.Integer" length="10"> <!--同上配置,这个属性不是主键所以是property-->
<column name="u_id"></column>
</property>
</class>
</hibernate-mapping>
三、新建hibernate.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="transaction.factory_class">
org.hibernate.transaction.JDBCTransactionFactory
</property>
-->
<!-- 配置JDBC里batch的大小 -->
<property name="jdbc.batch_size">50</property>
<property name="cache.use_second_level_cache">false</property>
<!-- 显示SQL -->
<property name="show_sql">true</property>
<property name="format_sql">false</property>
<property name="hbm2ddl.auto">update</property>
<!-- 配置数据库方言 -->
<property name="dialect">
org.hibernate.dialect.MySQLDialect
</property>
<!-- 配置数据库连接 -->
<property name="connection.driver_class">
com.mysql.jdbc.Driver
</property>
<property name="connection.username">root</property>
<property name="connection.password">11111</property>
<property name="connection.url">
jdbc:mysql://localhost:3306/aaaa
</property>
<!-- 配置连接池 -->
<!-- 指定hibernate管理的映射文件 -->
<mapping resource="com/cwl/domain/Answer.hbm.xml" />
<mapping resource="com/cwl/domain/Questions.hbm.xml" />
<mapping resource="com/cwl/domain/User.hbm.xml" />
</session-factory>
</hibernate-configuration>
四、配置完毕,可以使用Hibernate
Configuration configuration = new Configuration();
//加载配置文件
configuration.configure();
//创建sessionFactory
SessionFactory sessionFactory = configuration.buildSessionFactory();
//获得session
Session session = sessionFactory.openSession();
//开启事务
Transaction transaction = session.beginTransaction();
Person person = new Person();
//由于在映射文件中已经说明主键的产生方式是hibernate内部产生,所以在程序中不用设置主键
//设置一下信息
person.setPid(3L);
//保存到数据库
session.save(person);
//提交事务
transaction.commit();
//关闭资源
session.close();
sessionFactory.close();
阅读全文
0 0
- Hibernate的配置及保存操作
- hibernate的基本保存操作
- Hibernate基本配置及操作
- hibernate 数据保存操作的原理
- hibernate 数据保存操作的原理
- Hibernate保存记录时遇到的一个问题----evitic,not-null配置及主键生成策略
- hibernate配置blob的保存和提取
- hibernate one-to-one 配置及操作
- Hibernate配置及持久化操作(CRUD)
- hibernate 一对多表配置及操作
- Hibernate的配置以及操作
- Hibernate二级缓存的配置及
- hibernate的级联保存操作(一对多)
- Hibernate入门六(单项的保存操作)
- Hibernate 一张表细化操作及表之间继承关系的映射配置
- springmvc的hibernate的配置操作
- Hibernate对象的生命周期及crud操作
- Hibernate的持久化配置和操作
- C#Socket 网络通信异步处理
- linux合并多个文件
- 二分法插入排序
- 面试题1
- GO.js官方文档中文版
- Hibernate的配置及保存操作
- spring rabbimq连接服务器端
- python的互斥锁,加锁、同步机制、异步通信
- mvp demo:mvp+rxjava+retrofit(okhttp)+greendao
- 面向对象9---形式参数和返回值问题
- FrameBuffer操作入门
- 12:多背景设置
- UVA 679
- Educational Codeforces Round 25 D. Suitable Replacement