java 板


LINE

==站内信件== 开发环境: OS :Windows XP Java SDK:5.0 java IDE:Eclipse 3.11 Database:MySQL 5.0.19 (请到 http://dev.mysql.com/downloads/mysql/5.0.html 点 without installer 选项下载 mysql database 请到 http://dev.mysql.com/downloads/connector/j/3.1.html 点 zip 格式的档案下载 mySQL 的 JDBC 为了管理方便请到 http://dev.mysql.com/downloads/administrator/1.1.htmlhttp://dev.mysql.com/downloads/query-browser/1.1.html 下载 mySql Administrator 跟 Query Browser ) Hibernate:hibernate 3 (请到 http://www.hibernate.org/6.htm 点Hibernate Core下载) Eclipse Plugins:XMLBuddy,hibernate tools,hibernate Synchronizer(可有可无) 开发环境准备完就可以进行开发工作 Step 1:开起 Eclipse Step 2:开起一个 Java 专案 Step 3:专案命名为 HibernateDemo(请依照你的习惯来命名) Step 4:起动 mysql,请在Dos视窗中mysql_home\bin下输入 mysqld-nt --console Step 5:请开另一个Dos视窗在 mysql_home\bin 下输入 mysql -u root Step 6:建立一个 sample 资料库,并建一个的 user table SQL 语法: create database sample; create table `sample`.`user` ( `id` int(11) not null auto_increment, `name` varchar(100) not null default '', `age` int, primary key (`id`) )engine=InnoDB; Step 7:准备 hibernte 需要的lib,加入Eclipse 专案建置中 hibernate 相关的 lib log4j-1.2.11.jar antlr-2.7.6rc1.jar asm.jar cglib-2.1.3.jar commons-collections-2.1.1.jar commons-logging-1.0.4.jar dom4j-1.6.1.jar encache-1.1.jar jta.jar junit-3.8.1.jar hibernate3.jar ant.jar 此为 Ant 专案的lib mysql-connector-java-3.1.10-bin.jar (此为MySQL的JDBC Driver) Step 8:建立一个 User class 程式码: package idv.study; public class User{ private Integer id; private String name; private Integer age; } Step 9:在 User class 中建立 setter 跟 getter Step 10:在User.java的目录中建立User的Mapping档案 User.hbm.xml程式码: <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="idv.study.User" table="user"> <id name="id" column="id"> <generator class="native" /> </id> <property name="name" column="name" /> <property name="age" column="age" /> </class> </hibernate-mapping> Step 11:在开发者的目录中建立hibernate config档案 hibernate.cfg.xml程式码: <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="hibernate.connection.url"> <!--选取我们所需要的Database--> jdbc:mysql://localhost/sample </property> <property name="hibernate.connection.driver_class"> <!--设定JDBC所使用的Driver--> org.git.mm.mysql.Driver </property> <property name="hibernate.connection.username"> <!--设定连接DataBase所需使用的username--> root </property> <property name="hibernate.connection.password"> <!--设定连接DataBase所需使用的密码--> </property> <property name="dialect"> <!--这行我不清楚他的用意,请版上的大大解释一下吧--> org.hibernate.dialect.MySQLDialect </property> <!--选取对应到DataBase的Mapping 档案--> <mapping resource="idv/study/User.hbm.xml" /> </session-factory> </hibernate-configuration> Step 12:建立一个测试类别 UserStudyDemo 程式码: import idv.study.User; import org.hibernate.*; import org.hibernate.cfg.*; public class UserStudyDemo { public static void main(String[] args) { // 读取hibernate config 档案 Configuration configuration = new Configuration().configure(); Session session = configuration.buildSessionFactory().openSession(); Transaction tx = session.beginTranscation(); // 建立使用者 User user = new User(); user.setAge(new Integer(20)); user.setName("King"); // 将使用者资讯存入 session 中 session.save(user); // 判断资料是否相等 User user2 = (User) session.get(User.class,user.getId()); System.out.print(user2.getName().equals(user.getName())); // 将 session 资料存入资料库 tx.commit(); session.close(); } } Step 13:将 hibernate/etc 目录中的log4j.properties 放入专案 的 src 下面 Step 14:完成之後去资料库查看有没有将User的资料存入资料库中 在Dos视窗mysql_home\bin目录下输入:mysql -u root 进入 mysql 中, 会看到画面为 mysql> 在此画面中输入:select * from `sample`.`user`; 接着就会看到刚刚利用 UserStudyDemo 存入的资料 参考文献: 良葛格的 Spring 技术手册 碁峰出版 作者:林信良 出版年月:2006.3 深入浅出 Hibernate 博硕出版 作者: 夏昕 曹晓钢 唐勇 出版年月:2006.1 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.85.210.133







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP