当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:14:00  来源:本站整理

hibernate实践[Java编程]

赞助商链接



  本文“hibernate实践[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

hiberante是对数据库长期层拜候的一种机制,hibernate的利用可以使程序员将重点放到业务逻辑的实现上.hibernate的原理是将数据库构造封装,使程序员可以像利用普通对象一样调用数据库的相关接口,从实现数据库的相关操作.

下面就说一个例子,环境j2sdk1.4.2_04,tomcat4.1.27,eclipse3.0,hibernate2.1

数据库的后果以下:

create table Users (
LogonID VARCHAR(255) not null,
EmailAddress VARCHAR(255),
LastLogon DATE,
Password VARCHAR(255),
Name VARCHAR(255),
primary key (LogonID)
);
create table Address2 (
ID VARCHAR(255) not null,
City VARCHAR(255),
State VARCHAR(255),
Zip VARCHAR(255),
primary key (ID)
);
create table Contacts (
ID BIGINT not null,
EmailAddress VARCHAR(255),
Name VARCHAR(255),
User_ID VARCHAR(255),
primary key (ID)
);
alter table Contacts add constraint FKE207C4735A7381EF foreign key (User_ID) references Users;
create index IXE207C4735A7381EF on Contacts (User_ID);

eclipse安装好hibernate插件后,很多对比烦琐,简单出错的配置文件,eclipse都可以帮您很好的自动生成,您的主要任务就是实现Dao,也就是eclipse针对每个表生成的数据拜候对象.比方本例的BaseAddress2DAO,ContactsDAO,UsersDAO,你可以改正这三个对象实现对Contacts,Users,Address2的相关操作.该例子的构造以下:

此中Address2,Contacts,Users相当于实体bean,实现对数据表的映射.由于表Users和Contacts存在one-to-many关系,所以在Users.java的实现中将Contacts也作为一个对象属性.

private java.util.Set _contactsSet;
/**
* Return the value associated with the column: ContactsSet
*/
public java.util.Set getContactsSet () {
return this._contactsSet;
}
/**
* Set the value related to the column: ContactsSet
* @param _contactsSet the ContactsSet value
*/
public void setContactsSet (java.util.Set _contactsSet) {
this._contactsSet = _contactsSet;
}
public void addToContactsSet (Object obj) {
if (null == this._contactsSet) this._contactsSet = new java.util.HashSet();
this._contactsSet.add(obj);
}

普通情形下,hibernate实现数据库的衔接有两种方法,一种是借助web服务器的衔接池,一种是自己配置衔接参数文件.这里只介绍第二种方法:

<hibernate-configuration>
<session-factory>
<!-- local connection properties -->
<!--数据库途径-->
<property name="hibernate.connection.url">
jdbc:jtds:sqlserver://192.198.64.168:1433;databasename=test;SelectMethod=Cursor
</property>
<!--衔接驱动-->
<property name="hibernate.connection.driver_class">
net.sourceforge.jtds.jdbc.Driver
</property>
<property name="hibernate.connection.username">sa</property>
<property name="hibernate.connection.password">sasa</property>
<!-- property name="hibernate.connection.pool_size"></property -->
<!-- 数据库方言 -->
<property name="dialect">
net.sf.hibernate.dialect.SQLServerDialect
</property>
<property name="hibernate.show_sql">false</property>
<property name="hibernate.use_outer_join">true</property>
<!-- mapping 文件-->
<mapping resource="com/head/multi/Contacts.hbm" />
<mapping resource="com/head/multi/Users.hbm" />
<mapping resource="com/head/multi/Address2.hbm" />
</session-factory>
</hibernate-configuration>


  以上是“hibernate实践[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 在Hibernate里面动态切换SChema实现访谒差别的数据库的几种办法
  • Hibernate 3新增XML关系长期性介绍
  • Hibernate配置文件在单元测试中的操纵
  • 在Hibernate中动态切换Schema
  • hibernate annoation (八 关联映射)
  • hibernate annoation (九 cascading)
  • <b>hibernate annoation (十 映射查询)</b>
  • hibernate annoation(十一 缓存Ehcache 采纳annoation)
  • Hibernate:操作配置文件生成数据库
  • hibernate annoation (一 加载)
  • hibernate annoation (二 成立表)
  • <b>hibernate annoation (三 id生成器)</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .