hibernate 框架搭建
Posted 赵天成123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hibernate 框架搭建相关的知识,希望对你有一定的参考价值。
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
一、环境搭建:(将jar包导入项目lib文件夹下)
导入hibernate的jar包:lib/required文件夹下的所有jar包
导入jdbc的jar包
二、配置hibernate (建立hibernate.cfg.xml文件)
在project文件夹中搜索cfg.xml文件,里面找到带username,password,jdbc的来改
每个配置的值,在project/etc找到hibernate.properrties文件找
<!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> <property name="hibernate.dialect">org.hibernate.dialect.mysqlDialect</property> <!--数据库方言 ,在project/etc找到hibernate.properrties文件,找到数据库对应的方言 --> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <!-- 驱动 --> <property name="hibernate.connection.username">root</property> <!-- 数据库账号 --> <property name="hibernate.connection.password"></property> <!-- 数据库密码 --> <property name="hibernate.connection.url">jdbc:mysql://127.0.0.1:3306/mydb</property><!-- 数据库链接 --> <property name="show_sql">true</property> <!--在控制台打印出sql语句 true为打印,flase为不打印 --> <mapping resource="com/maya/model/family.hbm.xml"/> <!-- mapping 映射加载 用/隔开,不是用.隔开 --> </session-factory> </hibernate-configuration>
三、准备数据库
四、准备实体类(get set)
五、准备映射文件(文件名.hbm.xml 文件名对应着实体类的名)
在project文件夹中搜索hbm.xml文件,复制到与实体类相同的包内,实体类对应着映射文件,hibernate的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"> <hibernate-mapping default-lazy="false" package="com.maya.model"> <class name="Family" table="family"> <!-- 实体类 对应的哪个表 --> <id name="ids"> <!-- id代表的是主键列 type 、column 如果实体类和数据库表中的数据类型一样 可以省略 --> <generator class="assigned"/> <!-- 主键列如何产生的assigned 非自增长,赋值 native自增长--> </id> <property name="infoCode"/> <!-- property代表非主键列 --> <property name="name"/> <property name="title"/> <property name="firm"/> <property name="orders"/> </class> </hibernate-mapping>
六、测试配置是否正确
package com.maya.test; import org.hibernate.*; import org.hibernate.cfg.*; //org.hibernate.cfg.Configuration;需要的是这个包 public class Test { public static void main(String[] args) { //读取hibernate.cfg.xml文件的配置,加载Hibernate的类库 Configuration config=new Configuration().configure();//自动找到hibernate.cfg.xml 读取出里面的配置 SessionFactory factory=config.buildSessionFactory(); //factory意思是工厂 Session session=factory.openSession(); //打开一个session //利用session 对数据库进行CRUD操作(增删改查) // session.save(arg0) 保存 update(arg0) 更新 createQuery(arg0) 查询 delete(arg0)删除 System.out.print(session.isConnected()); //测试一下是否能够链接数据库 session.close(); } }
注意:这里的Session 和web中的session不一样
这里的session是程序与数据库之间的会话,它是由hibernate控制管理的
以上是关于hibernate 框架搭建的主要内容,如果未能解决你的问题,请参考以下文章
Spring+Spring MVC+Hibernate框架搭建实例
SSH(Struts2+Spring+Hibernate)框架搭建流程
ssh(sturts2_spring_hibernate) 框架搭建之spring