`

简单的Hibernate插入数据实例【转】

阅读更多

在此之前创建 MySQL数据库代码如下:
create database if not exists `myproject`;
USE `myproject`;
DROP TABLE IF EXISTS `myusertable`;
CREATE TABLE `myusertable` (           
               `ID` int(8) NOT NULL auto_increment,
               `UserName` varchar(16) default NULL,
               `Password` varchar(16) default NULL,
               `Email` varchar(32) default NULL,    
               PRIMARY KEY (`ID`)                  
             ) ENGINE=InnoDB DEFAULT CHARSET=gbk  

建立可持久化类,User.java()类:
package ch03.hibernate;

public class User {
private int id;
private String username;
private String password;
private String email;
public String getEmail() {
   return email;
}
public void setEmail(String email) {
   this.email = email;
}
public int getId() {
   return id;
}
public void setId(int id) {
   this.id = id;
}
public String getPassword() {
   return password;
}
public void setPassword(String password) {
   this.password = password;
}
public String getUsername() {
   return username;
}
public void setUsername(String username) {
   this.username = username;
}
}

建立配置文件,hibernate.cfg.xm文件l:
<?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">

<!-- Generated by MyEclipse Hibernate Tools.                   -->
<hibernate-configuration>

<session-factory>
   <property name="dialect">
    org.hibernate.dialect.MySQLDialect
   </property>
   <property name="connection.url">
    jdbc:mysql://localhost:3306/myproject
   </property>
   <property name="connection.username">root</property>
   <property name="connection.password">root</property>
   <property name="connection.driver_class">
    com.mysql.jdbc.Driver
   </property>
   <property name="myeclipse.connection.profile">MySQL</property>
   <mapping resource="ch03/hibernate/Myusertable.hbm.xml" />

</session-factory>
</hibernate-configuration>

创建映射文件,User.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">
<!--
    Mapping file autogenerated by MyEclipse Persistence Tools
-->
<hibernate-mapping>
    <class name="ch03.hibernate.User" table="myusertable" catalog="myproject">
        <id name="id" type="java.lang.Integer">
            <column name="ID" />
            <generator class="assigned" />
        </id>
        <property name="username" type="java.lang.String">
            <column name="UserName" length="16" />
        </property>
        <property name="password" type="java.lang.String">
            <column name="Password" length="16" />
        </property>
        <property name="email" type="java.lang.String">
            <column name="Email" length="32" />
        </property>
    </class>
</hibernate-mapping>

建立测试类,Test.java类:
package ch03.hibernate;

import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

public class Test {


public static void main(String[] args) {

   try
   {
    SessionFactory sf = new Configuration().configure().buildSessionFactory();
  
    Session session = sf.openSession();

    Transaction tx = session.beginTransaction();
    User user = new User();
    user.setUsername("HuSuMioa");
    user.setPassword("12345");
   
    session.save(user);
   
    tx.commit();
    session.close();
  
   }
   catch(HibernateException err)
   {
    err.printStackTrace();
   }
}
}

  你还要特别注意的是在创建此测试项目之前你必须在项目中引用 此项目所支持的用户 Hibernate包和加入连接 MySQL的连接 jar,如果没有做此步骤,你的项目是不可能正常运行成功的。如没有其它异常的话,我想应该可以正常执行插入操作了……

 

分享到:
评论

相关推荐

    hibernate的入门实例

    加载有hibernate的相关所有包,实现数据的插入,有文档说明,本人亲自测试过

    ajax+hibernate入门实例源码

    ajax+hibernate入门实例源码。测试方法: 一、先在mysql数据库中创建表并插入数据(脚本在压缩包中) 二、将WebRoot目录复制到tomcat的webapps中。 运行图: &lt;br&gt;

    hibernate+struts2简单实例入门

    本实例是hibernate 和struts2结合的一个demo 适合刚学习 想搭建一个环境并且可以跑一个实例 实现数据的插入

    (2.0版本)自己写的struts2+hibernate+spring实例

    因为歌词插入数据太大.所以单另上传了.如果不需要这两万条数据的朋友可以光下该实例就好了.如果需要记录.则可以去下载记录集.(下载地址:http://download.csdn.net/source/513063) create table HUBO_MUSIC ...

    Ext_Dwr_Spring_Hibernate完美结合,工程实例

    该工程在MyEclipse中可以无错的导入,带jar包,带数据库建表语句(包括插入记录)。用的是MySql数据库。 其中edit-grid2.html页面中的数据是利用dwr调spring,进过spring中的业务方法掉hibernate来操作数据库完成的...

    Hibernate+中文文档

    3.2. Hibernate数据源属性 3.3. Hibernate配置属性 3.4. Hibernate JDBC和连接(connection)属性 3.5. Hibernate缓存属性 3.6. Hibernate事务属性 3.7. 其他属性 3.8. Hibernate SQL方言 (hibernate.dialect) ...

    hibernate3.2中文文档(chm格式)

    3.2. Hibernate数据源属性 3.3. Hibernate配置属性 3.4. Hibernate JDBC和连接(connection)属性 3.5. Hibernate缓存属性 3.6. Hibernate事务属性 3.7. 其他属性 3.8. Hibernate SQL方言 (hibernate.dialect) ...

    HibernateAPI中文版.chm

    3.2. Hibernate数据源属性 3.3. Hibernate配置属性 3.4. Hibernate JDBC和连接(connection)属性 3.5. Hibernate缓存属性 3.6. Hibernate事务属性 3.7. 其他属性 3.8. Hibernate SQL方言 (hibernate.dialect) ...

    Hibernate中文详细学习文档

    4.1. 一个简单的POJO例子 4.1.1. 实现一个默认的(即无参数的)构造方法(constructor) 4.1.2. 提供一个标识属性(identifier property)(可选) 4.1.3. 使用非final的类 (可选) 4.1.4. 为持久化字段声明访问...

    Hibernate 中文 html 帮助文档

    4.1. 一个简单的POJO例子 4.1.1. 实现一个默认的(即无参数的)构造方法(constructor) 4.1.2. 提供一个标识属性(identifier property)(可选) 4.1.3. 使用非final的类 (可选) 4.1.4. 为持久化字段声明访问器...

    最全Hibernate 参考文档

    4.1. 一个简单的POJO例子 4.1.1. 为持久化字段声明访问器(accessors)和是否可变的标志(mutators) 4.1.2. 实现一个默认的(即无参数的)构造方法(constructor) 4.1.3. 提供一个标识属性(identifier property)(可...

    Hibernate教程

    Hibernate参考文档 目录 前言 1. 翻译说明 2. 版权声明 1. 在Tomcat中快速上手 1.1. 开始Hibernate之旅 1.2. 第一个持久化类 1.3. 映射cat 1.4. 与Cat同乐 1.5. 结语 2. Hibernate入门 2.1. 前言 2.2. 第...

    hibernate 体系结构与配置 参考文档(html)

    1. Hibernate入门 1.1. 前言 1.2. 第一部分 - 第一个Hibernate应用程序 1.2.1. 第一个class 1.2.2. 映射文件 1.2.3. Hibernate配置 1.2.4. 用Ant构建 1.2.5. 启动和辅助类 1.2.6. 加载并存储对象 1.3. 第...

    Hibernate_3.2.0_符合Java习惯的关系数据库持久化

    3.2. Hibernate数据源属性 3.3. Hibernate配置属性 3.4. Hibernate JDBC和连接(connection)属性 3.5. Hibernate缓存属性 3.6. Hibernate事务属性 3.7. 其他属性 3.8. Hibernate SQL方言 (hibernate.dialect) ...

    Hibernate注解

    * 9.increnment 插入数据的时候hibernate会给主键添加一个自增的主键,但是一个hibernate实例就维护一个计数器,所以在多个实例运行的时候不能使用这个方法。 * 例:@GeneratedValue(generator = ...

    hibernate3.04中文文档.chm

    14.1. 批量插入(Batch inserts) 14.2. 批量更新(Batch updates) 14.3. 大批量更新/删除(Bulk update/delete) 15. HQL: Hibernate查询语言 15.1. 大小写敏感性问题 15.2. from子句 15.3. 关联...

    Hibernate3+中文参考文档

    4.1. 一个简单的POJO例子 4.1.1. 为持久化字段声明访问器(accessors)和是否可变的标志(mutators) 4.1.2. 实现一个默认的(即无参数的)构造方法(constructor) 4.1.3. 提供一个标识属性(identifier property)(可...

    hibernate 框架详解

    批量插入(Batch inserts) 14.2. 批量更新(Batch updates) 14.3. 大批量更新/删除(Bulk update/delete) 15. HQL: Hibernate查询语言 15.1. 大小写敏感性问题 15.2. from子句 15.3. 关联(Association)与...

Global site tag (gtag.js) - Google Analytics