跳水Hibernate(一)实例解说

此语一与高二接触SSH三框架,但是,当能力有限。我们没有继续下行。今天,我们正在采取的优势Java金痴迷,随即再次上调,另一项研究SSH。让我们先从SSH中间Hibernate说起。

或许你会问。为什么要发明Hibernate呢?事实上什么新生事物的出现都是有原因的。假设没有Hibernate的ORM思想,java程序猿必须精通数据库语言。仅仅有这样才干完毕项目开发。

Hibernate创始人Gavin King突破了这样的约束。让对象和实体之间建立映射,我们通过操作java中的对象就能完毕对数据库的操作。听起来非常神奇吧。让我用一个小Demo来向大家具体解说。

要搭建Hibernate工作的环境,我们要引入相关的jar包,因为我们是刚開始学习的人,所以建议把jar包都引入,jar包下载地址:http://pan.baidu.com/s/1pJi9XOn。下图是Hibernate实例的文件文件夹。

我们要做的是建立实体User.java。使其和数据表T_User建立映射,通过操作User.java完毕对数据表T_User的操作。User.java的源代码例如以下:

package com.entity;  

import java.util.Date;  

public class User {  

    private String id;
    private String name;
    private String password;
    private Date createTime;
    private Date expireTime;  

    public String getId() {
        return id;
    }
    public void setId(String 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;
    }
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }  

    public Date getExpireTime() {
        return expireTime;
    }
    public void setExpireTime(Date expireTime) {
        this.expireTime = expireTime;
    }
}

User.hbm.xml文件是映射文件,通过它建立User.java和T_User表的映射关系,代码例如以下:

<?

xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
    <class name="com.entity.User" table="T_User">
        <id name="id">
            <generator class="uuid"/>
        </id>
        <property name="name"/>
        <property name="password"/>
        <property name="createTime"/>
        <property name="expireTime"/>
    </class>
</hibernate-mapping>  

hibernate.cfg.xml是配置文件,通过它配置要连接的数据库的信息和映射文件的路径,代码例如以下:

<!DOCTYPE hibernate-configuration PUBLIC
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
	<session-factory>
	   <!-- 连接SQL Server的方言-->
	   <property name="dialect">org.hibernate.dialect.SQLServerDialect</property>
	   <!-- 连接SQL Server的数据库名-->
       <property name="connection.url">jdbc:sqlserver://127.0.0.1:1433;database=test</property>
       <!-- 连接SQL Server的用户名-->
       <property name="connection.username">sa</property>
       <!-- 连接SQL Server的密码-->
       <property name="connection.password">123456</property>
       <!-- 连接SQL Server的驱动程序-->
       <property name="connection.driver_class">com.microsoft.sqlserver.jdbc.SQLServerDriver</property>
       <!-- 配置映射文件的路径-->
       <mapping resource="com/entity/User.hbm.xml" />
	</session-factory>
</hibernate-configuration> 

Client.java控制User.java。使其向T_User表写入数据,代码例如以下:

package test;

import java.util.Date;

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

import com.entity.User;

public class Client {

	public static void main(String[] args) {

		// 读取hibernate.cfg.xml文件
		Configuration cfg = new Configuration().configure();

		// 建立SessionFactory
		SessionFactory factory = cfg.buildSessionFactory();

		// 取得session
		Session session = null;
		try {
			session = factory.openSession();
			// 开启事务
			session.beginTransaction();
			User user = new User();
			user.setName("NAME1");
			user.setPassword("PWD1");
			user.setCreateTime(new Date());
			user.setExpireTime(new Date());

			// 保存User对象
			session.save(user);

			// 提交事务
			session.getTransaction().commit();
		} catch (Exception e) {
			e.printStackTrace();
			// 回滚事务
			session.getTransaction().rollback();
		} finally {
			if (session != null) {
				if (session.isOpen()) {
					// 关闭session
					session.close();
				}
			}
		}
	}
}

T_User表的数据结构例如以下:

查看T_User表,观察操作是否成功。效果图例如以下:

源代码下载地址例如以下:http://pan.baidu.com/s/1nt4sIVZ

经过两天的刻苦专研,最终完毕了Hibernate的第一个Demo。收获颇多。只是这仅仅是个開始,Hibernate的奇妙之处还多的非常,我会继续《跳水--Hibernate》该博客,而所有这些进步。

