Eclipse中hibernate连接mySQL数据库练习
(采用的是hibernate中XML配置方式连接数据库,以后在更新其他方式的连接)

Hibernate就是Java后台数据库持久层的框架,也是目前企业用最多的数据库框架,主要是基于ORM -- object relationship Mapping,翻译成中文叫“对象关系映射”,也就是将SQL这种非面向对象语言转化成hibernation面向对象的写法,本文将通过在Eclipse下搭建HIbernate框架

我所使用的Hibernate版本是Hibernate3.3.2,Hibernate官网下载www.hibernate.org

下面开始搭建hibernate数据库:
1.在eclipse中新建Java project项目,名称为:hibernateTest。右击项目名称,点击property,选择Java Build Path,加入需要导入的JAR包。
2.在src文件夹下,新建hibernate.cfg.xml配置文件,(连接数据库的参数信息)
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.connection.driver_class"> 
                com.mysql.jdbc.Driver    
            </property> 
            <property name="hibernate.connection.url"> 
                jdbc:mysql://localhost:3306/test
            </property> 
            <!--  数据库连接设置 --> 
           
            <property name="hibernate.connection.username">用户名</property> 
            <property name="hibernate.connection.password">密码</property> 
 
            <!-- show_sql 生成SQL语句输出到日志以供调式 --> 
            <property name="hibernate.show_sql">true</property> 
           
            <!-- SQL dialect 方言 --> 
            <property name="hibernate.dialect"> 
                org.hibernate.dialect.MySQLDialect  
            </property> 
           
             <!-- 指定session通过当前执行的线程来跟踪和界定 -->
            <property name="hibernate.current_session_contecxt_class" >
                thread
            </property>
 
           
            <!-- 添加实体类的映射文件-->

<mapping resource="XXXXX.hbm.xml" /> 

<!--  映射文件路径配置使用 / 例如:com/zzp/login/login.hbm.xml --> 
    
        </session-factory> 
    </hibernate-configuration>

3.在mySQL数据库中有一个login表,字段为id(int),name(string),password(string),在model包下新建login.java,
login.java文件代码如下:
public class login {
   
    private int id;
    private String name;
    private String password;
   
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }

}
4.在该model包下,新建login.hbm.xml,用于映射数据库字段和表
login.hbm.xml文件代码如下:
<?xml version="1.0" encoding="UTF-8"?> 
    <!DOCTYPE hibernate-mapping PUBLIC 
            "-//Hibernate/Hibernate Mapping DTD 3.0//EN" 
            "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> 
           
    <hibernate-mapping package="x.model"> 
        <class name="login" table="login"> 
             <id name="id" type="java.lang.Integer"></id> 
            <property name="name" type="java.lang.String"  /> 
            <property name="password" type="java.lang.String" /> 
        </class> 
    </hibernate-mapping>

5.在该model包下,新建testLogin.java作为测试文件
TestLogin.java代码如下:

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

public class test {
   
     public static void main(String a[])
     {
      login l = new login();
      l.setId(1);
      l.setName("456");
      l.setPassword("456");
     
      Configuration cfg = new Configuration();
      SessionFactory sf = cfg.configure().buildSessionFactory();
      Session session = sf.openSession();
      session.beginTransaction();
      session.save(l);
      session.getTransaction().commit();
      session.close();
      sf.close();
      System.out.print("success!");
     }

}

6.运行程序,运行成功。

https://yunpan.cn/cMp6r3v2nSsEx  访问密码 d87e

Hibernate 使用说明的更多相关文章

  1. Hibernate常用API以及使用说明

    1===>Hibernate常用的aip有Configuration,SessionFactory,Transaction,Session Configuration主要用于加载配置文件,使用 ...

  2. Hibernate注解使用以及Spring整合

    Hibernate注解使用以及Spring整合 原文转自:http://wanqiufeng.blog.51cto.com/409430/484739 (1) 简介: 在过去几年里,Hibernate ...

  3. Hibernate Annotation笔记

    (1)简介:在过去几年里,Hibernate不断发展,几乎成为Java数据库持久性的事实标准.它非常强大.灵活,而且具备了优异的性能.在本文中,我们将了解如何使用Java 5 注释来简化Hiberna ...

  4. [Hibernate] - one to one

    两种不同方式的一对一映射关系: 1)配置文件: hibernate.cfg.xml <?xml version="1.0" encoding="UTF-8" ...

  5. Hibernate从入门到精通(四)基本映射

    映射的概念 在上次的博文Hibernate从入门到精通(三)Hibernate配置文件我们已经讲解了一下Hibernate中的两种配置文件,其中提到了两种配置文件的主要区别就是XML可以配置映射.这里 ...

  6. Hibernate从入门到精通(二)Hibernate实例演示

    上篇Hibernate从入门到精通(一)JDBC简介,我们主要对JDBC进行了简单介绍和使用说明,这次我们做一个Hibernate简单实例,通过这个实例对比Hibernate和JDBC,了解Hiber ...

  7. Hibernate(四)基本映射

    映射的概念 在上次的博文Hibernate(三)Hibernate 配置文件我们已经讲解了一下 Hibernate中的两种配置文件,其中提到了两种配置文件的主要区别就是XML可以配置映射.这里提到的映 ...

  8. Hibernate(二)Hibernate 实例

    上篇Hibernate(一)JDBC简介,我们主要对JDBC进行了简单介绍和使用说明,这次我们做一个Hibernate简单实例,通过这个实例对比Hibernate和JDBC,了解Hibernate的优 ...

  9. hibernate 初印象

    将要学习的内容: 1.HelloWorld a) xml b) annotation2.Hibernate 原理模拟 - 什么是 O/R Mapping 以及为什么要有 O/RMapping3.常见 ...

随机推荐

  1. hdoj1754 I Hate It【线段树区间最大值维护+单点更新】

    I Hate It Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total S ...

  2. jsp 多条记录提交

    前端jsp页面可以通过form提交标有name属性值得input的value数据给服务器,其中如何传递数组形式呢?如下: 1.前端jsp页面 其中灰色的部分是一个循环出现的值,因此form提交后,后台 ...

  3. LINQ如何递归子控件

    private void SetTextReadOnly(Control ctr, bool blReadOnly) { ctr.Controls.Cast<Control>().Sele ...

  4. c#类的初始化顺序

    本文转载:http://www.cnblogs.com/ybhcolin/archive/2010/09/24/1834219.html c#类的初始化顺序 类在初始化时的执行顺序,依次如下: 1: ...

  5. Android Studio 1.0.2 设置内存大小

    http://www.linuxidc.com/Linux/2015-04/116457.htm Android studio 1.0.2默认最大内存是750M,这样跑起来非常的卡,难以忍受,机器又不 ...

  6. 在Excel里如何将多个工作簿合并到一个工作簿中

    在Excel里如何将多个工作簿合并到一个工作簿中 当你必须将多个工作簿合并到一个工作簿时,你遇到过麻烦吗?最让人心烦的就是需要合并的工作簿里有很多张工作表.有人能推荐方法解决这个问题吗? 利用VBA ...

  7. android84 广播接受者

    #广播接收者(广播接受者进程关闭了也能接收到广播,系统会在清单文件中找哪个广播接受者可以收到这条广播,然后去启动这个接受者的进程,找不到则广播发了就发了没人收到而已) * 现实中:电台要发布消息,通过 ...

  8. careercup-数组和字符串1.5

    1.5 利用字符重复出现的次数,编写一个方法,实现基本的字符串压缩功能.比如,字符串”aabcccccaaa“会变成”a2b1c5a3“.若”压缩“后的字符串没有变短,则返回原先的字符串. 类似 le ...

  9. OC学习笔记[注意事项]

    alloc  new  retain之后都必须要调用release方法 计数器要变只有这几种方法 retain release alloc new copy方法才会使计数器改变,谁想用人家对象,就对他 ...

  10. AngularJS Filter用法详解【转+实际测试】 格式化货币

    AngularJS内建了一些常用的Filter,我们一一来看一下. currencyFilter(currency): 用途:格式化货币 方法原型: function(amount, currency ...