hibernate在写数据库配置文件时非常的不确定,必须进行必要的测试保证数据库结构的正确性。所以可以应用junit进行测试。
使用junit非常简单,eclipse只需要右键项目新建一个junit test case即可(填写类名和包名)。然后在对应位置写对应的代码运行测试即可。
下面给出一个常用的hibernate测试框架:
package com.atguigu.hibernate.e...
分类:
系统相关 时间:
2014-06-03 00:05:35
阅读次数:
449
详见 笔记文档
=Spring整合Hibernate需要注意的几点:声明式的事务管理当有runtimeexcetion的时候回滚。HibernateTransactionManager是一个aspect切面。事务传输机制
propagationPROPAGATION_REQUIRED:支持当前事务,...
分类:
编程语言 时间:
2014-06-02 21:51:10
阅读次数:
349
域模型
关系数据模型:
按照外键映射:
按照主键映射:
基于外键映射的 1-1
对于基于外键的1-1关联,其外键可以存放在任意一边,在需要存放外键一端,增加many-to-one元素。为many-to-one元素增加unique=“true” 属性来表示为1-1关联
另一端需要使用one-to-one元素,该元素使用...
分类:
系统相关 时间:
2014-06-01 16:20:13
阅读次数:
508
inverse 属性
在hibernate中通过对 inverse 属性的来决定是由双向关联的哪一方来维护表和表之间的关系. inverse = false 的为主动方,inverse = true 的为被动方, 由主动方负责维护关联关系在没有设置 inverse=true 的情况下,父子两边都维护父子关系 在 1-n 关系中,将 n 方设为主控方将有助于性能改善(如果要国家元首记住全国...
分类:
系统相关 时间:
2014-06-01 15:41:41
阅读次数:
360
Session 概述
Session 接口是 Hibernate 向应用程序提供的操纵数据库的最主要的接口, 它提供了基本的保存, 更新, 删除和加载 Java 对象的方法.
Session 具有一个缓存, 位于缓存中的对象称为持久化对象, 它和数据库中的相关记录对应. Session 能够在某些时间点, 按照缓存中对象的变化来执行相关的 SQL 语句, 来同步更新数据库, 这一过程被称为刷新...
分类:
系统相关 时间:
2014-06-01 10:43:16
阅读次数:
311
ExpandEnvironmentStrings
风险:
进程会继承其父进程的环境变量,在展开如%APPDATA%等目录时,有可能父进程对此环境变量进行过修改,那么可能你获取的就不是你想要的当前SESSION的%APPDATA%了。
建议:
使用SHGetFolderPath系列函数来做这件事。
GetModuleFileName
风险:
在DLL中调用时,若传入的ins...
POJO 类和数据库的映射文件*.hbm.xml
POJO类和关系数据库之间的映射可以用一个XML文档来定义。
映射文件的扩展名为.hbm.xml
在运行时Hibernate将根据这个映射文件来生成各种SQL语句
通过POJO类的数据库映射文件,Hibernate可以理解持久化类和数据表之间的对应关系,也可以理解持久化类属性与数据库表列之间的对应关系
...
分类:
系统相关 时间:
2014-06-01 08:59:00
阅读次数:
436
在 Java 中, 代表时间和日期的类型包括: java.util.Date 和 java.util.Calendar. 此外, 在 JDBC API 中还提供了 3 个扩展了 java.util.Date 类的子类: java.sql.Date, java.sql.Time 和 java.sql.Timestamp, 这三个类分别和标准 SQL 类型中的 DATE, TIME 和 TIMESTA...
分类:
编程语言 时间:
2014-06-01 08:22:49
阅读次数:
364
Hibernate 使用JPA 对于映射有3种规则可以配置:DefaultNamingStrategy,ImprovedNamingStrategy,EJB3NamingStrategy
这里只说ImprovedNamingStrategy,其他自行看Hibernate代码,ImprovedNamingStrategy的代码如下,是一个singleton instance:
/*
...
分类:
系统相关 时间:
2014-05-31 23:26:36
阅读次数:
627
基本知识:
在 Java 中, java.lang.String 可用于表示长字符串(长度超过 255), 字节数组 byte[] 可用于存放图片或文件的二进制数据. 此外, 在 JDBC API 中还提供了 java.sql.Clob 和 java.sql.Blob 类型, 它们分别和标准 SQL 中的 CLOB 和 BLOB 类型对应. CLOB 表示字符串大对象(Character...
分类:
系统相关 时间:
2014-05-31 23:03:24
阅读次数:
574