手动配置hibernate及简单使用规范

本文详细介绍如何手动配置Hibernate,包括数据库连接、POJO类与表映射、配置文件编写,以及测试类创建,适用于初学者快速上手。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


title: 手动配置hibernate及简单使用规范

date: 2018-3-19 08:35:24

tags: [hibernate]

categories: Hibernate

keywords: 手动配置hibernate及简单使用规范


记录一下手动配置hibernate的过程及操作

准备工作 三拷三配

1.三拷;资源在网上都可以找得到

(1) 拷jdbc驱动,放在“工程/WebRoot/WEB-INF/lib”文件夹下
(2) 拷hibernate开发包,放在“工程/WebRoot/WEB-INF/lib”文件夹下
(3) 拷log4j,放在“工程/src”文件夹下

2.三配

       如:数据库有表dep(depid,depname)
(1) 配置pojo,即配置class,实现class-table一一对应;如:创建Dep类

    package com.pojo;

   public class Dep {
   	private int depid;
   	private String depname;
   	public int getDepid() {
   		return depid;
   	}
   	public void setDepid(int depid) {
   		this.depid = depid;
   	}
   	public String getDepname() {
   		return depname;
   	}
   	public void setDepname(String depname) {
   		this.depname = depname;
   	}
   }

(2) 配置pojo的配置文件,真正实现class-table的一一对应;如:创建Dep.hbm.xml文件,该文件放在同Dep类一个包内(这里是放在pojo包中);有如下基本配置:

	<?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">

	<!-- 配置的是orm关系 -->
	<!-- 该xml文件   .hbm.xml 前可以改名   这是最容易配置的文件-->
	<hibernate-mapping>
		<class name="com.pojo.Dep" table="dep"><!-- 配置的是表和类的关系 -->
			<!-- 主键的配置 -->
			<id column="depid" name="depid">
				<generator class="assigned"></generator><!-- 自己设计主键 -->
			</id>
			<!-- 非主键的配置 -->
			<property name="depname" column="depname" length="20"></property>
		</class>
	</hibernate-mapping>

(3)配置总的配置文件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">
<!-- 配置的jdbc的参数 -->
<hibernate-configuration>
	<session-factory>
		<!-- 设置jdbc访问数据库的4个参数   当要切换使用数据库时只需要修改这个部分就可以了 -->
		<property name="connection.username">sa</property><!-- 你的数据库用户名 -->
		<property name="connection.password">sasa</property><!-- 你的数据库登录密码 -->
		<property name="connection.driver_class"><!-- 驱动:各种数据库的驱动不同 -->
			com.microsoft.sqlserver.jdbc.SQLServerDriver
		</property>
		<property name="connection.url"><!-- 要使用的数据库名(s53) -->
			jdbc:sqlserver://127.0.0.1:1433;DatabaseName=s53
		</property>
		<property name="show_sql">true</property><!-- 方便起见:必须设置  显示sql -->
		<!-- 设置方言 -->
		<property name="dialect">org.hibernate.dialect.SQLServerDialect</property>
		<!-- pojo的映射文件,必加,因为在使用过程中,第一步读取配置文件操作只会读取总的配置文件而不会单独读取pojo的配置文件   -->
		<mapping resource="com/pojo/Dep.hbm.xml" />
	</session-factory>

</hibernate-configuration>

测试:创建Test测试类

	package com.test;
	import org.hibernate.Session;
	import org.hibernate.SessionFactory;
	import org.hibernate.Transaction;
	import org.hibernate.cfg.Configuration;
	import com.pojo.Dep;
	public class Test {
		public static void main(String[] args) {
			// 1.读取总的配置文件
			Configuration configuration = new Configuration().configure();
			// 2.创建session工厂
			SessionFactory factory = configuration.buildSessionFactory();
			// 3.得到session 就是对connection对象进行了封装
			Session session = factory.openSession();
			// 4.开启事务 -- 执行查询操作时可以不开事务
			Transaction transaction = session.beginTransaction();
			Dep dep = new Dep();
			dep.setDepid(2);
			dep.setDepname("李四");
			// 5.持久化
			session.save(dep);// 保存
			// 6.提交事务
			transaction.commit();
			// 7.关闭session
			session.close();
		}
	}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值