我的环境是:eclipse 、mysql数据库。
一:先创建一个普通的java项目。
步骤:File→new→Project 。如果直接看不到Project 就选择Other →General→Project
在project name处输入项目名字。其他选项根据需要填写。
二:导入hibernate需要的包。
所需要的包:<!--StartFragment -->
<!--StartFragment -->
hibernate3.jar
ejb3-persistence.jar
antlr-2.7.6.jar
commons-collections-3.1.jar
dom4j-1.6.1.jar
javassist-3.12.0.GA.jar
jta-1.1.jar
slf4j-api-1.6.1.jar
步骤:点击项目名称右键→Propertise(最后一个属性)→ Java Build Path →Libraries →Add External JARs...
找到你的包就可以了。
三:导入数据库驱动。
根据你使用的什么数据库导入什么样的驱动。我这里所用的是mysql
步骤同导入hibernate包一样。
四:hibernate的配置文件。
hibernate.cfg.xml
Hibernate.cfg.xml代码
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<!-- sessionFactory -->
<session-factory>
<!--配置数据库驱动类 -->
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<!--数据库连接的url ,最后要跟数据库的名称-->
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/school</property>
<!--数据库账号 -->
<property name="hibernate.connection.username">root</property>
<!--数据库密码 -->
<property name="hibernate.connection.password">root</property>
<!--数据库方言-->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<!--<property name="hibernate.hbm2ddl.auto">create</property>-->
<property name="hibernate.show_sql">true</property>
<!-- 映射实体类配置文件 -->
<mapping resource="com/coney/school/model/Teacher.hbm.xml"/>
</session-factory>
</hibernate-configuration>
在这里的时候遇到一个问题:
在我搭建好环境后。测试时,往数据库里面添加数据。每次添加一条都会覆盖原来的数据。。
并且,本来设置好的自动增长列也会自动给取消。刚开始还以为是我每次都添加的一条记录标识列没有自动添加上去。
现在找到根本原因了。。
原因就是在这个配置文件里面
<!--<property name="hibernate.hbm2ddl.auto">create</property>-->
这句。现在注释掉就可以正常添加了。不会覆盖原来的数据。
这个hibernate.hbm2ddl.auto参数的作用主要用于:自动创建|更新|验证数据库表结构
详细介绍请看这:
http://run-wang.iteye.com/blog/1323223
五:创建实体类并封装好。
实体类代码
public class Teacher {
private Long tid;
private String tname;
private String tpwd;
private String tclass;
private String tschool;
// 此处省略掉 get...set...方法
}
在建这个实体类的时候也出过一个问题,就是命名不对。
刚开始的时候我的属性名是叫‘tId ,tName.....’ 然后自动生成get。set方法出来。
getTId ,setTId 。。在启动服务器的时候报错说找不到Teacher类的tId 这个属性。
看着命名有点怪怪的就怀疑会不会是命名的问题。然后就把tId该成了tid 再生成get。set方法。
然后就没报错了。。问题是解决了。。可就是不知道原因是什么。。汗。。。
六:创建实体类的配置文件。(在这里使用的是配置文件来映射实体类。同样也可以用注解来影射)
Teacher.hbm.xml
建好后在hibernate.cfg.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 package="com.coney.school.model"> <!-- 实体类包 -->
<class name="Teacher" table="teacher"> <!-- name对应实体类名称, table 对应数据库表名 -->
<!-- ID name 对应实体类字段,column 数据库表字段-->
<id name="tid" type="java.lang.Long" ><!--type :java类型-->
<column name="tid" ><!--column 数据库表字段 not-null:不为空 ,length:长度,default:默认值-->
<comment>表ID</comment><!-- 注释 -->
</column>
<generator class="increment"/> <!--序列生成器, 字段增长 -->
</id>
<!--其他字段基本上一样,name 实体类字段,column 数据库表字段,length 长度,not-null 不为空 -->
<property name="tname" column="tName" length="20" not-null="true"></property>
<property name="tpwd" column="tPwd" length="20" not-null="true"></property>
<property name="tclass" column="tClass" length="20" not-null="true"></property>
<property name="tschool" column="tSchool" length="20" not-null="true"></property>
</class>
</hibernate-mapping>
七:测试
建一个测试类。测试连接数据库。并往表里面添加数据。
测试类代码
package com.coney.school.test;
import org.hibernate.*;
import org.hibernate.cfg.Configuration;
import com.coney.school.model.Teacher;
public class TestConn {
public static void main(String[] args){
Configuration config = new Configuration().configure("hibernate.cfg.xml"); //调用hibernate配置文件,读取配置文件信息。
SessionFactory sf = config.buildSessionFactory(); //读完之后,再用这个对象来生成一个SessionFactory
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
tx.begin(); //有了SessionFactory就可以开Session了,可以用事务提交了.
Teacher m = new Teacher();
m.setTname("小小");
m.setTpwd("xx");
m.setTclass("小班");
m.setTschool("翠花幼儿园");
session.save(m);
tx.commit(); //提交
}
}
然后去数据里看是否添加成功哦。
大概就这样了。。当做笔记。。下次不清楚的时候可以来回忆回忆。。嘿嘿。。
额。把需要的包。。放在附件里面吧。
在驱动包里面顺便把sqlserver的驱动包也放进去了。
分享到:
相关推荐
**hibernate 环境搭建** 在Java开发中,Hibernate是一个非常流行的对象关系映射(ORM)框架,它简化了数据库操作,使得开发者能够用Java对象来处理数据,而无需编写大量的SQL语句。本教程将指导你如何搭建一个基本...
标题"hibernate环境搭建的基础材料"和描述"hibernate环境搭建 基础材料"都指向同一个主题,即如何构建一个适合开发和运行Hibernate应用的环境。Hibernate是一个流行的Java对象关系映射(ORM)框架,它允许开发者用...
本文将深入探讨如何搭建Hibernate环境并进行存储过程的调用。 首先,让我们了解什么是Hibernate。Hibernate是一个开源的ORM框架,它允许Java开发者将Java类与数据库表进行映射,通过对象的方式来操作数据库。它提供...
本文将详细介绍如何进行Hibernate环境搭建,以及如何进行基本操作的封装,我们将以MySQL开源数据库作为数据存储后端。 一、Hibernate环境搭建 1. **安装MySQL数据库**: 首先,你需要在本地或者服务器上安装MySQL...
**Hibernate环境搭建案例** 在Java开发中,Hibernate是一个非常重要的对象关系映射(ORM)框架,它极大地简化了数据库操作,使开发者可以更加专注于业务逻辑而不是底层的数据访问。本案例将详细讲解如何进行...
【标题】:“Hibernate环境搭建及第一个程序” 在Java开发领域,Hibernate是一个强大的对象关系映射(ORM)框架,它简化了数据库操作,使得开发者能够用Java对象来处理数据,而无需编写大量的SQL语句。本教程将指导...
**Hibernate环境搭建** Hibernate是一个流行的Java ORM(对象关系映射)框架,它允许开发者将数据库操作与业务逻辑解耦,通过面向对象的方式处理数据。在Java应用中使用Hibernate,首先需要进行环境搭建,主要包括...
10. `hibernate-tools.jar`(可能遗漏在提供的列表中,但通常在Hibernate环境搭建中会用到):这个库包含了Hibernate的反向工程和代码生成工具,可以帮助开发者快速地从数据库生成Java实体类和映射文件。 以上就是...
在"struts2.0+hibernate环境搭建"的过程中,我们需要进行以下几个关键步骤: 1. **创建数据库表**: - 使用Oracle10g数据库,创建名为`users`的表,包含`userid`(序列化列)、`username`、`fullname`、`birthday`...
Hibernate环境搭建:下载了Hibernate包后,在目录下找到hibernate3.jar和lib包下的required下的所有jar包。由于Hibernate框架中没有集成Log4J和slf4J包,所以还需要下载slf4j的jar和log4J.jar包。
在搭建Hibernate环境时,确保正确地引入所有必需的JAR包至关重要。以下是一份详细的步骤和相关知识点,解释如何配置这些JAR包以成功搭建Hibernate环境。 1. **Hibernate核心库**:Hibernate的核心库包含所有基本...
在开始SSH环境搭建前,你需要确保已经安装了以下基础组件: - JDK 1.6:Java开发工具,为运行和编译Java代码提供必要的环境。 - MyEclipse 7:一个集成开发环境(IDE),支持Java和Web应用程序开发。 - Tomcat ...
本教程将详细介绍如何搭建Hibernate环境并进行基本的操作。 首先,要搭建Hibernate环境,你需要以下组件: 1. Java Development Kit (JDK):确保你的系统已安装最新版本的JDK,并配置好环境变量。 2. Hibernate库:...
**开发环境搭建步骤:** 1. **安装JDK**:确保Java开发环境已安装,设置好环境变量。 2. **搭建IDE**:选择一款适合Java开发的IDE,如IntelliJ IDEA或Eclipse。 3. **引入库**:在项目中添加Struts2和Hibernate的...
总结来说,搭建Hibernate环境主要包括以下步骤: 1. 获取Hibernate库和C3P0连接池库。 2. 配置log4j.properties文件以满足日志记录需求。 3. 在hibernate.cfg.xml中配置C3P0数据源和数据库连接信息。 4. 创建实体类...
**Hibernate 5.2.4 环境搭建与源码解析** Hibernate 是一个流行的 Java 对象关系映射(ORM)框架,它极大地简化了数据库操作。在本教程中,我们将详细探讨如何搭建 Hibernate 5.2.4 的开发环境,并理解其源码。 ...
在"springmvc+spring+hibernate环境"中,配置文件通常会包括Spring的配置文件(如applicationContext.xml)、Spring MVC的配置文件(如spring-mvc.xml)、Hibernate的配置文件(如hibernate.cfg.xml)以及缓存的配置...