2008-02-17

Hibernate中discriminator

关键字: hibernate中discriminator
tbl_user 是一张表。User是它一个po,NormalUser也是它的一个po,NormalUser继承于User,那么将User和NormalUser持久到数据库的tbl_user中,tbl_user是怎么区分的呢?tbl_user中有一个字段type,它是来区分的。 来看他们的映射文件: <class name="com.apidoc.app.user.model.User" table="tbl_user" discriminator-value="2"> <id name="id" column="id" ...
2008-01-29

hibernate总结二

关键字: hibernate总结二
1. get和load区别 load加载方法: Users user = (Users)session.load(Users.class, new Integer(1)); get加载方法: Users user = (Users)session.get(Users.class, new Integer(1)); 以上面代码为例: 区别一:如果没有id为1的Users对象,那么,如果通过get方法加载,则返回的是一个null,如果通过load加载,则返回一个代理对象,如果后面代码如果调用user对象的某个属性(比如user.getPassword())会抛出异常:org.hi ...
2008-01-28

hibernate总结

关键字: hibernate总结
1.key是指外键 比如: <hibernate-mapping> <class name="com.domain.Classes" table="classes" > <id name="id" type="java.lang.Integer"> <column name="id" /> <generator class="native" /> </id> <property name="name ...
2008-01-28

hibernate------one-to-one

关键字: hibernate------one-to-one
hibernate 关系映射 one-to-one主要有三种实现方式 1.通过外键方式实现 以学生和电脑为例(Student-Computer) 建表sql语句: CREATE DATABASE `onetoone` CHARACTER SET 'utf8'; USE `onetoone`; DROP TABLE IF EXISTS `student`; CREATE TABLE `student` ( `id` int(11) NOT NULL auto_increment, `name` varchar(255) NOT NULL, PRIMARY K ...
2008-01-28

Hibernate-------集合

关键字: hibernate-------集合
Hibernate中的集合 Hibernate中的集合分为四类: 1.bag类:元素无序,可重复 2.set类:元素无序,不可重复 3.list类:元素有序,可重复 4.array类:数组 5.map类:映射关系 除bag类集合外,其它集合都可以在java api中找到对应的接口类,bag可以认为对应java中的List Hibernate中将集合分为2类: 一是值集合,集合中存储的都是基本数据类型,包括String类型,及其它可识别的数据库类型 二是实体集合,集合中存储已经映射了的实体对象,反应对象间的关系。 以班级和学生为例: 建表sql语句: CREATE DATABASE ` ...
2008-01-25

hibernate------HQL总结

关键字: hibernate------hql总结
以以个普通Users表为例: 建表语句: CREATE DATABASE `interceptor` CHARACTER SET 'utf8'; USE `interceptor`; DROP TABLE IF EXISTS `users`; create table users( id int auto_increment primary key, name varchar(10) not null, passwd varchar(10) not null )ENGINE=InnoDB DEFAULT CHARSET=utf8; User.java: ...
2008-01-25

hibernate-----many-to-many

关键字: hibernate-----many-to-many
hibernate:many-to-many 以学生和老师为例 建表语句: CREATE DATABASE `manytomany` CHARACTER SET 'utf8'; USE `manytomany`; DROP TABLE IF EXISTS `student`; create table student( sid int auto_increment primary key, name varchar(10) not null )ENGINE=InnoDB DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS ` ...
2008-01-21

hibernate----one-to-many

关键字: hibernate----one-to-many
hibernate里的一对多one-to-many(以学生和班级为例子) 1.双向关联情况下 Classes.java: package com.domain; import java.util.HashSet; import java.util.Set; public class Classes implements java.io.Serializable { private Integer id; private String name; private Set students = new HashSet(0); public ...
2008-01-05

hibernate知识小结

关键字: hibernate知识小结
1.hibernate中java对象的三种状态,三种状态都是对缓存而言的。 1)临时状态 New,delete() 不在session的缓存中,数据库中无对应的数据。 2)持久化状态 Save() 临时->持久 load(),get() 返回持久 update(),saveOrUpdate(),lock() 游离->持久 在session的缓存中,数据库中有对应的数据。 3)游离状态 Clear(),Close() 全部 持久->游离 Evict() 一个 持久->游离 不在session的缓存中,数据库中可能存在对应的数据 2.Session清理缓存的 ...
2007-10-22

hibernate text

关键字: hibernate text
mysql数据库的一个表里的字段logins是text类型的。 hibernate对改字段的映射为: <property name="logins" column="logins" type="text"/> 实体类: public class User{ private String logins; } 程序里取出该实体对象 User user = (User)getHibernateTemplate().load(entityClass, id) System.out.println(user.getLogins()); 打印出的值是类似这样的byte类型的 [B ...
2007-10-12

hibernate关系映射

关键字: hibernate关系映射
java 代码 package com.test;       import java.util.HashSet;    import java.util.Set;       import com.test.domain.Student;    import com.test.domain.Teacher;    ...
2007-07-24

hibernate 批量插入

关键字: hibernate 批量插入
在企业应用开发中,经常用到批量插入的功能。对于Hibernate,如果使用方法不当,性能将大打折扣,令人难以忍受。这里介绍一种批量插入的方法,代码如下: java 代码 Session session = sessionFactory.openSession();     Transaction tx = session.beginTransaction();     for ( int i=0; ...
ttitfly
搜索本博客
我的相册
63e97aa5-d2de-33be-88c3-8f39d5279b8d-thumb
bbbb
共 3 张
存档
最新评论