分享
 
 
 

Hibernate 入门之轻松上手

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

我找到的所有Hibernate入门文章分为三类:

1、剖析的很透彻,但是例子里面只有主要代码,不能编译执行。

2、举的例子只能在某种环境中执行,例如tomcat。

3、长篇大论,光一个hbm.xml就写了一页纸,晕。

在这里,我提供一个最简便的入门例子。(其中例子基于透明的文章《冬眠的数据库》)

步骤:

准备工作:

安装j2se sdk 1.4.2以上版本,和mysql数据库(其他数据库的话,请自己修改配置)。

1、下载Hibernate 2.1展开。

2、创建一个自己的工作目录例如 e:\my。

3、在工作目录下建立以下文件(见文章最后):

a. setenv.bat // 用以设置 hibernate 应用程序的编译运行所需类路径

b. hibernate.properties // Hibernate 配置文件,主要用来配置数据库

c. user.hbm.xml // 数据类和数据表的映射设置文件

d. HbTest.java // 主程序

e. User.java // 数据类

4、修改setenv.bat,其中 HIBERNATE_HOME 应该设成你自己的Hibernate目录。

5、修改hibernate.properties

把HypersonicSQL的设置注释掉,把mysql的设置去掉注释符

hibernate.connection.url jdbc:mysql:///test

hibernate.connection.username root

hibernate.connection.password ××××××

把其中的mysql路径、用户名、密码设成适合自己的。

6、编译程序

在DOS窗口中进入工作目录,执行setenv.bat。然后执行如下:

javac User.java

javac -sourcepath .\ HbTest.java

7、执行

java HbTest

可以查看mysql中的数据库test,应该已建立了一张新表User,并插入了新记录。

7、你的第一个Hibernate应用完成了。

附(除hibernate.property以外的所有文件)

setenv.bat

set HIBERNATE_HOME=e:\java\hibernate-2.1 # //要改为自己的目录

set CLASSPATH=%HIBERNATE_HOME%\hibernate2.jar;%HIBERNATE_HOME%\lib\dom4j-1.4.jar;%HIBERNATE_HOME%\lib\commons-logging-1.0.4.jar;%CLASSPATH%

set CLASSPATH=%HIBERNATE_HOME%\lib\commons-collections-2.1.1.jar;%HIBERNATE_HOME%\lib\odmg-3.0.jar;%HIBERNATE_HOME%\lib\cglib-full-2.0.2.jar;%CLASSPATH%

set CLASSPATH=%HIBERNATE_HOME%\lib\mysql-connector-java-3.0.9-stable-bin.jar;%HIBERNATE_HOME%\lib\ehcache-0.9.jar;%CLASSPATH%

User.java

public class User {

private String id;

private String password;

private String mail;

private String nick_name;

User(){

}

User(String aId) {

id=aId;

}

void setId(String aId) {

id=aId;

}

String getId() {

return id;

}

void setPassword(String pass) {

password=pass;

}

String getPassword() {

return password;

}

void setMail(String aMail) {

mail=aMail;

}

String getMail() {

return mail;

}

void setNick_name(String name) {

nick_name=name;

}

String getNick_name() {

return nick_name;

}

}

HbTest.java

import net.sf.hibernate.*;

import net.sf.hibernate.cfg.Configuration;

import net.sf.hibernate.tool.hbm2ddl.*;

public class HbTest {

public static void main(String[] args) {

try {

Configuration cfg = new Configuration();

cfg.addClass(User.class);

SessionFactory sessions=cfg.buildSessionFactory();

new SchemaExport(cfg).create(true,true);

Session session=sessions.openSession();

User user=new User("qs");

user.setMail("qs@sina.com");

session.save(user);

session.flush();

session.close();

}

catch(MappingException e){

e.printStackTrace(System.err);

}

catch(HibernateException e){

e.printStackTrace(System.err);

}

}

}

User.hbm.xml

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有