Hibernate(1)——简单、快速上手

目录

1. Hibernate-orm

2. 快速上手

2.1 步骤

2.2 创建数据库表t_user

2.3 创建java对象User.java

2.4 添加jar

2.5  创建hibernate核心配置文件hibernate.cfg.xml

2.6 创建映射文件

hibernate基本数据类型映射:——可参考链接:hibernate基本数据类型映射

2.7 测试类

运行成功:


1. Hibernate-orm

Domain model persistence for relational databases

Orm:Object relational mapping,对象映射关系,用于对象与关系型数据库关联映射框架。

2. 快速上手

2.1 步骤

            创建数据库表t_user

            创建java对象User.java

            添加jar包

            创建映射文件

            创建hibernate核心配置文件hibernate.cfg.xml

            测试

2.2 创建数据库表t_user

           

CREATE DATABASE hibernate_207 CHARSET `UTF8`;

CREATE TABLE t_user(

  id INT(9) PRIMARY KEY AUTO_INCREMENT,

  uname VARCHAR(50) NOT NULL

);

2.3 创建java对象User.java

2.4 添加jar

以及添加mysql-connection.jar

2.5  创建hibernate核心配置文件hibernate.cfg.xml

            注意:还要安装一个专门为hibernate开发的工具:

eclipse安装步骤:

选择add进行在线安装,选择archive从本地来选择上面我们说那个zip工具包:

然后点击选择:

依次点击下一步即可,装完之后我们的配置文件在写的时候就会有智能提醒。并且,我们在new的时候,可以专门去找hibernate.cfg.xm文件,下一步会有图形化选择来让我们填写。

而在IDEA中,没有install new software这个操作,在IDEA中,我们是这么做的:

首先,对项目目录进行必要的配置:

  • 在main目录下添加resources文件夹,并且设置为resource
  • 在test目录下添加resources文件夹,并且设置为test-resources

具体方法如下:

IDEA中给项目添加支持的框架,右击项目名,选择add framework support.如果里面没有的话,就到File---settings里面-----plugin搜索添加apply。然后restart我们的idea,就可以到add framework support里面看到我们想要的框架名字。勾选,apply。

上面有两个可选项:

Create default hibernate configuration and main class

Import database schema

第一个是创建一个系统默认的hibernate的测试类(初学Hibernate时建议勾选,因为它会 给你提供相应的一些建立session的方法及帮助),勾选后会生成如下调试代码;

第二个是导入已有的数据库Table,若此时已建立相应的Table,则可勾选,若没有则 后期在来创建。

添加完成后,点击上面的项目架构图标

进入project structure中的facets中,点击右边那个+号,就可以生成hibernate.cfg.xml。

 

下面是我们核心配置文件的具体内容:

<!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>
		<!-- 1.方言:指定数据库类型 -->
		<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
		
		<!-- 2.配置数据源 -->
		<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
		<property name="connection.url">jdbc:mysql://localhost:3306/hibernate_207</property>
		<property name="connection.username">root</property>
		<property name="connection.password">111111</property>
		
		<!-- 打印sql -->
		<property name="show_sql">true</property>
		
		<!-- 3.加载映射文件 -->
		<mapping resource="com/sxt/model/user.hbm.xml"/>
	
	</session-factory>

</hibernate-configuration>

2.6 创建映射文件

                 user.hbm.xml

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
        "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
        "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<!-- package:java对象包路径 -->
<hibernate-mapping package="com.sxt.model">
	<!-- 配置对象与table表关系 -->
	<class name="User" table="t_user">
		<!-- 指定主键 name:表示java对象属性名   column:table表中的字段 -->
		<id name="id" column="id" type="integer">
			<!-- 配置主键自增策略 -->
			<generator class="native"/>
		</id>
		<!-- 配置其他属性与字段关联关系 -->
		<property name="uname" column="uname" type="string"/>
	</class>
</hibernate-mapping>

hibernate基本数据类型映射:——可参考链接:hibernate基本数据类型映射

我们使用的IDEA,那么在IDEA中,我们配置号hibernate核心文件之后,可以通过数据库中的表来自动创建orm配置文件。 

首先我们先把数据库工具窗口打开 

然后点击小绿+,选择MySQL

把该填写的都填上。

然后点击测试连接:如果像上图一样,这个Test Connection不显示的话,点击下方的下载(蓝色的Download

然后我们就可以看到可以显示了。

保存连接之后,就可以看到数据库的具体内容:

下面是我们看到的数据库的具体内容:

然后,我们把persistent工具打开:

在这个窗口下面右击项目名:

Generate Persistence Mapping -> By Database Schema 根据数据库来创建映射。 

按照上图进行选择,注意红线框起来的部分。 

点击OK,我们可以看到不光是orm配置文件,连对应的类都帮我们建立好了。 

点开brm.xml和类文件,会发现有一些报错提示。 如果有的话,那么我们选择点击alt+enter,提示让我们锁定数据源。

直接点enter进入

鼠标点选,OK即可。(IDEA之强大,让我一天比一天喜欢)

提醒:看两种方式建立起来的brm.xml文件有什么差别,我们在学习使用快捷便利的工具的同时,不要忘记思考。另外,这种方式还给我们生成了hibernate.cfg.xml文件,里面没有给我们写所连接数据库的用户名和密码,注意添加!!!!

2.7 测试类

package com.sxt.test;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;

import com.sxt.model.User;

public class Helloworld {
	public static void main(String[] args) {
		//1.加载配置文件
		Configuration cfg = new Configuration();
		cfg.configure("hibernate.cfg.xml");
		
		//2.创建sessionFactory cfg.buildSessionFactory()已被废弃
		ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(cfg.getProperties()).build();
		SessionFactory sessionFactory = cfg.buildSessionFactory(serviceRegistry);
		
		
		//3.打开全新session
		Session session = sessionFactory.openSession();
		
		try {
			//事务
			Transaction ts = session.beginTransaction();
			
			User user = new User();
			user.setUname("bjsxt");
			//添加数据
			session.save(user);
			
			//提交事务
			ts.commit();
		} catch (Exception e) {
			
		}finally {
			//关闭连接
			if(session!=null){
				session.close();
			}
			if(sessionFactory!=null){
				sessionFactory.close();
			}
		}
		
		
	}
}

运行成功:

猜你喜欢

转载自blog.csdn.net/tao_629/article/details/82840368
今日推荐