版权声明:本文博主原创文章,博客,未经同意不得转载。

时间: 2024-10-26 19:41:44

跳水Hibernate(一)实例解说的相关文章

Struts2、Spring和Hibernate应用实例(上)

Struts2.Spring和Hibernate应用实例 Struts作为MVC 2的Web框架,自推出以来不断受到开发者的追捧,得到广泛的应用.作为最成功的Web框架,Struts自然拥有众多的优点:MVC 2模型的使用.功能齐全的标志库(Tag Library).开放源代码.而Spring的出现,在某些方面极大的方面了Struts的开发.同时,Hibernate作为对象持久化的框架,能显示的提高软件开发的效率与生产力.这三种流行框架的整合应用,可以发挥它们各自的优势,使软件开发更加的快速与便

【转】Hibernate入门实例

1. 环境配置 1.1 hiberante环境配置 hibernate可实现面向对象的数据存储.hibernate的官网:http://hibernate.org/ 官网上选择hibernate ORM,可以下载最新的hibernate,还有配套的document教程 http://docs.jboss.org/hibernate/orm/4.3/manual/en-US/html_single/ .下载到的hibernate文件夹中有document文档(hibernate\documenta

Hibernate开发实例

Hibernate开发实例 1. 创建HibernateDemo项目(也可以是其他名称) (1)在Eclipse中,单击Eclipse菜单中的[File]选择[New]选项,选择创建[DynamicWebProject](动态Web项目): (2)Project name我们填写为HibernateDemo(也可以是其他名称): (3)单击[Finish],我们的项目便创建完成了. 2. 在Eclipse中部署Hibernate开发包和MySQL驱动包 在这里我们做的是简单项目,所以需要的开发包

Struts2+EasyUI+Hibernate小实例

概述 这个实例主要是前台数据到后台数据的传递和后台数据到前台数据的传递,完成数据的新增,以及对新增数据的展示.下面是详细的过程: Hibernate(数据库部分) 这里只是数据库的连接和数据库实体与物理表的映射. 1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE hibernate-configuration PUBLIC 3 "-//Hibernate/Hibernate Conf

Servlet实例解说

打开昨天上午,负责人突然问我,client控制信息,如何让在后台?我想回答:假设总体提交form,在C#使用代码request获取表单的内容.假设局部提交,在用JS和Ajax交互,通过Ajax的open()和send()方法向后台传,通过Ajax的onreadystatechange()回调函数接收后台传回的数据. 触类旁通.举一反三,原来学JavaWeb的时候.一直没整明确html和Servlet是怎样交互的,如今通过一个简单的Servlet登录实例来解说整个登录过程的交互机制.源代码下载地址

16.spring+hibernate简单实例

1.概念 Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. hibernate对象: ① configuration (Configuration 类的实例首先定位映射文档的位置,读取这些配置,然后创建一个SessionFactory对象) ②sessionFactory(一个

持久化框架Hibernate 开发实例(二)

1 简述 通过使用Hibernate框架,开发者可以使用面向对象的方式来进行数据库访问,从而取代 以前使用JDBC进行数据库访问的方式.通过使用Hibernate框架,web应用可以通过面向 对象的方式来进行数据库的各种访问操作,如插入,更新,删除,查询数据等. 1.1 创建Hibernate配置文件 hibernate从其配置文件中读取和数据库有关的信息.hibernate的配置文件分为两种形式, 一种是XML格式的配置文件,还有一种是资源文件格式的配置文件.分为XML文件或propertie

hibernate入门实例

1. 环境配置 1.1 hiberante环境配置 hibernate可实现面向对象的数据存储.hibernate的官网:http://hibernate.org/ 官网上选择hibernate ORM,可以下载最新的hibernate,还有配套的document教程 http://docs.jboss.org/hibernate/orm/4.3/manual/en-US/html_single/ .下载到的hibernate文件夹中有document文档(hibernate\documenta

Hibernate基础实例

hibernate是orm(对象关系映射)框架 即通过配置文件使对象与数据库表关联 让eclipse断网拥有xml提示功能 ①解压hibernate-core-5.0.7.Final.jar ②进入org\hibernate下复制到单独文件//此处演示配置单个 其余配置同理hibernate-configuration-3.0.dtdhibernate-configuration-4.0.xsdhibernate-mapping-3.0.dtdhibernate-mapping-4.0.xsd