Java知识java框架Android开发经验谈

看完还不会搭建Hibernate框架的找我发红包给你

2016-06-30  本文已影响550人  清枫_小天

hibernate框架的搭建

hibernate下载地址:
https://sourceforge.net/projects/hibernate/files/hibernate3/
官网 http://in.relation.to/hibernate-orm/

对象 --- 关系
Object --- Relation
类 ---- 表
属性 --- 列
对象 --- 记录

ORM对象关系映射
关系型数据库
表 关系

对象 关系 映射
Object Relation Mapping

类 表 xml
属性 列
对象 记录

框架的学习

1.获取hibernate发布包 点此链接进行下载 hibernate3.6.10

        github(李纳斯  linux 鸟哥的linux私房菜)
            开源托管器
                struts2
                hibernate
                spring
                sublime
                前端
                angularjs
                bootstrap
                ... 
                springmvc spring jdbc 例子

            www.github.com/pluslicy
        svn
            牛是怎么定义的!!!

        maven
            项目管理工具
            管理所有的jar
                xml
                    hibernate3    

2.将hibernate依赖的jar集成到week1项目中

    week1
        jar
            驱动包
            hibernate3.jar
            lib/required/*.jar
            lib/jpa/*.jar

3.将hibernate依赖的配置文件加入到项目中

    hibernate.cfg.xml    配置文件

    ***.hbm.xml            映射文件()

    xml   dtd(限制xml的输入,给程序员提示)
        <class>
            
        </class>
    dtd文件   在hibernate3.jar目录下的org有hibernate-mapping-3.0.dtd和hibernate-configuration-3.0.dtd将这两个文件复制到自己项目week1新建的folder dtd. 
  1. 打开hibernate-mapping-3.0.dtd这个文件复制3-5行
  2. 右击src新建xml文件命名为:hibernate.cfg.xml(一定要命名这个)
  3. 然后将复制的粘贴到下面。当按下<如果没有提示就要配置dtd(手动关联)。
  1. 里面写的内容有个模板可以看。

    • 模板位置在:documentation目录下manual目录下的zh-CN(中文版):

    • 里面有pdf文档可以查看,我们在html目录下找到index.html。

    • 在api中:1.1.4. Hibernate配置将这个章节的代码复制到hibernate.cfg.xml该文件中。

    • 当然还需要做一些修改:
      修改代码如下:

        <?xml version="1.0" encoding="UTF-8"?>
        <!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
        <hibernate-configuration>
        <session-factory>
        <!-- Database connection settings -->
        <property name="connection.driver_class">com.mysql.jdbc.driver</property>
        <property name="connection.url">jdbc:mysql://127.0.0.1:3306/tbl_student</property>
        <property name="connection.username">root</property>
        <property name="connection.password">13870775439z</property>
        <!-- SQL dialect -->
        <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
        <!-- Echo all executed SQL to stdout -->
        <property name="show_sql">true</property>
        <!-- Drop and re-create the database schema on startup -->
        <property name="hbm2ddl.auto">update</property>//这里是自动建表
        <mapping resource="com/zts/day04/basic/user.hbm.xml" />//将映射文件导入进来。点住ctrl键鼠标移到这有超链接说明没写错
        </session-factory>
        </hibernate-configuration>
      

4.将映射文件集成到配置文件中

    private Long id;
    private String name;
    private Double account;
    private Date birthday;
    <?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="com.zts.day04.basic">
    <class name="User" table="tbl_user">
    <id name="id" column="id">
        <generator class="increment" />//主键生成机制
    </id>
    <property name="name" />//column=“name”默认的
    <property name="account" />
    <property name="birthday" />
    </class>

     </hibernate-mapping>

//测试类 (运行之后可以在mysql可视化工具中查看产生的表名和属性即代表成功)

package com.zts.day04.basic;
import java.util.Date;
import org.hibernate.Hibernate;
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) {
    Configuration config=new Configuration();
    config.configure();//读取配置文件
    SessionFactory factory=config.buildSessionFactory();
    Session session=factory.openSession();
    Transaction transaction = session.beginTransaction();
    session.save(new User(null, "zts", 1000.0, new Date()));
    transaction.commit();
}

}
上一篇 下一篇

猜你喜欢

热点阅读