blob: 01ca2dddd9cc2211df57f65ac79df7c4d209dd75 [file] [log] [blame]
<html>
<head>
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=shift_jis">
<title>Eclipse ‚ð—p‚¢‚½ JSF/Spring/Hibernate ƒvƒ‰ƒOƒCƒ“•×‹­‰ï</title>
<link rel="stylesheet" href="default_.css">
</head>
<body LINK="#0000ff" VLINK="#800080">
<div align="right"> <font face="Times New Roman, Times, serif" size="2"> </font>&copy;
2005 by NTT COMWARE CORPORATION; made available under the EPL v1.0
<table border=0 cellspacing=0 cellpadding=2 width="100%">
<tr>
<td align=LEFT valign=TOP colspan="2" bgcolor="#0080C0"><b><font face="Arial,Helvetica" color="#FFFFFF">&nbsp;Eclipse
Corner Article</font></b></td>
</tr>
</table>
</div>
<div align="left">
<table width="100%" border="0">
<tr>
<td width="115" align="left"><img src="images/Idea0000.jpg" height=86 width=120 ></td>
<td width="817">
<div align="center">
<h3>Eclipse ‚ð—p‚¢‚½ JSF/Spring/Hibernate ƒvƒ‰ƒOƒCƒ“•×‹­‰ï<br>
2005 / 6 / 17</h3>
</div>
</td>
</tr>
</table>
</div>
<h1 ALIGN="CENTER">@ƒf[ƒ^ƒx[ƒXŠÖ˜Aƒvƒ‰ƒOƒCƒ“</h1>
<p>¦ ‚±‚̃Rƒ“ƒeƒ“ƒc‚́ANTTƒRƒ€ƒEƒFƒA‚̉º‹LŽÐˆõ‚ç‚É‚æ‚Á‚č쐬‚³‚ꂽ‚à‚Ì‚Å‚·B</p>
<p></p>
Kouichi Murakami ‘ºãFˆê<br>
<hr width="100%">
<h2>‚Í‚¶‚ß‚É</h2>
<p><a href="gui.html">GUI ƒrƒ‹ƒ_[•Ò</a> ‚Å‚Í Visual Editor ‚ðŽg—p‚µ‚Ä SWT‚É‚æ‚é‰æ–Ê‚ðì¬‚µ‚Ä‚Ý‚Ü‚µ‚½B¡‰ñ‚Í
ƒf[ƒ^ƒx[ƒX‚̃‚ƒfƒŠƒ“ƒO‚⃂ƒfƒ‹‚©‚çSQL•¶‚Ì•ÏŠ·AŽÀs‚È‚Ç‚ðs‚¢‚Ü‚·B</p>
<p>Ð‰î‚·‚éƒvƒ‰ƒOƒCƒ“‚͈ȉº‚Ì‚Æ‚¨‚è‚Å‚·B</p>
<ul>
<li><a href="#cray">Cray Database Modeling</a>F ƒf[ƒ^ƒx[ƒX‚̃‚ƒfƒŠƒ“ƒO <strong>( ì¬’† )</strong></li>
<li><a href="#DbEdit">DbEdit</a>F ƒf[ƒ^ƒx[ƒX‚𑀍ì‚Å‚«‚Ü‚·<strong> ( ì¬’† j</strong></li>
<li><a href="#DBCopy">DB Copy</a> F ƒf[ƒ^ƒx[ƒX‚̃e[ƒuƒ‹‚ðƒRƒs[ <strong>( ì¬’† ) </strong></li>
<li><a href="#HibernateSynch">Hibernate Synchronizer</a> F Hibernate ‚Ì O/Rƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹ì¬</li>
<li><a href="#Hibernator">Hibernator</a>F HQL ( Hibernate Query Language ) ‚ðŽÀs‚·‚é
</li>
</ul>
<hr width="100%">
<h3>€”õ</h3>
<p>‚Ü‚¸ADatabase ‚ðƒCƒ“ƒXƒg[ƒ‹‚µ‚Ü‚µ‚傤B¡‰ñ‚Í MySQL ‚ðŽg—p‚µ‚Ü‚·B</p>
<p><img src="images/tryit002.gif" width="61" height="13"> <a href="http://dev.mysql.com/downloads/">‚±‚¿‚ç</a>
‚©‚ç ƒA[ƒJƒCƒu‚ðŽæ“¾‚µ‚Ü‚·B</p>
<blockquote>
<pre>mysql-4.1.12-win32.zip</pre>
</blockquote>
<ul>
<li>‰ð“€‚µ‚āASetup.exe ‚ðŽÀsBƒCƒ“ƒXƒg[ƒ‹ŒãAÝ’è ( Configure ) ‚à‘ΘbŒ`Ž®‚ōs‚¢‚Ü‚·B¡‰ñ‚ÍWindowsƒT[ƒrƒX‚Æ‚µ‚Ä“o˜^‚µ‚Ü‚·B</li>
<li>jdbc ƒhƒ‰ƒCƒo‚Í <a href="http://www.mysql.com/products/connector/j/">‚±‚¿‚ç</a>
‚©‚ç ƒA[ƒJƒCƒu‚ðŽæ“¾‚µ‚Ü‚·B‰ð“€‚µ‚āA“K“–‚È‚Æ‚±‚ë‚É’u‚«‚Ü‚·B( —Ⴆ‚Î C:lib\ ‚̉º)</li>
</ul>
<blockquote>
<pre>mysql-connector-java-3.1.8a.zip</pre>
</blockquote>
<p><img src="images/note0000.gif" width="62" height="13"> ‹N“®‚µ‚Ä‚¢‚邱‚Æ‚ÌŠm”F‚ƃ†[ƒU‚̒ljÁ‚ð‚µ‚Ü‚µ‚傤B—á‚Å‚Í
ƒ†[ƒUF mysqlA ƒpƒXƒ[ƒhF mysql ‚ð’ljÁ‚µ‚Ü‚µ‚½B </p>
<ul>
<li>start ƒƒjƒ…[ „ MySQL „ MySQL Server 4.1 „ MySQL Command Line Client <br>
</li>
</ul>
<blockquote>
<p>ƒe[ƒuƒ‹\¬</p>
<pre class="cmd"><b>mysql&gt;SHOW DATABASES;
+----------+
| Database |
+----------+
| mysql |
| test |
+----------+
2 rows in set (0.03 sec) <br>mysql&gt;GRANT ALL PRIVILEGES ON *.* TO mysql@localhost IDENTIFIED BY 'mysql' WITH GRANT OPTION;</b></pre>
</blockquote>
<hr width="100%">
<h2><a name="cray"></a>Cray Database ModelingF ƒf[ƒ^ƒx[ƒX‚̃‚ƒfƒŠƒ“ƒO</h2>
<p> ER}‚̍쐬Aƒ‚ƒfƒ‹‚©‚çSQL‚̐¶¬ADatabase ‚©‚ç ƒ‚ƒfƒ‹‚̍쐬 ‚È‚Ç‚ª‚Å‚«‚Ü‚·BƒI[ƒvƒ“ƒ\[ƒX‚̃f[ƒ^ƒx[ƒX‚ɑΉž‚µ‚Ä‚¢‚é Core Edition
‚Æ ¤—p ƒf[ƒ^ƒx[ƒX‚ɑΉž‚µA’ljÁ‹@”\‚ª‚ ‚é Pro Edition ‚ª‚ ‚è‚Ü‚·B</p>
<p><img src="images/tryit001.gif" width="61" height="13"> <a href="http://www.azzurri.jp/ja/index.jsp">http://www.azzurri.jp/ja/index.jsp</a>
@ƒ‰ƒCƒZƒ“ƒXF “ÆŽ©iCore Edition 1.0@‚Í–³žAPro Edition 1.0 ‚Í—Lžj@</p>
<p><img src="images/tryit002.gif" width="61" height="13"> uƒ\ƒtƒgƒEƒFƒA‚̍XVv http://www.azzurri.jp/eclipse/plugins@*GEF
‚̃Cƒ“ƒXƒg[ƒ‹‚ªæ‚É•K—v‚Å‚·BÅV”Å‚Í 1.1.0 ƒŠƒŠ[ƒX@2004/12/31@‚Å‚·B</p>
<p><img src="images/tryit000.gif" width="61" height="13"> ƒ‚ƒfƒŠƒ“ƒO‚ð‚µ‚Ä‚Ý‚Ü‚µ‚傤B</p>
<p>uV‹Kv¨uDatabase Modelingv¨uAzzurri Cray Database Design Diagramv</p>
<p><img src="images/crayModel2.gif" width="374" height="374"></p>
<p>SQL•ûŒ¾FMySQL 4.0 ‚ð‘I‘ð‚µAuI—¹v</p>
<p><img src="images/crayModel3.gif" width="341" height="417"></p>
<p>ƒGƒfƒBƒ^‚̍¶‘¤‚̃AƒCƒRƒ“‚ðƒNƒŠƒbƒN‚µ‚ăe[ƒuƒ‹‚̒ljÁ‚âŠÖ˜A‚ðˆø‚«‚Ü‚·B</p>
<p><img src="images/crayModel0.gif" width="661" height="295"></p>
<p>ƒe[ƒuƒ‹ƒ_ƒuƒ‹ƒNƒŠƒbƒN‚µ‚ĕҏWƒEƒBƒ“ƒhƒE‚ðŠJ‚¢‚ăf[ƒ^€–Ú‚ð’ljÁ‚µ‚Ü‚·B</p>
<p><img src="images/crayModel1.gif" width="374" height="267"></p>
<p>‚Ü‚½AMenubar„ Cray „ SQL ( CLEATE TABLE ) ƒXƒNƒŠƒvƒg¶¬ ‚Ńe[ƒuƒ‹ì¬—p‚ÌSQL•¶ ‚ðì¬‚Å‚«‚Ü‚·B </p>
<p><img src="images/note0000.gif" width="62" height="13">@ƒNƒCƒbƒNƒXƒ^[ƒgƒKƒCƒh@<a href="http://www.azzurri.co.jp/ja/software/clay/support/quick_start.jsp">http://www.azzurri.co.jp/ja/software/clay/support/quick_start.jsp</a></p>
<hr width="100%">
<h2><a name="DbEdit"></a>DbEditF ƒf[ƒ^ƒx[ƒX‚𑀍ì‚Å‚«‚Ü‚·</h2>
<p>ƒf[ƒ^ƒx[ƒX‚Ì“à—e‚ðŒ©‚½‚èA•ÒW‚µ‚½‚èASQL‚ÌŽÀs‚ª‚Å‚«‚Ü‚·BCary ‚ō쐬‚µ‚½ SQL‚ðŽÀs‚·‚é‚ȂǁA•Ö—˜‚Å‚·B</p>
<p><img src="images/tryit001.gif" width="61" height="13"> <a href="http://www.geocities.com/uwe_ewald/dbedit.html">http://www.geocities.com/uwe_ewald/dbedit.html</a>@</p>
<blockquote>
<p>ƒ‰ƒCƒZƒ“ƒXF CPL Version 1.0 i dbedit_1.0.3 ) <br>
<br>
ƒvƒ‰ƒOƒCƒ“‚̃o[ƒWƒ‡ƒ“‚É‚æ‚Á‚Ä CPLA“ÆŽ©AGPL ‚ª‚ ‚è‚Ü‚·B<br>
1.0.3 F CPL V1.0<br>
1.0.2 F CPL V1.0<br>
1.0.1 F “ÆŽ©i¤—p—˜—p‚Í—Lžj<br>
1.0.0 F GPL V2<br>
0.9.9 F “ÆŽ©i¤—p—˜—p‚Í—Lžj<br>
</p>
</blockquote>
<p><img src="images/tryit002.gif" width="61" height="13"> ƒ\ƒtƒgƒEƒFƒA‚̍XVF http://dbedit.sourceforge.net/update
‚Ü‚½‚́Aƒ_ƒEƒ“ƒ[ƒhF <a href="http://sourceforge.net/projects/dbedit">http://sourceforge.net/projects/dbedit</a>@</p>
<blockquote>
<p>ÅV”Å‚Í dbedit_1.0.3_1.bin.dist_3.X.zip@ƒŠƒŠ[ƒX 2005/04/10</p>
</blockquote>
<h3>€”õ</h3>
<p>Database ‚ւ̐ڑ±‚ðÝ’肵‚Ü‚·B</p>
<p>ƒp[ƒXƒyƒNƒeƒBƒuF ‚c‚‚‚d‚„‚‰‚”@‚ðŠJ‚«‚Ü‚·B<br>
Tables (¶‘¤‚̃EƒBƒ“ƒhƒE) ‚ʼnEƒNƒŠƒbƒN ¨uConnectionv¨uConfiguerv¨u‚m‚…‚—v<br>
ClassPath ƒ^ƒu‚Å jdbc ƒhƒ‰ƒCƒo‚Ì jar ƒtƒ@ƒCƒ‹‚ðŽw’è<br>
Common ƒ^ƒu‚Ńhƒ‰ƒCƒo[ƒNƒ‰ƒXAƒf[ƒ^ƒx[ƒX‚ÌURL“™‚ðŽw’è</p>
<p><img src="images/dbConnectionConf0.gif" width="372" height="265">@<img src="images/dbConnectionConf1.gif" width="372" height="265"></p>
<p><img src="images/tryit000.gif" width="61" height="13"> database ‚É ƒe[ƒuƒ‹‚ðì¬‚µ‚Ä‚Ý‚Ü‚µ‚傤B</p>
<p>cray database modeling ‚ō쐬‚µ‚½SQL‚ðŽÀs‚µ‚Ü‚µ‚傤B<br>
java ƒp[ƒXƒyƒNƒeƒBƒu‚Å xxx.sql ‚ðŠJ‚¢‚āAMenuBar &gt; SQL &gt; Exqute<br>
DbEdit ƒp[ƒXƒyƒNƒeƒBƒu‚É–ß‚Á‚āAdatabase ‚É tabale ‚ª’ljÁ‚³‚ꂽ‚±‚Æ‚ðŠm”F‚µ‚Ü‚·B </p>
<p><img src="images/dbEdit0.gif" width="251" height="347"></p>
<p>Tables View ‚ð‰EƒNƒŠƒbƒN‚µ‚ăRƒ“ƒeƒLƒXƒgƒƒjƒ…[‚©‚ç Table ‚ð‘I‘ð‚·‚é‚ƁAV‹Kƒe[ƒuƒ‹‚̍쐬‚à‚Å‚«‚Ü‚·B <br>
ƒe[ƒuƒ‹‚ðƒ_ƒuƒ‹ƒNƒŠƒbƒN‚µ‚āuInsvƒL[‚ð‰Ÿ‚¹‚΁A‚Ps‘}“ü‚³‚ê‚Ü‚·‚̂ŁA•ÒW‚µ‚ĉEƒNƒŠƒbƒN‚ÌApply Insert ‚Ådatabase ‚ɏ‘‚«ž‚Þ‚±‚Æ‚à‚Å‚«‚Ü‚·B<br>
‚Ü‚½A‚·‚łɃf[ƒ^‚Ì“ü‚Á‚Ä‚¢‚éƒf[ƒ^ƒx[ƒX‚ɐڑ±‚·‚é‚ƁAƒe[ƒuƒ‹‚Æ‚»‚Ì“à—e‚Ì•\Ž¦A•\Ž¦‚³‚ꂽƒf[ƒ^‚̕ύX‚È‚Ç‚ª‚Å‚«‚Ü‚·B</p>
<hr width="100%">
<h2><a name="DBCopy"></a>DB Copy F ƒf[ƒ^ƒx[ƒX‚̃e[ƒuƒ‹‚ðƒRƒs[</h2>
<p>•p”É‚ÉŽg‚¤‹@‰ï‚Í‚È‚¢‚©‚à‚µ‚ê‚Ü‚¹‚ñ‚ªA‚ ‚é‚Æ•Ö—˜‚Å‚·B</p>
<p><img src="images/tryit001.gif" width="61" height="13"> <a href="http://dbcopy.sourceforge.net/en/dbcopy/">http://dbcopy.sourceforge.net/en/dbcopy/</a>
@ ƒ‰ƒCƒZƒ“ƒXF OSL 1.1 @</p>
<p><img src="images/tryit002.gif" width="61" height="13"> ã‹L‚©‚çƒA[ƒJƒCƒu‚ðƒ_ƒEƒ“ƒ[ƒh‚µ‚Ä“WŠJF
ÅV”Å‚Í de.jcon.dbcopy_0.1.6.zip@ƒŠƒŠ[ƒX@2004-07-05</p>
<h3>€”õ</h3>
<p>uÝ’èv„ uDB Copyv„ uJDBC Driverv ‚ð‘I‘ð‚µAJDBC‚̃‰ƒCƒuƒ‰ƒŠ‚ðÝ’è</p>
<p><img src="images/DbCopyConfDriver.gif" width="337" height="296"></p>
<p>“¯‚¶‚­ DB ‚̏î•ñ‚ð“o˜^‚µ‚Ü‚·B ­‚È‚­‚Æ‚àAƒRƒs[Œ³‚ƃRƒs[æ‚Ì‚Q‚‚͕K—v‚Å‚·B( New ) </p>
<p><img src="images/DbCopyConfDB.gif" width="375" height="302"></p>
<p><img src="images/tryit000.gif" width="61" height="13"> ƒe[ƒuƒ‹‚ðƒRƒs[‚µ‚Ä‚Ý‚Ü‚µ‚傤</p>
<p>V‹K¨DB Copy-&gt; Copy ‚Š‚„‚‚‚ƒ database...<br>
ƒRƒs[Œ³‚ÌDBi¶j A ƒRƒs[æ‚ÌDBi‰Ej<br>
ƒRƒs[‚µ‚½‚¢ Table ‚ð‘I‘ð‚µ‚Ä „<br>
Create Tables ‚É ƒ`ƒFƒbƒN ‚µ‚Ä ŽŸ .... </p>
<p><img src="images/DbCopy.gif" width="415" height="389"></p>
<p>‚Å‚«‚Ü‚µ‚½‚©H DbEdit ‚ȂǂŃRƒs[æ‚̃f[ƒ^‚ðŠm”F‚µ‚Ä‚Ý‚Ü‚µ‚傤B</p>
<hr width="100%">
<h2><a name="HibernateSynch"></a>Hibernate Synchronizer F Hibernate ‚Ì O/Rƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹ì¬</h2>
<p> Hibernate ‚ÉŠÖ˜A‚·‚éƒR[ƒh‚ðì¬‚·‚éƒc[ƒ‹‚Å‚·B—Ⴆ‚΁Aƒf[ƒ^ƒx[ƒX‚̃XƒL[ƒ}‚©‚ç Hibernate ‚̃}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚𐶐¬‚µ‚Ä‚­‚ê‚Ü‚·B‚»‚µ‚ă}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚©‚ç
Value Object ‚â DAO ‚𐶐¬‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚·BƒfƒtƒHƒ‹ƒg‚̐ݒè‚ł́Aƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚©‚çƒ\[ƒXƒR[ƒh‚𐶐¬ŒãAƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚ð•ÏX‚·‚é‚ƁAƒ\[ƒXƒR[ƒh‚ÉŽ©“®“I‚É”½‰f‚³‚ê‚Ü‚·B‚Ü‚½A
ƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚̕ҏW‚ðs‚¤‚½‚߂̃GƒfƒBƒ^‚̓R[ƒhƒAƒVƒXƒg‹@”\‚ª‚ ‚è‚Ü‚·B</p>
<p><img src="images/tryit001.gif" width="61" height="13"><a href="http://www.binamics.com/hibernatesynch/">http://www.binamics.com/hibernatesynch/</a>@ƒ‰ƒCƒZƒ“ƒXF
GPL Version2 </p>
<p><img src="images/tryit002.gif" width="61" height="13"> ƒ\ƒtƒgƒEƒFƒA‚̍XVF <a href="http://www.binamics.com/hibernatesync">http://www.binamics.com/hibernatesync</a>@2005/06/03
Žž“_‚̍ŐVƒo[ƒWƒ‡ƒ“‚Í 2.3.1 ‚Å‚·B</p>
<p>¡‰ñ‚Í Hibernate2 ‚ð ƒ_ƒEƒ“ƒ[ƒh‚µ‚Ä“K“–‚ȃfƒBƒŒƒNƒgƒŠ‚É“WŠJ‚µ‚Ü‚·B <a href="http://www.hibernate.org/">http://www.hibernate.org/</a>
<br>
2005/06/03 Žž“_‚̍ŐVƒo[ƒWƒ‡ƒ“‚Í<br>
Hibernat3. 3.0.5@2005/05/25 ƒŠƒŠ[ƒX<br>
Hibernat2. 2.1.8@2005/01/30 ƒŠƒŠ[ƒX</p>
<h3>€”õ</h3>
<p>V‹K Java ƒvƒƒWƒFƒNƒg‚ð ˆÈ‰º‚̍\¬‚ō쐬‚µ‚Ü‚·B</p>
<p><img src="images/hibernateSync1.gif" width="133" height="175"></p>
<p>Hibernate ‚ð“WŠJ‚µ‚½ƒfƒBƒŒƒNƒgƒŠ‚©‚ç •K—v‚ȃ‰ƒCƒuƒ‰ƒŠ‚ð lib ‚ɃRƒs[‚µ‚Ü‚·B“WŠJ‚µ‚½ƒfƒBƒŒƒNƒgƒŠ‚Ì lib/README.txt ‚ÉŠeƒ‰ƒCƒuƒ‰ƒŠ‚ÌŠÈ’P‚Èà–¾‚ª‚ ‚è‚Ü‚·B
required ‚É‚È‚Á‚Ä‚¢‚é‚à‚̂̓fƒtƒHƒ‹ƒg‚Å•K—v‚Å‚·B ˆÈ‰º‚Ì‚à‚Ì‚ðƒRƒs[‚µ‚Ü‚·B</p>
<table width="435" border="1 " cellspacing="0" cellpadding="2">
<tr>
<td width="186">hibernate2.jar</td>
<td width="149">Hibernate </td>
</tr>
<tr>
<td>ehcache-0.9.jar</td>
<td>EHCache cache</td>
</tr>
<tr>
<td>jta.jar</td>
<td>Standard JTA API</td>
</tr>
<tr>
<td>xml-apis.jar</td>
<td>Standard JAXP API</td>
</tr>
<tr>
<td>commons-logging-1.0.4.jar</td>
<td>Commons Logging</td>
</tr>
<tr>
<td>dom4j-1.4.jar</td>
<td>XML configuration &amp; mapping parser</td>
</tr>
<tr>
<td>cglib-full-2.0.2.jar</td>
<td>CGLIB bytecode generator</td>
</tr>
<tr>
<td>jdbc2_0-stdext.jar</td>
<td>Standard Extension JDBC APIs</td>
</tr>
<tr>
<td>commons-collections-2.1.1.jar</td>
<td>Commons Collections</td>
</tr>
<tr>
<td>odmg-3.0.jar</td>
<td>ODMG API </td>
</tr>
</table>
<p>ƒRƒs[‚µ‚½‚çAƒ‰ƒCƒuƒ‰ƒŠ‚ðƒNƒ‰ƒXƒpƒX‚ɒljÁ‚µ‚Ü‚·BmySQL‚Ìjdbc ƒhƒ‰ƒCƒo[‚É‚àƒpƒX‚ð’Ê‚µ‚Ü‚·B‚Ü‚½AHibernate ‚ð“WŠJ‚µ‚½ƒfƒBƒŒƒNƒgƒŠ‚Ì
etc/log4j.properties ‚ð config ‚ɃRƒs[‚µ‚Ü‚·BŽŸ‚ɁAƒf[ƒ^ƒx[ƒX‚ɐڑ±‚·‚邽‚߂ɁAconfig file‚ðì¬‚µ‚Ü‚·BV‹K¨Hibernate
Configureation File@FŒ‹‰Ê‚Æ‚µ‚Ä hibernate.cfg.xml ‚ª‚Å‚«‚Ü‚·B </p>
<table width="42%" border="0">
<tr>
<td width="390"><img src="images/hibernateSync61.gif" width="371" height="344"></td>
<td width="513" valign="top">
<table border="0" width="362" cellpadding="4" cellspacing="0">
<tr valign="top">
<td width="13"><img src="images/1.gif" width="13" height="13"></td>
<td width="472">
<p>ContainerF ƒtƒ@ƒCƒ‹‚ðì¬‚·‚éêŠ‚ðŽw’è <br>
/Sample/config</p>
</td>
</tr>
<tr valign="top">
<td width="13"><img src="images/2.gif" width="13" height="13"></td>
<td width="472">Database TypeF MySQL</td>
</tr>
<tr valign="top">
<td width="13"><img src="images/3.gif" width="13" height="13"></td>
<td width="472">Driver ClassF Browse ƒ{ƒ^ƒ“‚ð‰Ÿ‚µ‚Ä Œ^‚É Driver ‚ð“ü‚êA com.mysql.mysql.jdbc.Driver
‚ð‘I‘ð</td>
</tr>
<tr valign="top">
<td width="13"><img src="images/4.gif" width="13" height="13"></td>
<td width="472">Database URLF jdbc:mysql://localhost/test</td>
</tr>
<tr valign="top">
<td width="13"><img src="images/5.gif" width="13" height="13"></td>
<td width="472">UsernameF mysql</td>
</tr>
<tr valign="top">
<td width="13"><img src="images/6.gif" width="13" height="13"></td>
<td width="472">PasswordF </td>
</tr>
</table>
</td>
</tr>
</table>
<p>ƒEƒBƒU[ƒh‚Őݒ肵‚½“à—e‚ª hibernate.cfg.xml ‚ɏ‘‚«ž‚Ü‚ê‚Ä‚¢‚é‚ÆŽv‚¢‚Ü‚·B</p>
<h3>Ú‘±’è‹`ƒtƒ@ƒCƒ‹uhibernate.cfg.xmlv</h3>
<blockquote>
<pre>&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;<br>&lt;!DOCTYPE hibernate-configuration<br> PUBLIC &quot;-//Hibernate/Hibernate Configuration DTD//EN&quot;<br> &quot;http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd&quot;&gt;
&lt;hibernate-configuration&gt;
&lt;session-factory &gt;
&lt;!-- local connection properties --&gt;<br> &lt;property name=&quot;hibernate.connection.url&quot;&gt;jdbc:mysql://localhost/test&lt;/property&gt;
&lt;property name=&quot;hibernate.connection.driver_class&quot;&gt;com.mysql.jdbc.Driver&lt;/property&gt;<br> &lt;property name=&quot;hibernate.connection.username&quot;&gt;mysql&lt;/property&gt;<br> &lt;property name=&quot;hibernate.connection.password&quot;&gt;mysql&lt;/property&gt;<br> &lt;!-- property name=&quot;hibernate.connection.pool_size&quot;&gt;&lt;/property --&gt;
&lt;!-- dialect for MySQL --&gt;<br> &lt;property name=&quot;dialect&quot;&gt;net.sf.hibernate.dialect.MySQLDialect&lt;/property&gt;
&lt;property name=&quot;hibernate.show_sql&quot;&gt;false&lt;/property&gt;<br> &lt;property name=&quot;hibernate.use_outer_join&quot;&gt;true&lt;/property&gt;<br> &lt;property name=&quot;hibernate.transaction.factory_class&quot;&gt;
@@@@@@@@@@@@@net.sf.hibernate.transaction.JTATransactionFactory&lt;/property&gt;
&lt;property name=&quot;jta.UserTransaction&quot;&gt;java:comp/UserTransaction&lt;/property&gt;<br> &lt;/session-factory&gt;<br>&lt;/hibernate-configuration&gt;
</pre>
</blockquote>
<p><img src="images/tryit000.gif" width="61" height="13"> ƒf[ƒ^ƒx[ƒX‚Ì“à—e‚©‚çAƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚ðì¬‚µ‚Ä‚Ý‚Ü‚µ‚傤B</p>
<p>V‹K ¨ Hibernate Mapping File </p>
<table width="89%" border="0">
<tr>
<td width="338"><img src="images/hibernateSync82.gif" width="335" height="445"></td>
<td width="500" valign="top">
<table border="0" cellspacing="0" cellpadding="4" width="496">
<tr>
<td width="13" valign="top"><img src="images/1.gif" width="13" height="13"></td>
<td width="276" valign="top">Configration ƒ^ƒu‚Ńf[ƒ^[ƒx[ƒXÚ‘±‚Ì password ‚ð“ü—Í</td>
</tr>
<tr>
<td valign="top"><img src="images/2.gif" width="13" height="13"></td>
<td valign="top">Refresh ‚ð‘I‘ð‚µAƒf[ƒ^ƒx[ƒX‚̃e[ƒuƒ‹‚ð“ǂݏo‚· </td>
</tr>
<tr>
<td valign="top"><img src="images/3.gif" width="13" height="13"></td>
<td valign="top">Tables ‚Ƀe[ƒuƒ‹ˆê——‚ª•\Ž¦‚³‚ê‚é‚̂ŁAƒ}ƒbƒsƒ“ƒO‚ðì¬‚·‚é Table ‚Ƀ`ƒFƒbƒN‚ð“ü‚ê‚é</td>
</tr>
<tr>
<td valign="top"><img src="images/4.gif" width="13" height="13"></td>
<td valign="top">ƒpƒbƒP[ƒW‚ð“ü—Í</td>
</tr>
<tr>
<td valign="top"><img src="images/5.gif" width="13" height="13"></td>
<td valign="top">I—¹‚ð‘I‘ð‚·‚é‚Æ table–ˆ‚Ɂ`.hbm ‚Æ‚¢‚¤ƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚ªì¬‚³‚ê‚Ü‚·B <br>
iproperties ƒ^ƒu‚ÅŠg’£Žq‚È‚Ç‚ðŽw’è‚Å‚«‚Ü‚·j</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
</table>
</td>
</tr>
</table>
<p>Properties ƒ^ƒu </p>
<table width="87%" border="0">
<tr>
<td width="343" valign="top"><img src="images/hibernateSync91.gif" width="339" height="240"></td>
<td width="495" valign="top">
<table width="469" border="0" cellpadding="4" cellspacing="0">
<tr>
<td width="11" valign="top"><img src="images/1.gif" width="13" height="13"></td>
<td width="439" valign="top">Šg’£Žq</td>
</tr>
<tr>
<td valign="top" width="11"><img src="images/2.gif" width="13" height="13"></td>
<td valign="top" width="439">•¡‡ƒL[‚ðŽg—p‚·‚éê‡‚Ì composite-id ‚Ìname‚ðŽw’è </td>
</tr>
<tr>
<td valign="top" width="11"><img src="images/3.gif" width="13" height="13"></td>
<td valign="top" width="439">generator-class ‚ðŽw’è‚Å‚«‚Ü‚· </td>
</tr>
<tr>
<td valign="top" width="11"><img src="images/4.gif" width="13" height="13"></td>
<td valign="top" width="439">‹t‚ÌŠÖ˜A‚ð•\‚·set—v‘f‚𐶐¬‚µ‚Ü‚·</td>
</tr>
<tr>
<td valign="top" width="11"><img src="images/5.gif" width="13" height="13"></td>
<td valign="top" width="439">Lazy Load ‚ðŽg—p‚µ‚Ü‚· </td>
</tr>
<tr>
<td valign="top" width="11"><img src="images/6.gif" width="13" height="13"></td>
<td valign="top" width="439">ƒvƒƒpƒeƒB‚̐擪•¶Žš‚ð¬•¶Žš‚É‚µ‚Ü‚·</td>
</tr>
<tr>
<td valign="top" width="11"><img src="images/7.gif" width="13" height="13"></td>
<td valign="top" width="439"> lazy‰Šú‰»ƒvƒƒLƒV‚ÉŽg‚¤ƒCƒ“ƒ^[ƒtƒFƒCƒX‚ðŽw’肵‚Ü‚·</td>
</tr>
<tr>
<td width="11">&nbsp;</td>
<td width="439">&nbsp;</td>
</tr>
</table>
</td>
</tr>
</table>
<h3>ì¬‚³‚ê‚éƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚Ì—áF Member.hbm</h3>
<blockquote>
<p>ƒe[ƒuƒ‹\¬</p>
<pre class="cmd">mysql&gt; show columns from member;<br>+------------+----------+------+-----+---------+-------+<br>| Field | Type | Null | Key | Default | Extra |<br>+------------+----------+------+-----+---------+-------+<br>| MEMBER_ID | int(11) | | PRI | 0 | |<br>| NAME | char(10) | YES | | NULL | |<br>| PROJECT_NO | int(11) | YES | | NULL | |<br>+------------+----------+------+-----+---------+-------+</pre>
<p>Member.hbm</p>
<pre>&lt;?xml version=&quot;1.0&quot;?&gt;<br>&lt;!DOCTYPE hibernate-mapping PUBLIC<br> &quot;-//Hibernate/Hibernate Mapping DTD//EN&quot;<br> &quot;http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd&quot; &gt;
&lt;hibernate-mapping package=&quot;comware&quot;&gt;<br> &lt;class name=&quot;Member&quot; table=&quot;member&quot;&gt;<br> &lt;id<br> column=&quot;MEMBER_ID&quot;<br> name=&quot;Id&quot;<br> type=&quot;integer&quot;<br> &gt;<br> generator class=&quot;vm&quot; /&gt;<br> &lt;/id&gt;<br> &lt;property<br> column=&quot;PROJECT_NO&quot;<br> name=&quot;ProjectNo&quot;<br> type=&quot;integer&quot;<br> not-null=&quot;false&quot;<br> length=&quot;11&quot;<br> /&gt;<br> &lt;property<br> column=&quot;NAME&quot;<br> length=&quot;10&quot;<br> name=&quot;Name&quot;<br> not-null=&quot;false&quot;<br> type=&quot;string&quot;<br> /&gt;<br> &lt;set inverse=&quot;true&quot; name=&quot;ProjectSet&quot;&gt;<br> &lt;key column=&quot;MEMBER_ID&quot; /&gt;<br> &lt;one-to-many class=&quot;Project&quot; /&gt;<br> &lt;/set&gt;<br> &lt;/class&gt;<br>&lt;/hibernate-mapping&gt;</pre>
</blockquote>
<p>‚³‚ç‚É hibernate.cfg.xml ‚ɍ¡ì¬‚µ‚½ƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚ª’ljÁ‚³‚ê‚Ü‚·B</p>
<blockquote>
<pre>@@@@@@@:
@@@@@@@:
&lt;mapping resource=&quot;Project.hbm&quot; /&gt;<br> &lt;mapping resource=&quot;Member.hbm&quot; /&gt;<br> &lt;/session-factory&gt;<br>&lt;/hibernate-configuration&gt;</pre>
</blockquote>
<p>ƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚ð‰EƒNƒŠƒbƒN‚µ‚āAHibernate Synchronizer &gt; Synchronize File ‚ð‘I‘ð‚·‚é‚Æ Java
‚̃\[ƒXƒR[ƒh‚ªì¬‚³‚ê‚Ü‚·B</p>
<table border="0">
<tr>
<td><img src="images/hibernateSync101.gif" width="402" height="280"></td>
<td width="401" valign="top">
<table width="457" border="0" cellpadding="4" cellspacing="0">
<tr>
<td width="11" valign="top"><img src="images/1.gif" width="13" height="13"></td>
<td width="430" valign="top"> hibernate.cfg.xml ‚É &lt;mapping resource=&quot;`.hbm&quot;
/&gt; ‚ð’ljÁ‚µ‚Ü‚·</td>
</tr>
<tr>
<td valign="top" width="11"><img src="images/2.gif" width="13" height="13"></td>
<td valign="top" width="430">Ž©•ª‚ō쐬‚µ‚½ Template ‚ðŒ³‚Éƒ\[ƒXƒR[ƒh‚ðì¬‚µ‚Ü‚·</td>
</tr>
<tr>
<td valign="top" width="11"><img src="images/3.gif" width="13" height="13"></td>
<td valign="top" width="430">Java ‚̃\[ƒXƒR[ƒh‚ªì¬‚³‚ê‚Ü‚·</td>
</tr>
<tr>
<td valign="top" width="11"><img src="images/4.gif" width="13" height="13"></td>
<td valign="top" width="430">Šù‘¶ƒ\[ƒX‚ðã‘‚«ì¬‚µ‚Ü‚·</td>
</tr>
<tr>
<td valign="top" width="11"><img src="images/5.gif" width="13" height="13"></td>
<td valign="top" width="430">ƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚ÆŠÖ˜A‚·‚éƒ\[ƒXƒR[ƒh‚ªíœ‚³‚ê‚Ü‚·</td>
</tr>
<tr>
<td width="11">&nbsp;</td>
<td width="430">&nbsp;</td>
</tr>
<tr>
<td width="11">&nbsp;</td>
<td width="430">&nbsp;</td>
</tr>
</table>
</td>
</tr>
</table>
<p>Member ƒe[ƒuƒ‹‚Æ project ƒe[ƒuƒ‹‚ɂ‚¢‚āAˆÈ‰º‚̂悤‚Ƀ\[ƒXƒR[ƒh‚ªì¬‚³‚ê‚Ü‚·B</p>
<p><img src="images/hibernateSync11.gif" width="263" height="295"></p>
<p>MemberƒNƒ‰ƒXŠÖ˜A‚ÌŒp³ŠÖŒW‚͈ȉº‚̂悤‚É‚È‚è‚Ü‚·B¶‘¤‚ªValue Object ‰E‘¤‚ª DAO ‚Å‚·B</p>
<p><img src="images/hibernateSync13.gif" width="576" height="292"></p>
<blockquote>
<p>ˆÈ‰º‚̂悤‚ȃeƒXƒgƒNƒ‰ƒX‚ðì¬‚·‚é‚ƃf[ƒ^ƒx[ƒX‚Ì“à—e‚ªŽQÆ‚Å‚«‚Ü‚·B</p>
<pre>
@@@@@@F
@@@@@È—ª
@@@@@@F
public static void main(String[] args) {
try {
_RootDAO.initialize(); // configu file ‚ðƒ[ƒh‚µ SessionFactory ‚ðì¬
MemberDAO dao = new MemberDAO();
List members = dao.findAll(); // session ‚Ì open ‚à‚±‚ÌŽž
for (ListIterator lite = members.listIterator(); lite.hasNext();) {
Member member = (Member) lite.next();
System.out.println("ID = " + member.getId() +
", Name = " + member.getName());
}
Integer id = new Integer(1);
Member member = dao.load(id);
System.out.println(member.getName());
F
F
</pre>
</blockquote>
<h3>ƒeƒ“ƒvƒŒ[ƒg‚̍쐬</h3>
<p>Hibernate Synchronizer ‚ł̓\[ƒXƒR[ƒh‚̍쐬‚É Jakarta Project ‚Ì <a href="http://jakarta.apache.org/velocity/">Velocity</a>
‚ðŽg‚Á‚Ä‚¢‚Ü‚·B Velocity ƒeƒ“ƒvƒŒ[ƒgŒ¾Œê (VTL) ‚̃Šƒtƒ@ƒŒƒ“ƒX‚Í‚»‚¿‚ç‚ðŽQÆŠè‚¢‚Ü‚·B‚Ü‚½A<a href="http://www.binamics.com/hibernatesynch/">Synchroniser
‚Ì HP</a> ‚Å Struts ‚Ì Template ‚ªŒöŠJ‚³‚ê‚Ä‚¢‚Ü‚·B ‚Ü‚¸Aƒ[ƒNƒXƒy[ƒX‚Ƀeƒ“ƒvƒŒ[ƒg‚ðì¬‚µ‚Ü‚·B‚»‚µ‚ăvƒƒWƒFƒNƒgƒeƒ“ƒvƒŒ[ƒg‚Æ‚µ‚Ä‚»‚ê‚ð“o˜^‚µ‚Ä‚¨‚«‚Ü‚·B‚·‚é‚ƃR[ƒh‚ðì¬‚·‚鎞‚Ƀeƒ“ƒvƒŒ[ƒg‚ª“K—p‚³‚ê‚Ü‚·B</p>
<p>_BaseRootDAO‚Ì—á( ‘g‚ݍž‚ÝTemplate ) </p>
<blockquote>
<pre>package ${class.BaseDAOPackageName}; &lt;--- HibernateClass.getBaseDAOPackageName()API‚ðŽQÆ
import java.io.Serializable;
import java.math.BigDecimal;
@@@@F
@@@È—ª
@@@@F
public abstract class _BaseRootDAO {
$snippet.BaseRootDAOSessionMethods <----- snippet ‚Ì—˜—p
/**
* Return the name of the configuration file to be used with this DAO or null if default
*/
public String getConfigurationFileName () {
return null;
}
@@@@F
@@@@F
}</pre>
</blockquote>
<p>ƒ[ƒNƒXƒy[ƒX‚ÉTemplate ‚ðì¬F ƒEƒBƒ“ƒhƒE ¨ Ý’è ¨ Hibernate Synchronizer</p>
<table width="87%" border="0">
<tr>
<td width="439"><img src="images/hibernateSync31.gif" width="429" height="346"></td>
<td width="399" valign="top">
<table width="408" border="0" cellpadding="4" cellspacing="0">
<tr>
<td valign="top"><img src="images/1.gif" width="13" height="13"></td>
<td valign="top">templateƒtƒ@ƒCƒ‹izipŒ`Ž®j‚ðƒCƒ“ƒ|[ƒg‚µ‚Ü‚· </td>
</tr>
<tr>
<td valign="top"><img src="images/2.gif" width="13" height="13"></td>
<td valign="top">V‚½‚É ƒ[ƒNƒXƒy[ƒX‚Étemplate ‚ðì¬‚µ‚Ü‚· </td>
</tr>
<tr>
<td valign="top"><img src="images/3.gif" width="13" height="13"></td>
<td valign="top">‚±‚±‚Å’è‹`‚µ‚½ƒJƒXƒ^ƒ€ template ‚ðŽg—p‚µ‚ăR[ƒh‚𐶐¬‚·‚é</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
</table>
</td>
</tr>
</table>
<p>Snippets ƒ^ƒu@i template ‚ÅŽg—p‚·‚é •”•i, template ) </p>
<p><img src="images/hibernateSync4.gif" width="446" height="359"></p>
<p>Edit ‚̉æ–Ê ( BaseClassComments ‚Ì—áj </p>
<p><img src="images/hibernateSync5.gif" width="438" height="263"> </p>
<p>ƒvƒƒWƒFƒNƒgƒeƒ“ƒvƒŒ[ƒg‚Ì“o˜^FƒvƒƒWƒFƒNƒg‚̃vƒƒpƒeƒB[ ¨ Hibernate Synchronizer ¨ Templates </p>
<table width="96%" border="0" cellspacing="0" cellpadding="4">
<tr>
<td width="446" rowspan="9"><img src="images/hibernateSync102.gif" width="446" height="359"></td>
<td width="4" valign="top"><img src="images/1.gif" width="13" height="13"></td>
<td width="430" valign="top">ˆÈ‘O Export ‚µ‚½ƒvƒƒWƒFƒNƒgƒeƒ“ƒvƒŒ[ƒg‚ðƒCƒ“ƒ|[ƒg‚µ‚Ü‚·</td>
</tr>
<tr>
<td width="4" valign="top"><img src="images/2.gif" width="13" height="13"></td>
<td valign="top" width="430">V‚½‚ɃvƒƒWƒFƒNƒgƒeƒ“ƒvƒŒ[ƒg‚ðì¬‚µ‚Ü‚·</td>
</tr>
<tr>
<td width="4" valign="top"><img src="images/3.gif" width="13" height="13"></td>
<td valign="top" width="430">ƒ[ƒNƒXƒy[ƒX‚ɍ쐬‚µ‚½ template ‚©‚çŽg—p‚·‚éƒeƒ“ƒvƒŒ[ƒg‚ð‘I‘ð‚µ‚Ü‚·</td>
</tr>
<tr>
<td width="4" valign="top"><img src="images/4.gif" width="13" height="13"></td>
<td valign="top" width="430">ƒNƒ‰ƒX–¼‚ðŽw’è‚·‚éBVelocity•Ï”‚ðŽg‚Á‚Ä‚à‚æ‚¢iƒtƒ@ƒCƒ‹–¼‚É‚È‚éj</td>
</tr>
<tr>
<td width="4" valign="top"><img src="images/5.gif" width="13" height="13"></td>
<td valign="top" width="430">ƒpƒbƒP[ƒW–¼‚ðŽw’è‚·‚éBVelocity•Ï”‚ðŽg‚Á‚Ä‚à‚æ‚¢iì¬êŠ‚ÌŽw’èj</td>
</tr>
<tr>
<td width="4" valign="top"><img src="images/6.gif" width="13" height="13"></td>
<td valign="top" width="430">ã‘‚«‚µ‚Ü‚·</td>
</tr>
<tr>
<td width="4" valign="top"><img src="images/7.gif" width="13" height="13"></td>
<td valign="top" width="430">“à—e‚ðƒZ[ƒu</td>
</tr>
<tr>
<td width="4" valign="top"><img src="images/8.gif" width="13" height="13"></td>
<td valign="top" width="430">ƒeƒ“ƒvƒŒ[ƒg‚ÅŽg—p‚·‚é Context parameter ‚ðì¬‚Å‚«‚Ü‚· </td>
</tr>
<tr>
<td width="4" valign="top"><img src="images/9.gif" width="13" height="13"></td>
<td valign="top" width="430">ƒeƒ“ƒvƒŒ[ƒg‚ÅŽg—p‚·‚é Context object ‚ðŽw’è‚Å‚«‚Ü‚·<br>
ƒeƒ“ƒvƒŒ[ƒg‚ÅŽg‚¤Žž‚Í ${obj} ‚ÅŽg—p‚µ‚Ü‚·</td>
</tr>
</table>
<p>Œã‚̓}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚ðŽw’肵‚āASynchronize File ‚Ü‚½‚Í Template Genalation ‚Ń\[ƒXƒR[ƒh‚ªì¬‚³‚ê‚Ü‚·B</p>
<h3>‚»‚Ì‘¼AƒR[ƒhì¬Žž‚ÌðŒ‚ðŽw’è</h3>
<p>ƒvƒƒWƒFƒNƒg‚̃vƒƒpƒeƒB[ ¨ Hibernate Synchronizer ¨ General ( value object ) </p>
<table width="86%" border="0">
<tr>
<td width="265" valign="top"><img src="images/hibernateSync21.gif" width="265" height="190"></td>
<td width="573" valign="top">
<table width="545" border="0" cellpadding="4" cellspacing="0">
<tr>
<td width="13" valign="top"><img src="images/1.gif" width="13" height="13"></td>
<td colspan="2" valign="top">Ž©“®‚Å“¯Šú‚ðs‚¤ ( ƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚ªƒZ[ƒu‚³‚ꂽŽžAƒ\[ƒXƒR[ƒh‚Æ“¯Šú‚ðŽæ‚éj</td>
</tr>
<tr>
<td valign="top"><img src="images/2.gif" width="13" height="13"></td>
<td colspan="2" valign="top">Ž©“®“I‚É value object ‚ðì¬‚·‚é</td>
</tr>
<tr>
<td valign="top"><img src="images/3.gif" width="13" height="13"></td>
<td width="89" rowspan="3" valign="middle">value object ‚̍쐬êŠ‚ðŽw’肵‚Ü‚·
</td>
<td width="259" valign="top">ŽÀ‘•ƒpƒbƒP[ƒW‚̃TƒuƒpƒbƒP[ƒW‚ɍ쐬‚µ‚Ü‚·</td>
</tr>
<tr>
<td valign="top"><img src="images/4.gif" width="13" height="13"></td>
<td valign="top">ŽÀ‘•ƒpƒbƒP[ƒW‚ÆŠÖŒW‚È‚­A“ÆŽ©‚É’è‹`‚µ‚Ü‚·</td>
</tr>
<tr>
<td valign="top"><img src="images/5.gif" width="13" height="13"></td>
<td valign="top">“¯‚¶ƒpƒbƒP[ƒW‚ɍ쐬‚µ‚Ü‚·</td>
</tr>
<tr>
<td valign="top"><img src="images/6.gif" width="13" height="13"></td>
<td colspan="2" valign="top">ã‹L ‚ÅŽw’è‚·‚é Package –¼ ƒfƒtƒHƒ‹ƒg‚Í base </td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
</table>
</td>
</tr>
</table>
<p>Data Access object</p>
<table width="89%" border="0">
<tr valign="top">
<td width="306"><img src="images/hibernateSync22.gif" width="284" height="289"></td>
<td width="552">
<table width="574" border="0" cellpadding="4" cellspacing="0">
<tr>
<td width="9" valign="top"><img src="images/1.gif" width="13" height="13"></td>
<td width="549" valign="top">Ž©“®“I‚É DAOs ‚ðì¬‚·‚é</td>
</tr>
<tr>
<td valign="top" width="9"><img src="images/2.gif" width="13" height="13">`<img src="images/4.gif" width="13" height="13"></td>
<td valign="top" width="549">value object ‚Æ“¯—l‚ɁADAO‚ðì¬‚·‚éêŠ‚ÌŽw’è‚Å‚· </td>
</tr>
<tr>
<td valign="top" width="9"><img src="images/5.gif" width="13" height="13"></td>
<td valign="top" width="549">ì¬êŠ‚̃fƒtƒHƒ‹ƒg‚Í dao ‚Å‚·</td>
</tr>
<tr>
<td valign="top" width="9"><img src="images/6.gif" width="13" height="13"></td>
<td valign="top" width="549"> base value object ‚Æ“¯‚¶ƒpƒbƒP[ƒW‚É base DAOs
‚ðì¬‚·‚é</td>
</tr>
<tr>
<td valign="top" width="9"><img src="images/7.gif" width="13" height="13"></td>
<td valign="top" width="549">root DAO ‚ðƒvƒ‰ƒOƒCƒ“‚ō쐬‚¹‚¸‚ɁAƒJƒXƒ^ƒ€DAO ( template
) ‚ðŽg—p‚µ‚č쐬‚·‚é </td>
</tr>
<tr>
<td width="9">&nbsp;</td>
<td width="549">&nbsp;</td>
</tr>
</table>
</td>
</tr>
</table>
<hr width="100%">
<h2><a name="Hibernator"></a>HibernatorF HQL ( Hibernate Query Language ) ‚ðŽÀs‚·‚é
</h2>
<p>HQL‚ÌŽÀs‚âƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚̐¶¬‚ª‚Å‚«‚Ü‚·B@</p>
<p><img src="images/tryit001.gif" width="61" height="13"> <a href="http://hibernator.sourceforge.net/">http://hibernator.sourceforge.net/</a>@ƒ‰ƒCƒZƒ“ƒXF
LGPL Version 2.1@</p>
<p><img src="images/tryit002.gif" width="61" height="13"> <a href="http://sourceforge.net/projects/hibernator">http://sourceforge.net/projects/hibernator</a>
‚©‚ç hibernator-0.9.6.zip ‚ðƒ_ƒEƒ“ƒ[ƒh ƒŠƒŠ[ƒX <strong>2003-11-02</strong></p>
<blockquote>
<p>* Œ»Ý‚̃ŠƒŠ[ƒX‚Å‚Í Hibernate2 ‚܂ł̑Ήž‚Å‚·B </p>
</blockquote>
<h3>€”õ</h3>
<p>ƒf[ƒ^ƒx[ƒX‚ւ̐ڑ±Ý’è</p>
<p>Hibernator‚̃p[ƒXƒyƒNƒeƒBƒu‚ðŠJ‚­B<br>
Connection View‚̃EƒBƒ“ƒhƒE‚ʼnEƒNƒŠƒbƒN‚µ‚ďo‚Ä‚­‚郁ƒjƒ…[‚©‚çuAddv‚ð‘I‘ð‚µ‚Ü‚·B<br>
ƒvƒƒWƒFƒNƒg‚ð‘I‘ð‚·‚é‚ƈȉº‚̂悤‚ɃvƒƒWƒFƒNƒg‚É‘¶Ý‚·‚éƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚ª•\Ž¦‚³‚ê‚Ü‚·BŽŸ‚ð‘I‘ð‚µ‚Ü‚·B</p>
<p><img src="images/hibernator2.gif" width="347" height="323"></p>
<p>ƒf[ƒ^ƒx[ƒX‚ւ̐ڑ±î•ñ‚ð“ü—Í‚µ‚ďI—¹‚ð‘I‘ð</p>
<p><img src="images/hibernator1.gif" width="307" height="285"></p>
<p>Connection View ‚ō¡Aì¬‚µ‚½ Connection ‚ð‰EƒNƒŠƒbƒN „ Connect !</p>
<p><img src="images/hibernator3.gif" width="215" height="158"> </p>
<p>ƒƒOƒEƒBƒ“ƒhƒE‚ŃGƒ‰[‚ªo‚Ä‚¢‚È‚¢‚±‚Æ‚ðŠm”F‚µ‚Ü‚·B</p>
<p><img src="images/hibernator5.gif" width="597" height="448"></p>
<p><img src="images/tip00000.gif" width="62" height="13"> ƒvƒƒWƒFƒNƒg‚É“¯‚¶ƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹–¼‚ª‚ ‚é‚ƈႤƒfƒBƒŒƒNƒgƒŠ‚É‚ ‚Á‚Ä‚à
Connect ! ‚ŃGƒ‰[‚É‚È‚è‚Ü‚·B‚Ü‚½Aƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚Élazy=&quot;true&quot;‚ª‚ ‚é‚ƁAResult ‚ª•\Ž¦‚³‚ê‚Ü‚¹‚ñB
</p>
<p>ƒf[ƒ^ƒx[ƒX‚ɐڑ±‚³‚ꂽ‚çAHQL‚ÌŽÀs‚ª‚Å‚«‚Ü‚·B<br>
Query View ƒEƒBƒ“ƒhƒE‚É HQL ‚ð“ü‚ê‚Ä Excute ‚ð‰Ÿ‚·‚ƁAŒ‹‰Ê‚ª Result View ‚É•\Ž¦‚³‚ê‚Ü‚·B</p>
<p><img src="images/hibernator6.gif" width="490" height="327"></p>
<p>‚Ü‚½Ajava ƒp[ƒX|ƒXƒyƒNƒeƒBƒu‚É–ß‚Á‚āAHibernator ‚Ì View ‚ðŠJ‚«‚Ü‚·BƒEƒBƒ“ƒhƒE„ƒrƒ…[‚Ì•\Ž¦„‚»‚Ì‘¼„Hibernator
<br>
Hibernator View‚ªŠJ‚¢‚½ó‘Ô‚Å java ‚̃\[ƒX‚ðƒGƒfƒBƒ^‚Œʏí‚̂悤‚ÉŠJ‚­‚ƁAƒ}ƒbƒsƒ“ƒO‚̃Cƒ[ƒW‚ª View ‚É•\Ž¦‚³‚ê‚Ü‚·B‚»‚µ‚āAi
ƒ}[ƒN‚ðƒNƒŠƒbƒN‚·‚é‚ƃtƒ@ƒCƒ‹‚ɃZ[ƒu‚³‚ê‚Ü‚·B</p>
<p><img src="images/hibernator41.gif" width="633" height="189"></p>
<p><img src="images/note0000.gif" width="62" height="13">@Œ»óAƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚Ì class
‘®«‚ÍŠ®‘SCü–¼‚ðŽw’肵‚Ä‚¢‚È‚¢‚ƁAclassNotFoundException ‚É‚È‚Á‚Ä‚µ‚Ü‚¢‚Ü‚·BHibernate Synchronizer ‚ōì‚Á‚½ƒ}ƒbƒsƒ“ƒOƒtƒ@ƒCƒ‹‚Í
class ‘®«‚ªŠ®‘SCü–¼‚Å‚È‚¢‚̂ŁA’ˆÓ‚ª•K—v‚Å‚·B</p>
<hr width="100%">
<small><font size="2">Java‚¨‚æ‚Ñ‚»‚Ì‘¼‚ÌJava‚ðŠÜ‚ޏ¤•W‚́A•Ä‘ Sun Microsystems, Inc. ‚̏¤•W‚Å‚ ‚èA“¯ŽÐ‚ÌJavaƒuƒ‰ƒ“ƒh‚ðŽg—p‚µ‚½‹Zp‚ðŽg—p‚µ‚½»•i‚ðŽw‚µ‚Ü‚·B<br>
Windows‚́A•Ä‘Microsoft Corporation‚̕č‘‚¨‚æ‚с@‚»‚Ì‘¼‚̍‘‚É‚¨‚¯‚é“o˜^¤•W‚Å‚·B<br>
Windows ‚̐³Ž®–¼Ì‚́A@Microsoft(R) Windows(R) Operating System ‚Å‚·B<br>
‹LÚ‚³‚ê‚Ä‚¢‚鐻•i–¼A‰ïŽÐ–¼‚́A‚»‚ꂼ‚ê‚̉ïŽÐ‚́@“o˜^¤•W‚Ü‚½‚͏¤•W‚Å‚·B</font></small>
<p>@</p>
<p>@</p>
<p>@</p>
<p>@</p>
<p>@</p>
</body>
</html>