在JAVA EE中配置hibernate以及hibernate hello world
2017-03-29 00:00
344 查看
摘要: hibernate是java中用于数据持久化的框架,是一个比较典型的ORM框架。
这篇文章主要介绍hibernate的配置以及如何实现hello world。至于如何使用maven等工具获取到hibernate的jar文件以及配置文件请大家自行解决。
注意,在eclipse中使用hibernate需要先下载其插件。
1.hibernate介绍:
hibernate核心内容是ORM(关系对象模型)。可以将对象自动的生成数据库中的信息,使得开发更加的面向对象。这样作为程序员就可以使用面向对象的思想来操作数据库,而不用关心繁琐的JDBC。所以,Hibernate处于三层架构中的D层(持久层)。
通俗的讲:hibernate是关系--对象映射框架,意思就是hibernate可以把数据库中的表对应到java的普通对象(POJO),通过xml映射文件。然后hibernate将数据库操作封装在一个类当中,当用户需要存数据,取数据的时候,就不用使用JDBC了,直接调用方法即可。
2.项目中使用hibernate时需要什么?如何整合?
hibernate的jar文件可以在hibernate官网下载到,若是没有直接下载链接,可以使用maven项目自动下载。
jar文件如下:
是由一部分核心jar包和其依赖包所组成。将这些jar包复制到项目的classpath中即可
3.将jar包加入classpath中,然后进行下面几步操作:
(1).建立包和对应的java文件:
(2).在类路径下新建一个个xml文件,类型是hbm.xml类型:
这个文件对应着类的映射类型,将其对应到同名的数据库表名:
这个文件中的信息连小学6年级的同学都能看懂是什么意思。
(3)紧接着在项目中右键建立一个新的source foler,(不是folder),命名为conf,可以存一些配置文件,在资源文件夹中新建一个hibernate的配置文件,用于配置hibernate的连接参数和一些其他的参数。(包括数据库表和实体类之间的映射表的导入):
在这个xml中,有5种信息配置,大家请自己仔细看看。
(4).然后就差不多配置完了,现在剩下的就是我们要在项目中使用hibernate来进行数据持久化和查询等相关操作了。比如登陆,就可以从数据库中取数据,使用get()方法。具体测试代码如下:
这篇文章主要介绍hibernate的配置以及如何实现hello world。至于如何使用maven等工具获取到hibernate的jar文件以及配置文件请大家自行解决。
注意,在eclipse中使用hibernate需要先下载其插件。
1.hibernate介绍:
hibernate核心内容是ORM(关系对象模型)。可以将对象自动的生成数据库中的信息,使得开发更加的面向对象。这样作为程序员就可以使用面向对象的思想来操作数据库,而不用关心繁琐的JDBC。所以,Hibernate处于三层架构中的D层(持久层)。
通俗的讲:hibernate是关系--对象映射框架,意思就是hibernate可以把数据库中的表对应到java的普通对象(POJO),通过xml映射文件。然后hibernate将数据库操作封装在一个类当中,当用户需要存数据,取数据的时候,就不用使用JDBC了,直接调用方法即可。
2.项目中使用hibernate时需要什么?如何整合?
hibernate的jar文件可以在hibernate官网下载到,若是没有直接下载链接,可以使用maven项目自动下载。
jar文件如下:
是由一部分核心jar包和其依赖包所组成。将这些jar包复制到项目的classpath中即可
3.将jar包加入classpath中,然后进行下面几步操作:
(1).建立包和对应的java文件:
package org.cat.test; public class User { private int userid; private String username; private String userpassword; ..........//getter and setter ..........//constructors //toString @Override public String toString() { return "User [userid=" + userid + ", username=" + username + ", userpassword=" + userpassword + "]"; } }
(2).在类路径下新建一个个xml文件,类型是hbm.xml类型:
这个文件对应着类的映射类型,将其对应到同名的数据库表名:
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <!-- Generated 2017-3-28 23:06:05 by Hibernate Tools 3.4.0.CR1 --> <hibernate-mapping> <class name="org.cat.test.User" table="USER"> <id name="userid" type="int"> <column name="user_id" /> <generator class="native" /> </id> <property name="username" type="java.lang.String"> <column name="user_name" /> </property> <property name="userpassword" type="java.lang.String"> <column name="user_password" /> </property> </class> </hibernate-mapping>
这个文件中的信息连小学6年级的同学都能看懂是什么意思。
(3)紧接着在项目中右键建立一个新的source foler,(不是folder),命名为conf,可以存一些配置文件,在资源文件夹中新建一个hibernate的配置文件,用于配置hibernate的连接参数和一些其他的参数。(包括数据库表和实体类之间的映射表的导入):
<?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"> <hibernate-configuration> <session-factory> <!--配置数据库连接参数 --> <property name="connection.username">root</property> <property name="connection.password">1314</property> <property name="connection.driver_class">com.mysql.jdbc.Driver</property> <property name="connection.url">jdbc:mysql://localhost:3306/mrtah</property> <!-- 配置hibernate基本信息 --> <!-- 数据库方言 --> <property name="dialect">org.hibernate.dialect.MySQLInnoDBDialect</property> <!-- console diaplay sqls --> <property name="show_sql">true</property> <!-- 對sql進行格式化 --> <property name="format_sql">true</property> <!-- 指定自動生成數據表的策略 --> <property name="hbm2ddl.auto">update</property> <!-- 指定關聯的.hbm.xml文件 --> <mapping resource="org/cat/test/User.hbm.xml"/> </session-factory> </hibernate-configuration>
在这个xml中,有5种信息配置,大家请自己仔细看看。
(4).然后就差不多配置完了,现在剩下的就是我们要在项目中使用hibernate来进行数据持久化和查询等相关操作了。比如登陆,就可以从数据库中取数据,使用get()方法。具体测试代码如下:
package org.cat.test; import static org.junit.Assert.*; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import org.hibernate.service.ServiceRegistry; import org.hibernate.service.ServiceRegistryBuilder; import org.junit.Test; /** * @author Mrruan qkmc@outlook.com: * @version 类诞生:2017年3月28日 下午11:09:26 */ public class testHibernate { @Test public void test() { fail("Not yet implemented"); } @Test public void m1(){ //1.創建sessionfactory SessionFactory sessionFactory = null; Configuration configuration = new Configuration().configure(); //3.0前 //sessionFactory = configuration.buildSessionFactory(); ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()) .buildServiceRegistry(); sessionFactory = configuration.buildSessionFactory(serviceRegistry); //2.session Session session = sessionFactory.openSession(); //3.open transaction Transaction transaction = session.beginTransaction(); //4.save data User user = new User("liyanlin","liyanlin520"); //保存到数据库 //session.save(user); //从数据库获取一个数据吧 User user2 = (User) session.get(User.class, 1); System.out.println(user2); //5.commite transaction transaction.commit(); //6.close session session.close(); //7.close session factory sessionFactory.close(); } }
相关文章推荐
- JAVAWEB开发之Hibernate详解(一)——Hibernate的框架概述、开发流程、CURD操作和核心配置与API以及Hibernate日志的使用
- hibernate.cfg.xml配置详解 以及 显示并格式化SQL语句
- Hibernate入门案例配置以及增、删、改、查看
- hibernate正向生成数据库表以及配置——Student.hbm.xml
- hibernte与spring结合时,配置使hibernate的session的生命周期延迟,以及配置httpsession的时间
- Spring学习文档_管理数据源,以及配置Hibernate关系
- DBCP,C3P0,Proxool,BoneCP详细参数介绍 以及 Hibernate配置数据库连接池的三种方式介绍
- eclipse 下配置hibernate以及第一个hibernate小程序
- hibernate联合主键生成策略以及一对多配置
- JAVA EE Hibernate基础一之环境配置
- Intellij Idea 15 下新建 Hibernate 项目以及如何添加配置
- hibernate.cfg.xml配置详解 以及 显示并格式化SQL语句
- hibernate以及配置文件详解
- hibernate正向生成数据库表以及配置——Teacher.hbm.xml
- Hibernate支持第三方的连接池,官方推荐的连接池是C3P0,Proxool,以及DBCP。在配置连接池时需要注意的有三点
- Hibernate二级缓存以及ehcache的搭建配置(注解方式)
- Hibernate二级缓存以及ehcache的搭建配置
- ant深入浅出(一)ant+xdoclet 生成hibernate配置文件以及实体映射文件
- 学习三大框架Struts2 、 Hibernate 、 Spring时,涉及到三大框架的配置文件以及整合。
- hibernateTemplate以及spring中的hibernateDaosupport的配置