- 浏览: 158893 次
- 性别:
- 来自: 杭州
文章分类
最新评论
1.准备条件:
1.1 创建hibernate2工程
1.2 导入hibernate包
1.3 创建hibernate2数据库,以及customers表
2. Customers.java
3. hibernate.cfg.xml
4.customers.hbm.xml
5. HibernateTest.java
1.1 创建hibernate2工程
1.2 导入hibernate包
1.3 创建hibernate2数据库,以及customers表
2. Customers.java
package com.hibernate2.bean; import java.sql.Date; import java.sql.Timestamp; public class Customers { private Long id; private String name; private String email; private String password; private Integer phone; private String address; private char sex; private boolean is_married; private String description; private byte[] image; private Date birthday; private Timestamp registered_time; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public Integer getPhone() { return phone; } public void setPhone(Integer phone) { this.phone = phone; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public char getSex() { return sex; } public void setSex(char sex) { this.sex = sex; } public boolean isIs_married() { return is_married; } public void setIs_married(boolean isMarried) { is_married = isMarried; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public byte[] getImage() { return image; } public void setImage(byte[] image) { this.image = image; } public Date getBirthday() { return birthday; } public void setBirthday(Date birthday) { this.birthday = birthday; } public Timestamp getRegistered_time() { return registered_time; } public void setRegistered_time(Timestamp registeredTime) { registered_time = registeredTime; } }
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"> <!-- Generated by MyEclipse Hibernate Tools. --> <hibernate-configuration> <session-factory> <!-- <property name="format_sql">true</property> --> <property name="show_sql">true</property> <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/hibernate2</property> <property name="hibernate.connection.username">root</property> <property name="hibernate.connection.password">root</property> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="dialect">org.hibernate.dialect.MySQLDialect</property> <mapping resource="customers.hbm.xml" /> </session-factory> </hibernate-configuration>
4.customers.hbm.xml
<?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> <class name="com.hibernate2.bean.Customers" table="customers"> <id name="id" column="id" type="long"> <generator class="increment"></generator> </id> <property name="name" column="name" type="string"></property> <property name="email" column="email" type="string"></property> <property name="password" column="password" type="string"></property> <property name="phone" column="phone" type="integer"></property> <property name="address" column="address" type="string"></property> <property name="sex" column="sex" type="char"></property> <property name="is_married" column="is_married" type="boolean"></property> <property name="description" column="description" type="text"></property> <property name="image" column="image" type="binary"></property> <property name="birthday" column="birthday" type="date"></property> <property name="registered_time" column="registered_time" type="timestamp"></property> </class> </hibernate-mapping>
5. HibernateTest.java
package com.hibernate2.bean; import java.io.FileOutputStream; import java.io.InputStream; import java.io.OutputStream; import java.io.PrintStream; import java.sql.Date; import java.sql.Timestamp; import java.util.Iterator; import java.util.List; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; public class HibernateTest { private static SessionFactory sessionFactory; static{ try{ sessionFactory=new Configuration().configure().buildSessionFactory(); }catch(Exception ex){ System.out.println("创建sessionFactory时出错"); } } private void saveCustomer(Customers cust){ Session session=sessionFactory.openSession(); Transaction tx=null; try{ tx=session.beginTransaction(); session.save(cust); tx.commit(); }catch(Exception ex){ System.out.println("保存数据时出错"); if(tx!=null){ tx.rollback(); } }finally{ session.close(); } } @SuppressWarnings("unchecked") private void findAllCustomer(PrintStream out){ Session session=sessionFactory.openSession(); Transaction tx=null; try{ tx=session.beginTransaction(); String hql="from Customers as c order by c.name asc"; Query query=session.createQuery(hql); List custs=query.list(); for(Iterator it=custs.iterator();it.hasNext();){ printCustomer((Customers)it.next(), out); } tx.commit(); }catch(Exception ex){ System.out.println("保存数据时出错"); if(tx!=null){ tx.rollback(); } }finally{ session.close(); } } private void loadAndUpdateCustoemr(Long id,String address){ Session session=sessionFactory.openSession(); Transaction tx=null; try{ tx=session.beginTransaction(); Customers cust=(Customers)session.load(Customers.class, id); cust.setAddress(address); tx.commit(); }catch(Exception ex){ System.out.println("保存数据时出错"); if(tx!=null){ tx.rollback(); } }finally{ session.close(); } } @SuppressWarnings("unchecked") private void deleteCutomer(Customers cust){ Session session=sessionFactory.openSession(); Transaction tx=null; try{ tx=session.beginTransaction(); List custs=session.createQuery("from Customers").list(); for(Iterator it=custs.iterator();it.hasNext();){ session.delete(it.next()); } tx.commit(); }catch(Exception ex){ System.out.println("保存数据时出错"); if(tx!=null){ tx.rollback(); } }finally{ session.close(); } } private void printCustomer(Customers cust,PrintStream out) throws Exception{ OutputStream output=new FileOutputStream("new_photo.gif"); byte[] buffer=cust.getImage(); output.write(buffer); out.println("--------------以下是"+cust.getName()+"的信息-----------------------"); out.println("ID:"+cust.getId()); out.println("name:"+cust.getName()); out.println("email:"+cust.getEmail()); out.println("password:"+cust.getPassword()); out.println("phone:"+cust.getPhone()); out.println("address:"+cust.getAddress()); out.println("sex:"+cust.getSex()); String married=cust.isIs_married()==true?"已婚":"未婚"; out.println("is_married:"+married); out.println("description:"+cust.getDescription()); out.println("birthday:"+cust.getBirthday()); out.println("registered_time:"+cust.getRegistered_time()); } private void test(PrintStream out) throws Exception{ Customers customer=new Customers(); customer.setName("zs"); customer.setEmail("zs@163.com"); customer.setPassword("123"); customer.setPhone(123456789); customer.setAddress("a new address"); customer.setSex('男'); customer.setIs_married(true); customer.setDescription("a new description"); InputStream in=this.getClass().getResourceAsStream("photo.gif"); byte[] buffer=new byte[in.available()]; in.read(buffer); customer.setImage(buffer); customer.setBirthday(Date.valueOf("1980-1-1")); saveCustomer(customer); // findAllCustomer(out); loadAndUpdateCustoemr(customer.getId(), "update address"); // deleteCutomer(customer); } public static void main(String[] args) throws Exception{ new HibernateTest().test(System.out); sessionFactory.close(); } }
发表评论
-
struts2.1改变配置文件默认位置
2011-03-31 14:01 788<filter> <init-par ... -
整合SSH2时需注意几点
2010-12-10 16:35 8501.需要导入struts2-spring-plugin-2.1 ... -
ssh2
2010-11-11 13:56 1857准备条件: 1. 建WEB工程:ssh2 2. 建数据库ssh ... -
spring整合hibernate
2010-11-08 08:59 841准备条件: 1. 创建数据库hibernatespring,表 ... -
代理模式
2010-11-08 08:58 848一. 静态代理 1. Subject.java packa ... -
单例模式
2010-11-08 08:57 6581. Singleton.java package com ... -
spring整合struts2
2010-11-08 08:56 736前言: 1. 创建工程strutsspring 2. 导入st ... -
反射案例
2010-11-08 08:56 708案例一: 1. Test.java package com ... -
spring配置文件中集合类型的配置
2010-11-08 08:54 952前言: Spring中对于有些bean会有集合类型的属性,以下 ... -
spring用到的设计模式-工厂模式
2010-11-08 08:53 1252Spring用到的设计模式之一 核心:用到工厂设计模式 1. ... -
读取applicationContext.xml的两种方式
2010-11-08 08:52 957第一种: ClassPathResource cpr=ne ... -
用图形查看spring配置文件依赖关系
2010-11-08 08:51 938myeclipse提供了这样的功能: window->s ... -
spring的基本操作IOC
2010-11-08 08:51 736前言: Spring通过IOC/DI来实现获取对象 准备: 1 ... -
spring的基本操作-反射
2010-11-08 08:50 1110前言: Spring通过反射来实现获取对象 准备: 1. 建S ... -
Struts2整合Hibernate
2010-10-29 19:00 20181. 准备条件: 1.1 在MYSQL中创建hibernate ... -
hibernate级联操作
2010-10-29 18:59 898准备条件: 1. 创建hibernate3工程 2. 导入hi ... -
JDBC
2010-10-29 18:56 768一. JDBC连接Access实例 1. 准备条件 1.1 创 ... -
文件上传
2010-10-26 14:49 6931. upload.jsp <%@ page lan ... -
调用指定Action的方法
2010-10-26 14:48 763主要在配置文件中配置下: 注:如应用于增删改查的类 1. st ... -
I18N
2010-10-26 14:47 811一, 查看当前操作系统中可用的语言 package com ...
相关推荐
Hibernate基本数据操作方法 java struts hibernate
在实际开发中,可能还需要实现事务管理、错误处理等高级功能,但这已经涵盖了Hibernate基本操作的流程。通过这种方式,你可以轻松地在MyEclipse中使用Hibernate来管理数据库操作,简化开发过程。
这个压缩包包含了Hibernate的基础jar包,这些jar文件是开发Hibernate应用所必需的库文件,它们提供了Hibernate的核心功能和相关依赖。同时,还包含了Junit4测试工具,这是进行单元测试的常用框架,对于确保代码质量...
本文将详细介绍如何进行Hibernate环境搭建,以及如何进行基本操作的封装,我们将以MySQL开源数据库作为数据存储后端。 一、Hibernate环境搭建 1. **安装MySQL数据库**: 首先,你需要在本地或者服务器上安装MySQL...
总的来说,这个"hibernate基本jar包"为Java开发者提供了完整的Hibernate ORM框架,能够高效、便捷地进行数据库操作,提高开发效率。不过,需要注意的是,随着Java和Hibernate版本的更新,这些库文件可能会有所变化,...
【Hibernate 基础】是Java开发中一个重要的部分,主要关注如何将对象模型与关系数据库进行映射,以简化数据库操作。本PPT由传智播客制作,旨在帮助学习者掌握Hibernate的基础知识和应用。 首先,我们需要理解基于B/...
本压缩包提供的"baseDAO"文件,包含了一个详细注释的BaseDAO实现,旨在提供一种易于理解和使用的Hibernate基础操作模板。 1. **Hibernate框架简介** Hibernate是一个开源的对象关系映射(ORM)框架,它简化了Java...
1. **Hibernate基本概念**:了解Hibernate的核心组件,如Configuration、SessionFactory、Session、Transaction以及Criteria API、HQL(Hibernate Query Language)。 2. **实体类与表的映射**:学习如何通过注解或...
本篇文章将深入探讨`Hibernate基础jar包`的构成,以及它们在Java Hibernate框架中的作用。 首先,Hibernate的核心jar包是实现ORM功能的基础。这些jar包包括但不限于以下: 1. **hibernate-core.jar**:这是...
上述代码展示了Hibernate在插入更新和删除操作时的基本流程。在实际应用中,开发者需要根据具体的业务逻辑和需求来调整代码,例如,在插入更新操作时,可能需要根据主键是否已存在来决定是插入新记录还是更新现有...
CRUD是创建(Create)、读取(Read)、更新(Update)和删除(Delete)的首字母缩写,是数据库管理的基本操作。在Hibernate中,我们可以便捷地进行这些操作。 1. **创建(Create)** - 在Hibernate中,我们首先...
**Hibernate 框架概述** Hibernate 是一个开源的对象关系映射(ORM)框架,它允许开发者用面向对象的方式来...理解并熟练掌握 Hibernate 的基本概念、配置、操作及优化策略,对于开发高效、稳定的 Java 应用至关重要。
`HibernateDemo(hibernate基本用法演示)` 是一个针对 Hibernate 框架的基础操作示例项目。Hibernate 是一款强大的 Java ORM(对象关系映射)框架,它允许开发者在 Java 应用程序中以面向对象的方式处理数据库交互,...
1. Hibernate的核心库:包括`hibernate-core`,它包含了Hibernate的基本API和实现,如Session接口、Transaction管理等。 2. 数据库驱动:根据实际使用的数据库(如MySQL、Oracle等),需要对应的JDBC驱动库。 3. ...
4. **增删改操作**:增删改操作是任何数据管理应用的基础。在Struts2+Hibernate的环境中,新增数据时,创建一个新的实体对象,设置属性,然后通过Hibernate的Session保存到数据库;删除操作通常是根据ID查找对象,...
**Hibernate基本配置演示** 在Java开发中,Hibernate是一款强大的对象关系映射(ORM)框架,它简化了数据库操作,使得开发者能够用Java对象来处理数据。这篇教程将深入讲解Hibernate的基本配置过程,确保你能顺利...
### Hibernate基础知识点详解 #### 一、什么是对象关系映射(ORM)以及为什么使用ORM? 在企业级应用开发中,持久层(persistence layer)占据了非常重要的地位。它主要负责处理与数据库之间的交互,包括数据的...