- 浏览: 145079 次
- 性别:
- 来自: 合肥
文章分类
最新评论
-
hzyhush:
Java模拟登录新浪微博 -
meaemz:
大神,这是完整的代码吗?怎么没有没有main(),我要怎么调用 ...
Java模拟登录新浪微博 -
meaemz:
大神,这是完整的代码吗?怎么没有没有main(),是要自己写一 ...
Java模拟登录新浪微博 -
c_he_n:
最后执行结果怎么获取到url
Java模拟登录新浪微博 -
hvang1988:
18.JEgg Java多线程开发包 ,这个到底怎么样哦,资料 ...
Java 常用的第三方组件
有很长一段时间没有使用hibernate进行开发了,最近闲来无事,温习一下hibernate开发。搭建hibernate开发环境,下载hibernate3.3.2的jar包。所用数据库是mysql。
在使用hibernate3.3.2中要注意以下问题:
Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/helpers/NOPLoggerFactory
这是由于hibernate-distribution-3.3.2.GA中的带有的slf4j-api-1.5.8和最新下载的slf4j-1.6.1不兼容造成的,下载一个slf4j-1.5.8包就解决问题了。
一、导入hibernate使用的Jar包
见jar.jpg的图
二、配置hibernate的映射文件
三、创建User的bean
部分代码如下:
并配置User的映射文件:
四 、导入数据库生成表结构的工具类
还有一个工具类如下:
五、测试类
在使用hibernate3.3.2中要注意以下问题:
Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/helpers/NOPLoggerFactory
这是由于hibernate-distribution-3.3.2.GA中的带有的slf4j-api-1.5.8和最新下载的slf4j-1.6.1不兼容造成的,下载一个slf4j-1.5.8包就解决问题了。
一、导入hibernate使用的Jar包
见jar.jpg的图
二、配置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="hibernate.format_sql">true</property> <property name="hibernate.show_sql">true</property> <property name="connection.url"> jdbc:mysql://localhost:3306/test </property> <property name="connection.username">root</property> <property name="connection.password">sa</property> <property name="connection.driver_class"> com.mysql.jdbc.Driver </property> <property name="dialect"> org.hibernate.dialect.MySQLDialect </property> <mapping resource="org/outman/domain/User.hbm.xml" /> </session-factory> </hibernate-configuration>
三、创建User的bean
部分代码如下:
public class User implements java.io.Serializable { private static final long serialVersionUID = 1L; private Integer id; private String name; private String pwd; private Boolean verify; private Date registerDate; private BigDecimal salary; ...... }
并配置User的映射文件:
<?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"> <hibernate-mapping package="org.outman.domain"> <class name="User" table="t_user"> <!--id name="id" type="integer" column="_id"> <generator class="identity" /> </id--> <!-- Oracle --> <!--id name="id" type="integer" column="_id"> <generator class="sequence"> 如果不写,Hibernate建默认的sequence <param name="sequence">user_seq</param> </generator> </id--> <id name="id" type="integer" column="_id"> <!-- Hibernate根据方言来确定 identity、sequence、... --> <generator class="native"> <param name="sequence">user_seq</param> </generator> </id> <property name="name" type="string" column="_name" /> <property name="pwd" type="string" column="_pwd" /> <property name="verify" type="yes_no" column="_verify" /> <property name="registerDate" type="date" column="_register_date" /> <property name="salary" type="big_decimal" column="_salary" /> </class> </hibernate-mapping>
四 、导入数据库生成表结构的工具类
package org.outman.util; import org.hibernate.cfg.Configuration; import org.hibernate.tool.hbm2ddl.SchemaExport; public class ExportDB { public static void main(String[] args) { // 读取hibernate.cfg.xml文件 Configuration cfg = new Configuration().configure(); SchemaExport export = new SchemaExport(cfg); export.create(true, true); } }
还有一个工具类如下:
package org.outman.util; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; public class HibernateUtil { private static SessionFactory factory; private static Configuration conf; static { conf = new Configuration(); conf.configure(); factory = conf.buildSessionFactory(); } public static Session openSession() { return factory.openSession(); } }
五、测试类
package org.outman.test; import java.math.BigDecimal; import java.util.Date; import java.util.List; import junit.framework.TestCase; import org.hibernate.HibernateException; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import org.outman.domain.User; import org.outman.util.HibernateUtil; public class MyTest extends TestCase { public void testSaveUser() { // 调用 Hibernate API // 加载配置文件 Configuration conf = new Configuration(); // 按照默认的路径和文件名装载配置文件 conf.configure(); // hibernate.cfg.xml // conf.configure(File file); // conf.addClass(User.class); // 装载和User类对应的映射文件 // User.hbm.xml // 1 重量级的对象 // 2 线程安全的对象 SessionFactory factory = conf.buildSessionFactory(); // Session提供了ORM操作的接口 // 相当于JDBC的Connection Session session = null; Transaction tx = null; try { session = factory.openSession(); User user = new User(); user.setName("java"); user.setPwd("123456"); user.setVerify(false); user.setRegisterDate(new Date()); user.setSalary(new BigDecimal("12345.67")); tx = session.getTransaction(); tx.begin(); session.save(user); tx.commit(); } catch (HibernateException e) { e.printStackTrace(); tx.rollback(); } finally { session.close(); } } public void testDeleteUser() { Session session = HibernateUtil.openSession(); Transaction tx = session.getTransaction(); tx.begin(); User user = new User(); user.setId(8); session.delete(user); tx.commit(); session.close(); } public void testGetUser() { Session session = HibernateUtil.openSession(); // 延缓加载 // User user = (User) session.load(User.class, 9); User user = (User) session.get(User.class, 9); System.out.println("----------"); System.out.println(user.getName() + "," + user.getPwd()); session.close(); } public void testUpdateUser() { Session session = HibernateUtil.openSession(); Transaction tx = session.getTransaction(); tx.begin(); User user = new User(); user.setId(1); user.setName("java"); user.setPwd("88888888"); session.update(user); // session.saveOrUpdate(user); tx.commit(); session.close(); } @SuppressWarnings("unchecked") public void testQueryUser() { Session session = HibernateUtil.openSession(); // HQL Hibernate Query Language // SQL Query query = session.createQuery("from User u where u.name=?"); query.setParameter(0, "java"); // Iterator<User> it = query.iterate(); // while (it.hasNext()) { // User user = it.next(); // System.out.println(user.getName() + "," + user.getPwd()); // } List<User> userList = query.list(); for (User user : userList) { System.out.println(user.getName() + "," + user.getPwd()); } session.close(); } }
发表评论
-
项目操作日志记录(方法级别)
2019-06-12 16:45 1016在项目中要记录操作日志,可以通过spring的Aop技术去实现 ... -
spring mybatis多数据源切换(2)
2019-06-12 16:35 463在上一篇文章中写到,多数据源的切换是使用Java代码调用的,现 ... -
spring mybatis多数据源切换(1)
2019-06-05 23:00 459项目中既要连接mysql数据库又要连接sever sql数据库 ... -
Spring定时器的功能开发
2016-12-05 16:59 22051、使用quartz.jar包实现定时器功能,首先在项目中引入 ... -
Maven多模块SSM框架搭建
2016-12-05 15:07 1594整合SSM和Maven多模块,搭建一个简单的开发架构,具体的做 ... -
Hibernate缓存机制分析
2015-04-09 23:18 691复制代码 您可以通过点击 右下角 的按钮 来对文章内容作出评价 ... -
Spring管理事务的几种方式
2015-04-09 22:33 997把Hibernate用到的数据源Datasource,Hibe ... -
Hibernate注解说明
2015-04-03 18:03 844/** * * @author liuguang ... -
struts2请求过程源码分析
2015-02-04 21:08 659struts2请求过程源码分析 这篇文章写的很好 分析很透彻 ... -
spring和mybatis泛型接口的整合(一)
2015-02-03 20:42 204621、这次使用spring和mybatis进行整合,使用spri ... -
spring和ibatis综合应用入门示例
2012-03-20 20:00 12901、最近几天在学习ibatis ... -
spring开发所需jar包
2012-03-14 09:17 1177spring2.5开发所需的jar包,上传到这里,方便下载使用 ... -
ibatis自动生成主键
2012-03-13 10:53 1080很多数据库支持自动生成主键的数据类型如(mysql)。不 ... -
ibatis入门教程
2012-03-12 20:41 184551、本文通过几个简单的示例,实现ibatis的增删改查的功能。 ... -
ibatis一对多示例
2012-03-12 15:20 15781、在实际开发中,iBATIS框架已经很普遍的使用,然而我们常 ...
相关推荐
《DWR + Hibernate入门示例代码详解》 在IT领域,DWR(Direct Web Remoting)和Hibernate是两个非常重要的工具,它们分别处理Web应用程序的远程调用和对象关系映射。本文将深入探讨如何结合DWR与Hibernate,通过一...
【Hibernate入门示例】 Hibernate是一款强大的Java对象关系映射(ORM)框架,它极大地简化了数据库操作,使得开发者可以使用面向对象的方式处理数据库事务。在本文中,我们将深入探讨Hibernate的核心概念,包括配置...
**Hibernate 框架概述** Hibernate 是一个开源的对象关系映射(ORM)框架,它允许开发者用面向对象的方式来处理数据库操作。在 Java 开发中,Hibernate 提供了一种桥梁,将传统的 SQL 数据库操作转化为更加灵活、...
**标题:“Hibernate3完整入门示例含jar包”** Hibernate是一个强大的Java库,它作为对象关系映射(ORM)框架,使得开发人员可以更轻松地处理数据库操作。在这个压缩包中,包含的是Hibernate3的入门示例,以及必要...
【hibernate入门示例】 Hibernate 是一个开源的对象关系映射(ORM)框架,它允许Java开发者以面向对象的方式操作数据库。在这个入门示例中,我们将深入理解Hibernate的基本概念、配置以及如何通过它来实现数据的...
**hibernate入门小示例** 在这个入门教程中,我们将探讨如何使用Hibernate框架在MyEclipse集成开发环境中,配合Oracle数据库进行基本的CRUD(创建、读取、更新和删除)操作。同时,我们还将利用JUnit进行单元测试,...
hibernate-3.4入门的简单示例,用注解的方式操作oracle数据库。源码导入可运行。 还包括hibernate-annotations-3.4.0.GA.zip、hibernate-distribution-3.3.2.GA-dist.zip、slf4j-1.5.8.zip、ojdbc14.jar
**初学Hibernate,Hibernate入门** Hibernate是一个开源的对象关系映射(ORM)框架,它为Java开发者提供了方便的数据持久化服务。在Java应用中,通过Hibernate,开发者可以将数据库操作抽象成对象模型,使得代码...
hibernate 入门:10分钟跑起这个hibernate 示例程序 (图解、附源码http://download.csdn.net/source/650851)
Hibernate3.3.1,MySQL5.1.36 独立的Java Application源程序,完整的Hibernate3.3.1入门级(配置)完整示例. 未用Eclipse或MyEclipse,JC几乎纯手工实现,含所需库文件. 2009-12-15
《Spring4MVC与Hibernate4入门实战指南》 在当今的Java Web开发领域,Spring MVC和Hibernate是两个不可或缺的重要框架。Spring4MVC作为Spring框架的一部分,提供了强大的模型-视图-控制器(MVC)架构支持,而...
### Hibernate入门教程知识点详解 #### 一、Hibernate框架简介 **Hibernate** 是一款开放源代码的**对象关系映射(Object-Relational Mapping,简称ORM)**框架,它为Java应用提供了一种高效的机制,用于处理Java...
Hibernate是一个开放源代码的O/R Mapping (对象关系映射框架),它对JDBC进行了轻量级...而本文通过几个简单的示例抛砖引玉,让读者可以快速的上手,学会在jbuilder下配置hibernate,并利用hibernate与数据库进行交互。
《MyEclipse Hibernate 快速入门中文版》是专为初学者设计的指南,旨在帮助开发者迅速掌握在MyEclipse集成开发环境中使用Hibernate框架的基本操作和应用。此资源包括一个HTML文档(MyEclipse_Hibernate_Quickstart_...
Hibernate 是一个开源的对象关系映射(ORM)框架,它允许Java开发者在Java应用程序中操作数据库,而无需直接编写SQL语句。...通过阅读文档、参考书籍和编写示例代码,可以深入理解和掌握Hibernate。
**Hibernate入门源代码详解** Hibernate 是一款开源的对象关系映射(ORM)框架,它极大地简化了Java应用程序对数据库的操作。这个资源包包含了“chapter07”目录下的源代码,是学习Hibernate基础知识的理想起点。让...
【Hibernate快速入门教程】 在Java开发中,Hibernate是一个非常重要的框架,它实现了对象关系映射(ORM)技术,使得开发者可以使用面向...这个快速入门教程提供了清晰的步骤和简单的示例,是学习Hibernate的绝佳起点。
这个文件可能包含了关于Hibernate入门的初步讲解,包括基本概念、环境配置、简单数据插入的示例代码等。 **总结** Hibernate作为Java的ORM框架,简化了数据库操作,使得开发者可以更加专注于业务逻辑而不是底层...
本压缩包提供了一个基础的Hibernate入门示例,包括了必要的配置文件和测试代码,适合初学者学习理解Hibernate的工作原理。 1. **Hibernate概述** Hibernate是一个开源的ORM框架,它将Java类与数据库表进行映射,...