以数据库中有一张user表为例:

1.编写POJO持久化类User.java
POJO(Plain Old Java Objects),简单的Java对象。一个POJO类不用继承任何类,也无须实现任何接口。POJO类中的属性与表中的字段相对应,每个属性都有get和set方法,这里POJO还必须要有一个无参的构造方法,供Hibernate调用。

2.编写映射文件User.hbm.xml
一般将这个文件与持久化类User.java放至同一个包org.hibernate.entity中。

3.编写hibernate.cfg.xml配置文件
这个文件一般存放在WEB-INF/classes目录下,在myeclipse中的package explorer视图下是隐藏的,需要使用Navigator视图才能显示。

4.编写工具类HibernateUtil.java
HibernateUtil.java基本体现的了Hibernate的工作原理。
第一次对着书上敲的时候发现有个方法被打了红线,百度之后发现我用的是hibernate4的jar,这个方法已经被废除,又改回hibernate3的jar。接着下面的rebuildSessionFactory方法中一直显示红叉,原因是configuration和"/hibernate.cfg.xml"出错,看到一篇网上hibernate4中HibernateSessionFactory类的写法后,将这两个一个定义为静态对象,一个定义为字符串变量,修改后没有错误。这里书上应该是写错了或者没写全。

5.编写DAO接口UserDAO.java
《Thinking in Java》 1.2--每个对象都有一个接口 可以一看

6.编写DAO实现类UserDAOImpl.java
这里文中加了一个DAO工厂类,有点理解,这里有更为详细的解释。
http://www.cnblogs.com/leihupqrst/p/3663452.html

7.编写测试类UserTest.java
使用Junit进行测试。在测试的时候发现进度条一直为红色,原因是因为缺包。开始我的lib里面只有hibernate3.jar一个包,后来经过百度陆陆续续添加了dom4j.jar等9个包,之后报错说找不到hibernate.cfg.xml文件,然后去目录下看这个文件的确消失了(难道是我将src下的包名更换了导致的?),之后又重新写了一遍,测试,成功。

Hibernate项目的基本步骤和一些错误提示的更多相关文章

  1. 创建Maven项目时,出现系列的错误提示的修改方法

    1.创建Maven项目成功之后,需要修改一些配置, (1).java版本改为“本系统中java的版本号” 问题一:(2).Dynamic Web Module的version要改为2.5以上,然而本人 ...

  2. 根据数据库的表生成项目,项目变为hibernate项目(实际开发中常用)

    1.  选择模式为Myeclipse Database Explorer perpective 2. (1)右键建立mysql模板,选择默认的mysql模板 (2)drive name (任意这里取m ...

  3. intellj(idea) 编译项目时在warnings 页签框里 报 “xxx包不存在” 或 “找不到符号” 或 “未结束的字符串字面值” 或 “需要)” 或 “需要;”等错误提示

    如上图: 环境 是 刚换的系统,重装的Intellj,直接双击老的皇帝项目中的idea的 .iml文件,结果 打开 intellj 后,进行 ctrl +shift +F9 编译时 尽然报 错误提示, ...

  4. spring+hibernate项目demo搭建

    之前用maven+spring+mybatis+spring mvc搭建了一个web项目,用于学习spring及相关知识,现在打算将mybatis换成hibernate,一样搭建一个框架. 其实myb ...

  5. IDEA 下新建 Hibernate 项目

    Hibernate 概述 什么是 Hibernate 一个 Java 领域的持久化框架 一个 Java 领域的ORM 框架 什么是持久化 持久化是指把对象永久保存到数据库中 持久化包括和数据库相关的各 ...

  6. SSH项目整合基本步骤

    SSH项目整合基本步骤 一.项目简介 该项目是由Spring4.Struts2 以及 Hibernate4 整合搭建的 web 项目,把Action分开编写,便于查看,使用JSTL.EL标签. 二.项 ...

  7. 使用eclipse逆向工程开发hibernate项目

    在项目设计时,要么根据需求分析建立实体类,然后正向生成数据库表:要么先进行数据库表设计,然后逆向生成实体类.也就是说,不会完成一方的设计后再花时间去匹配建立另一方,这么做的原因是: 1.如果不使用正向 ...

  8. 坑爹的Hibernate 映射文件错误提示org.xml.sax.SAXParseException

    今天整整一个上午都在和hibernate做斗争,早上一来,继续昨天的项目开发,发现spring项目不能启动,从错误中看是hibernate错误,多半是hibernate配置有错误,关键是错误提示中显示 ...

  9. 通过myclipse建立一个简单的Hibernate项目(PS:在单元测试中实现数据的向表的插入)

    Hibernate的主要功能及用法: Ⅰ.Hibernate封装了JDBC,使Java程序员能够以面向对象的思想对数据库进行操作 Ⅱ.Hibernate可以应用于EJB的J2EE架构,完成数据的持久化 ...

随机推荐

  1. 数据结构(集合)学习之Map(一)

    集合 框架关系图: 补充:HashTable父类是Dictionary,不是AbstractMap. Map: Map(接口)和Collection都属于集合,但是Map不是Collection的子类 ...

  2. 解决kbmMW Scheduler在任务中停止任务遇到的问题

    procedure TCustomGridViewCameraDoc.InitSchedule; begin Scheduler.Schedule( procedure(const ASchedule ...

  3. 小白的java学习之路 “ 数组”

    数组 一.什么是数组: 数组是一个变量,存储相同数据类型的一组数据 声明一个变量就是在内存空间划出一块合适的空间 声明一个数组就是在内存空间划出一串连续的空间 二.数组基本要素: 标识符:数组的名称, ...

  4. [译]C# 7系列,Part 10: Span<T> and universal memory management Span<T>和统一内存管理

    原文:https://blogs.msdn.microsoft.com/mazhou/2018/03/25/c-7-series-part-10-spant-and-universal-memory- ...

  5. oracke数据库分区新增

    1.发现一些过程执行报错,报错原因是'ora-14400插入的分区关键字未映射到任何分区',原来是2020年库表的时间子分区未扩展: 2.扩展子分区的语句是 ALTER TABLE 表名 MODIFY ...

  6. Bad Hair Day【单调栈】

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAzMAAANgCAIAAACX06G4AAAgAElEQVR4Aey9e5RlW13fuw40HORxfI ...

  7. 【Linux远程连接工具】Xshell、Xftp家庭/学生版(免费使用)

    注:Xshell.Xftp家庭/学生版无需激活,可以免费使用! 1.步骤一: 官网下载地址:https://www.netsarang.com/zh/ 选择[所有下载]->[家庭/学校免费]   ...

  8. OI学习之路上的宝藏网站/App分享

    OI学习之路上的宝藏网站/App分享 想要变强吗少年?这里有各种我平时收集的网站/App,它们可以帮助你更好地学习算法或者找到解题思路.废话不多说,快来打开新世界的大门罢~ 知识学习 觉得各种知识晦涩 ...

  9. react-native构建基本页面4---渲染电影列表

    电影列表 import React, { Component } from 'react' import { View, Image, Text, ActivityIndicator, FlatLis ...

  10. react-父子子孙组件嵌套-context

    方案一 import React from 'react' import ReactTypes from 'prop-types' /* // 最外层的父组件 export default class ...