﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-junmy不断地学习-随笔分类-java</title><link>http://www.blogjava.net/wujun/category/8899.html</link><description>不断地学习
&lt;br&gt;
踏踏实实做技术....学而不思则罔，思而不学则殆。——《论语·为政》
&lt;br&gt;
...&lt;!--
target=_blank
&lt;font color=red&gt;

&lt;script type="text/javascript" src="http://fastonlineusers.com/on2.php?

d=www.blogjava.net/wujun"&gt;&lt;/script&gt; online&lt;/a&gt;&lt;/font&gt;
--&gt;
&lt;br&gt;
&lt;!--&lt;script src="http://www.NewZGC.com/others/counter/counter.asp?username=wujun2008&amp;style=10"&gt;&lt;/script&gt;--&gt;
&lt;br&gt;
</description><language>zh-cn</language><lastBuildDate>Tue, 27 Feb 2007 11:23:19 GMT</lastBuildDate><pubDate>Tue, 27 Feb 2007 11:23:19 GMT</pubDate><ttl>60</ttl><item><title>jsp url重写</title><link>http://www.blogjava.net/wujun/archive/2007/01/10/jsp_urlrewrite.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Wed, 10 Jan 2007 05:38:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2007/01/10/jsp_urlrewrite.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/92888.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2007/01/10/jsp_urlrewrite.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/92888.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/92888.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: jsp url重写&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2007/01/10/jsp_urlrewrite.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/92888.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2007-01-10 13:38 <a href="http://www.blogjava.net/wujun/archive/2007/01/10/jsp_urlrewrite.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>2006年一些文章索引[总结]</title><link>http://www.blogjava.net/wujun/archive/2007/01/07/junmy2006.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Sat, 06 Jan 2007 17:09:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2007/01/07/junmy2006.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/92180.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2007/01/07/junmy2006.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/92180.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/92180.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 列出2006年一些文章，方便大家查看.&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2007/01/07/junmy2006.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/92180.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2007-01-07 01:09 <a href="http://www.blogjava.net/wujun/archive/2007/01/07/junmy2006.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>偷窥struts+hibernate分页(第二种方法) </title><link>http://www.blogjava.net/wujun/archive/2006/08/30/65891.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Wed, 30 Aug 2006 01:59:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/08/30/65891.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/65891.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/08/30/65891.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/65891.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/65891.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:  应用Hibernate3的DetachedCriteria实现分页查询&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2006/08/30/65891.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/65891.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-08-30 09:59 <a href="http://www.blogjava.net/wujun/archive/2006/08/30/65891.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>偷窥struts+hibernate分页(第一种方法)</title><link>http://www.blogjava.net/wujun/archive/2006/08/29/65890.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Tue, 29 Aug 2006 03:38:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/08/29/65890.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/65890.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/08/29/65890.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/65890.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/65890.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 偷窥struts+hibernate分页(第一种方法)&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2006/08/29/65890.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/65890.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-08-29 11:38 <a href="http://www.blogjava.net/wujun/archive/2006/08/29/65890.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Nhibernate随记</title><link>http://www.blogjava.net/wujun/archive/2006/08/02/61299.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Wed, 02 Aug 2006 02:09:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/08/02/61299.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/61299.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/08/02/61299.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/61299.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/61299.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在asp.net中.配置.NHibernate文件,asp.net 中Nhibernate Session 管理.. 加载 hbm.xml 实体 <br>&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2006/08/02/61299.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/61299.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-08-02 10:09 <a href="http://www.blogjava.net/wujun/archive/2006/08/02/61299.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate uuid.hex主键生成+spring带来的困惑</title><link>http://www.blogjava.net/wujun/archive/2006/05/31/49143.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Tue, 30 May 2006 17:04:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/05/31/49143.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/49143.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/05/31/49143.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/49143.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/49143.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 第二次插入就报错?怎么会这样,第一次可以添加进数据库,第二次再调用dao.addCloumn()就报错？<br><br>这样做应该是没有问题的啊？？<br>&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2006/05/31/49143.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/49143.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-05-31 01:04 <a href="http://www.blogjava.net/wujun/archive/2006/05/31/49143.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>夏昕ibatisiBATIS 2.0 开发指南配置文件说明</title><link>http://www.blogjava.net/wujun/archive/2006/05/24/47774.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Wed, 24 May 2006 02:47:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/05/24/47774.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/47774.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/05/24/47774.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/47774.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/47774.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 夏昕ibatisiBATIS 2.0 开发指南[配置文件说明。。。。。。。。。。。。。&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2006/05/24/47774.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/47774.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-05-24 10:47 <a href="http://www.blogjava.net/wujun/archive/2006/05/24/47774.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ibatis 使用笔记</title><link>http://www.blogjava.net/wujun/archive/2006/05/23/47592.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Tue, 23 May 2006 02:30:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/05/23/47592.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/47592.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/05/23/47592.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/47592.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/47592.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: ibatis 初步..............&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2006/05/23/47592.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/47592.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-05-23 10:30 <a href="http://www.blogjava.net/wujun/archive/2006/05/23/47592.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate调用mysql5.0存储过程小记</title><link>http://www.blogjava.net/wujun/archive/2006/05/20/47150.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Sat, 20 May 2006 03:21:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/05/20/47150.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/47150.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/05/20/47150.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/47150.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/47150.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: hibernate3调用mysql存储过程,其实也是很简单的<br>带源代码下载...&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2006/05/20/47150.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/47150.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-05-20 11:21 <a href="http://www.blogjava.net/wujun/archive/2006/05/20/47150.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用MiddleGen 产生hibernate的数据库表映射文件</title><link>http://www.blogjava.net/wujun/archive/2006/05/16/46299.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Mon, 15 May 2006 16:11:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/05/16/46299.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/46299.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/05/16/46299.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/46299.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/46299.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 虽然myEclipse也可以生成，但是这种方式也看一下...也还是不错的..&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2006/05/16/46299.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/46299.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-05-16 00:11 <a href="http://www.blogjava.net/wujun/archive/2006/05/16/46299.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate继承---联合子类 已更新(六) </title><link>http://www.blogjava.net/wujun/archive/2006/04/14/41171.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Fri, 14 Apr 2006 13:50:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/04/14/41171.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/41171.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/04/14/41171.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/41171.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/41171.html</trackback:ping><description><![CDATA[<p>这篇和上一篇<a href="/wujun/archive/2006/04/11/40527.html">http://www.blogjava.net/wujun/archive/2006/04/11/40527.html</a><br />不同的地方在于配置文件上。<br />上一篇采用的是<span style="COLOR: #800000">joined-subclass <br /><br />先看先看由满江红翻译团队(RedSaga Translate Team)翻译的联合子类说明..<br /></span></p>
		<div class="programlistingco">
				<pre class="programlisting">&lt;union-subclass
        name="ClassName"                    <span class="co">(1)</span>
        table="tablename"                   <span class="co">(2)</span>
        proxy="ProxyInterface"              <span class="co">(3)</span>
        lazy="true|false"                   <span class="co">(4)</span>
        dynamic-update="true|false"
        dynamic-insert="true|false"
        schema="schema"
        catalog="catalog"
        extends="SuperclassName"
        abstract="true|false"
        persister="ClassName"
        subselect="SQL expression"
        entity-name="EntityName"
        node="element-name"&gt;

        &lt;property .... /&gt;
        .....
&lt;/union-subclass&gt;</pre>
				<div class="calloutlist">
						<table summary="Callout list" border="0">
								<tbody>
										<tr>
												<td valign="top" align="left" width="5%">(1)</td>
												<td valign="top" align="left">
														<p>
																<tt class="literal">name</tt>: 子类的全限定名。 </p>
												</td>
										</tr>
										<tr>
												<td valign="top" align="left" width="5%">(2)</td>
												<td valign="top" align="left">
														<p>
																<tt class="literal">table</tt>: 子类的表名 </p>
												</td>
										</tr>
										<tr>
												<td valign="top" align="left" width="5%">(3)</td>
												<td valign="top" align="left">
														<p>
																<tt class="literal">proxy</tt> (可选): 指定一个类或者接口，在延迟装载时作为代理使用。 </p>
												</td>
										</tr>
										<tr>
												<td valign="top" align="left" width="5%">(4)</td>
												<td valign="top" align="left">
														<p>
																<tt class="literal">lazy</tt> (可选, 默认是 <tt class="literal">true</tt>): 设置为 <tt class="literal">lazy="false"</tt> 禁止使用延迟装载。 </p>
												</td>
										</tr>
								</tbody>
						</table>
				</div>
		</div>
		<p>这种映射策略不需要指定辨别标志(discriminator)字段。 </p>
		<p>更多关于继承映射的信息，参考<a title="第 10 章 继承映射(Inheritance Mappings)" href="http://www.huihoo.com/framework/hibernate/reference-v3_zh-cn/inheritance.html" tppabs="http://www.hibernate.org/hib_docs/v3/reference/zh-cn/html/inheritance.html">第 10 章 <i>继承映射(Inheritance Mappings)</i></a>。 </p>
		<p>
				<br />好了。。看 一个例子<br />看这个配置文件</p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #0000ff">&lt;?</span>
				<span style="COLOR: #ff00ff">xml version="1.0"</span>
				<span style="COLOR: #0000ff">?&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #0000ff">&lt;!</span>
				<span style="COLOR: #ff00ff">DOCTYPE hibernate-mapping<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN"<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd"</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">hibernate-mapping</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">class </span>
				<span style="COLOR: #ff0000">name</span>
				<span style="COLOR: #0000ff">="com.test.Dog"</span>
				<span style="COLOR: #ff0000"> table</span>
				<span style="COLOR: #0000ff">="dog"</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">  <br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">id </span>
				<span style="COLOR: #ff0000">name</span>
				<span style="COLOR: #0000ff">="aid"</span>
				<span style="COLOR: #ff0000"> type</span>
				<span style="COLOR: #0000ff">="string"</span>
				<span style="COLOR: #ff0000"> unsaved-value</span>
				<span style="COLOR: #0000ff">="null"</span>
				<span style="COLOR: #ff0000"> </span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">column </span>
				<span style="COLOR: #ff0000">name</span>
				<span style="COLOR: #0000ff">="aid"</span>
				<span style="COLOR: #ff0000"> sql-type</span>
				<span style="COLOR: #0000ff">="char(32)"</span>
				<span style="COLOR: #ff0000"> not-null</span>
				<span style="COLOR: #0000ff">="true"</span>
				<span style="COLOR: #0000ff">/&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">generator </span>
				<span style="COLOR: #ff0000">class</span>
				<span style="COLOR: #0000ff">="uuid.hex"</span>
				<span style="COLOR: #0000ff">/&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span>
				<span style="COLOR: #0000ff">&lt;/</span>
				<span style="COLOR: #800000">id</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">property </span>
				<span style="COLOR: #ff0000">name</span>
				<span style="COLOR: #0000ff">="dname"</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">column </span>
				<span style="COLOR: #ff0000">name</span>
				<span style="COLOR: #0000ff">="dname"</span>
				<span style="COLOR: #ff0000"> sql-type</span>
				<span style="COLOR: #0000ff">="varchar(16)"</span>
				<span style="COLOR: #0000ff">/&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span>
				<span style="COLOR: #0000ff">&lt;/</span>
				<span style="COLOR: #800000">property</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">&lt;/</span>
				<span style="COLOR: #800000">class</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">class </span>
				<span style="COLOR: #ff0000">name</span>
				<span style="COLOR: #0000ff">="com.test.Cat"</span>
				<span style="COLOR: #ff0000"> table</span>
				<span style="COLOR: #0000ff">="cat"</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">  <br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">id </span>
				<span style="COLOR: #ff0000">name</span>
				<span style="COLOR: #0000ff">="aid"</span>
				<span style="COLOR: #ff0000"> type</span>
				<span style="COLOR: #0000ff">="string"</span>
				<span style="COLOR: #ff0000"> unsaved-value</span>
				<span style="COLOR: #0000ff">="null"</span>
				<span style="COLOR: #ff0000"> </span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">column </span>
				<span style="COLOR: #ff0000">name</span>
				<span style="COLOR: #0000ff">="aid"</span>
				<span style="COLOR: #ff0000"> sql-type</span>
				<span style="COLOR: #0000ff">="char(32)"</span>
				<span style="COLOR: #ff0000"> not-null</span>
				<span style="COLOR: #0000ff">="true"</span>
				<span style="COLOR: #0000ff">/&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">generator </span>
				<span style="COLOR: #ff0000">class</span>
				<span style="COLOR: #0000ff">="uuid.hex"</span>
				<span style="COLOR: #0000ff">/&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span>
				<span style="COLOR: #0000ff">&lt;/</span>
				<span style="COLOR: #800000">id</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">property </span>
				<span style="COLOR: #ff0000">name</span>
				<span style="COLOR: #0000ff">="cname"</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            </span>
				<span style="COLOR: #0000ff">&lt;</span>
				<span style="COLOR: #800000">column </span>
				<span style="COLOR: #ff0000">name</span>
				<span style="COLOR: #0000ff">="cname"</span>
				<span style="COLOR: #ff0000"> sql-type</span>
				<span style="COLOR: #0000ff">="varchar(16)"</span>
				<span style="COLOR: #0000ff">/&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        </span>
				<span style="COLOR: #0000ff">&lt;/</span>
				<span style="COLOR: #800000">property</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="COLOR: #0000ff">&lt;/</span>
				<span style="COLOR: #800000">class</span>
				<span style="COLOR: #0000ff">&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #0000ff">&lt;/</span>
				<span style="COLOR: #800000">hibernate-mapping</span>
				<span style="COLOR: #0000ff">&gt;</span>
		</div>
		<p>表结构:<br /></p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #0000ff">create</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">table</span>
				<span style="COLOR: #000000"> dog<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />(aid </span>
				<span style="FONT-WEIGHT: bold; COLOR: #000000">varchar</span>
				<span style="COLOR: #000000">(</span>
				<span style="FONT-WEIGHT: bold; COLOR: #800000">32</span>
				<span style="COLOR: #000000">) </span>
				<span style="COLOR: #808080">not</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">null</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">primary</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">key</span>
				<span style="COLOR: #000000">,<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /> dname </span>
				<span style="FONT-WEIGHT: bold; COLOR: #000000">varchar</span>
				<span style="COLOR: #000000">(</span>
				<span style="FONT-WEIGHT: bold; COLOR: #800000">16</span>
				<span style="COLOR: #000000">)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">create</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">table</span>
				<span style="COLOR: #000000"> cat<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />(aid </span>
				<span style="FONT-WEIGHT: bold; COLOR: #000000">varchar</span>
				<span style="COLOR: #000000">(</span>
				<span style="FONT-WEIGHT: bold; COLOR: #800000">32</span>
				<span style="COLOR: #000000">) </span>
				<span style="COLOR: #808080">not</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">null</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">primary</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">key</span>
				<span style="COLOR: #000000">,<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /> cname </span>
				<span style="FONT-WEIGHT: bold; COLOR: #000000">varchar</span>
				<span style="COLOR: #000000">(</span>
				<span style="FONT-WEIGHT: bold; COLOR: #800000">16</span>
				<span style="COLOR: #000000">)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />)</span>
		</div>
		<p>
				<br />写VO<br />Amimal.java</p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #0000ff">package</span>
				<span style="COLOR: #000000"> com.test;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">public</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">class</span>
				<span style="COLOR: #000000"> Animal<br /><img id="Codehighlighter1_39_77_Open_Image" onclick="this.style.display='none'; Codehighlighter1_39_77_Open_Text.style.display='none'; Codehighlighter1_39_77_Closed_Image.style.display='inline'; Codehighlighter1_39_77_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_39_77_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_39_77_Closed_Text.style.display='none'; Codehighlighter1_39_77_Open_Image.style.display='inline'; Codehighlighter1_39_77_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span id="Codehighlighter1_39_77_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.blogjava.net/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_39_77_Open_Text">
						<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">private</span>
						<span style="COLOR: #000000"> String aid;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />   </span>
						<span style="COLOR: #008000">//</span>
						<span style="COLOR: #008000">get set</span>
				</span>
		</div>
		<p>Dog.java<br /></p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #0000ff">package</span>
				<span style="COLOR: #000000"> com.test;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				<span style="COLOR: #0000ff">public</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">class</span>
				<span style="COLOR: #000000"> Dog </span>
				<span style="COLOR: #0000ff">extends</span>
				<span style="COLOR: #000000"> Animal<br /><img id="Codehighlighter1_51_90_Open_Image" onclick="this.style.display='none'; Codehighlighter1_51_90_Open_Text.style.display='none'; Codehighlighter1_51_90_Closed_Image.style.display='inline'; Codehighlighter1_51_90_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_51_90_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_51_90_Closed_Text.style.display='none'; Codehighlighter1_51_90_Open_Image.style.display='inline'; Codehighlighter1_51_90_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span id="Codehighlighter1_51_90_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.blogjava.net/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_51_90_Open_Text">
						<span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span>
						<span style="COLOR: #0000ff">private</span>
						<span style="COLOR: #000000"> String dname;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />  </span>
						<span style="COLOR: #008000">//</span>
						<span style="COLOR: #008000">get set</span>
				</span>
		</div>Cat.java<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">package</span><span style="COLOR: #000000"> com.test;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> Cat </span><span style="COLOR: #0000ff">extends</span><span style="COLOR: #000000"> Animal<br /><img id="Codehighlighter1_51_90_Open_Image" onclick="this.style.display='none'; Codehighlighter1_51_90_Open_Text.style.display='none'; Codehighlighter1_51_90_Closed_Image.style.display='inline'; Codehighlighter1_51_90_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_51_90_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_51_90_Closed_Text.style.display='none'; Codehighlighter1_51_90_Open_Image.style.display='inline'; Codehighlighter1_51_90_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span id="Codehighlighter1_51_90_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_51_90_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000"> String cname;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />  </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">get set</span></span></div>测试。。。<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #008000">//</span><span style="COLOR: #008000">插入</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> doCreate()<br /><img id="Codehighlighter1_36_750_Open_Image" onclick="this.style.display='none'; Codehighlighter1_36_750_Open_Text.style.display='none'; Codehighlighter1_36_750_Closed_Image.style.display='inline'; Codehighlighter1_36_750_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_36_750_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_36_750_Closed_Text.style.display='none'; Codehighlighter1_36_750_Open_Image.style.display='inline'; Codehighlighter1_36_750_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" />    </span><span id="Codehighlighter1_36_750_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_36_750_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">try</span><span style="COLOR: #000000"><br /><img id="Codehighlighter1_58_388_Open_Image" onclick="this.style.display='none'; Codehighlighter1_58_388_Open_Text.style.display='none'; Codehighlighter1_58_388_Closed_Image.style.display='inline'; Codehighlighter1_58_388_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_58_388_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_58_388_Closed_Text.style.display='none'; Codehighlighter1_58_388_Open_Image.style.display='inline'; Codehighlighter1_58_388_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span id="Codehighlighter1_58_388_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_58_388_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            session </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> sf.openSession();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            Dog dog </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Dog();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            dog.setDname(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">small dog</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            Cat cat </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Cat();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            cat.setCname(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">small cat</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            session.save(dog);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            session.save(cat);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            session.flush();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            session.connection().commit();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000">(HibernateException ex)<br /><img id="Codehighlighter1_435_479_Open_Image" onclick="this.style.display='none'; Codehighlighter1_435_479_Open_Text.style.display='none'; Codehighlighter1_435_479_Closed_Image.style.display='inline'; Codehighlighter1_435_479_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_435_479_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_435_479_Closed_Text.style.display='none'; Codehighlighter1_435_479_Open_Image.style.display='inline'; Codehighlighter1_435_479_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span id="Codehighlighter1_435_479_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_435_479_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            ex.printStackTrace();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000">(SQLException ex1)<br /><img id="Codehighlighter1_521_566_Open_Image" onclick="this.style.display='none'; Codehighlighter1_521_566_Open_Text.style.display='none'; Codehighlighter1_521_566_Closed_Image.style.display='inline'; Codehighlighter1_521_566_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_521_566_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_521_566_Closed_Text.style.display='none'; Codehighlighter1_521_566_Open_Image.style.display='inline'; Codehighlighter1_521_566_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span id="Codehighlighter1_521_566_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_521_566_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            ex1.printStackTrace();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">finally</span><span style="COLOR: #000000"><br /><img id="Codehighlighter1_592_743_Open_Image" onclick="this.style.display='none'; Codehighlighter1_592_743_Open_Text.style.display='none'; Codehighlighter1_592_743_Closed_Image.style.display='inline'; Codehighlighter1_592_743_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_592_743_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_592_743_Closed_Text.style.display='none'; Codehighlighter1_592_743_Open_Image.style.display='inline'; Codehighlighter1_592_743_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span id="Codehighlighter1_592_743_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_592_743_Open_Text"><span style="COLOR: #000000">{<br /><img id="Codehighlighter1_613_668_Open_Image" onclick="this.style.display='none'; Codehighlighter1_613_668_Open_Text.style.display='none'; Codehighlighter1_613_668_Closed_Image.style.display='inline'; Codehighlighter1_613_668_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_613_668_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_613_668_Closed_Text.style.display='none'; Codehighlighter1_613_668_Open_Image.style.display='inline'; Codehighlighter1_613_668_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />                </span><span style="COLOR: #0000ff">try</span><span id="Codehighlighter1_613_668_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_613_668_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                    session.close();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />                }</span></span><span style="COLOR: #000000"><br /><img id="Codehighlighter1_715_733_Open_Image" onclick="this.style.display='none'; Codehighlighter1_715_733_Open_Text.style.display='none'; Codehighlighter1_715_733_Closed_Image.style.display='inline'; Codehighlighter1_715_733_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_715_733_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_715_733_Closed_Text.style.display='none'; Codehighlighter1_715_733_Open_Image.style.display='inline'; Codehighlighter1_715_733_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />                </span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000">(HibernateException ex2)</span><span id="Codehighlighter1_715_733_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_715_733_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />                }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">查询</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> doQuery()<br /><img id="Codehighlighter1_788_1400_Open_Image" onclick="this.style.display='none'; Codehighlighter1_788_1400_Open_Text.style.display='none'; Codehighlighter1_788_1400_Closed_Image.style.display='inline'; Codehighlighter1_788_1400_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_788_1400_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_788_1400_Closed_Text.style.display='none'; Codehighlighter1_788_1400_Open_Image.style.display='inline'; Codehighlighter1_788_1400_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" />    </span><span id="Codehighlighter1_788_1400_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_788_1400_Open_Text"><span style="COLOR: #000000">{<br /><img id="Codehighlighter1_801_1164_Open_Image" onclick="this.style.display='none'; Codehighlighter1_801_1164_Open_Text.style.display='none'; Codehighlighter1_801_1164_Closed_Image.style.display='inline'; Codehighlighter1_801_1164_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_801_1164_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_801_1164_Closed_Text.style.display='none'; Codehighlighter1_801_1164_Open_Image.style.display='inline'; Codehighlighter1_801_1164_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">try</span><span id="Codehighlighter1_801_1164_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_801_1164_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            session </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> sf.openSession();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            Query q </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> session.createQuery(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">select d from Dog as d</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            List l </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> q.list();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            Dog dog </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            Cat cat </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> i</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;i</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">l.size();i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)<br /><img id="Codehighlighter1_1051_1154_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1051_1154_Open_Text.style.display='none'; Codehighlighter1_1051_1154_Closed_Image.style.display='inline'; Codehighlighter1_1051_1154_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1051_1154_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1051_1154_Closed_Text.style.display='none'; Codehighlighter1_1051_1154_Open_Image.style.display='inline'; Codehighlighter1_1051_1154_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span><span id="Codehighlighter1_1051_1154_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_1051_1154_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                dog </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> (Dog)l.get(i);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                System.out.println(dog.getDname());<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />            }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /><img id="Codehighlighter1_1202_1246_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1202_1246_Open_Text.style.display='none'; Codehighlighter1_1202_1246_Closed_Image.style.display='inline'; Codehighlighter1_1202_1246_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1202_1246_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1202_1246_Closed_Text.style.display='none'; Codehighlighter1_1202_1246_Open_Image.style.display='inline'; Codehighlighter1_1202_1246_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000">(HibernateException ex)</span><span id="Codehighlighter1_1202_1246_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_1202_1246_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            ex.printStackTrace();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /><img id="Codehighlighter1_1263_1394_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1263_1394_Open_Text.style.display='none'; Codehighlighter1_1263_1394_Closed_Image.style.display='inline'; Codehighlighter1_1263_1394_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1263_1394_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1263_1394_Closed_Text.style.display='none'; Codehighlighter1_1263_1394_Open_Image.style.display='inline'; Codehighlighter1_1263_1394_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">finally</span><span id="Codehighlighter1_1263_1394_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_1263_1394_Open_Text"><span style="COLOR: #000000">{<br /><img id="Codehighlighter1_1280_1327_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1280_1327_Open_Text.style.display='none'; Codehighlighter1_1280_1327_Closed_Image.style.display='inline'; Codehighlighter1_1280_1327_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1280_1327_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1280_1327_Closed_Text.style.display='none'; Codehighlighter1_1280_1327_Open_Image.style.display='inline'; Codehighlighter1_1280_1327_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span><span style="COLOR: #0000ff">try</span><span id="Codehighlighter1_1280_1327_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_1280_1327_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                session.close();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />            }</span></span><span style="COLOR: #000000"><br /><img id="Codehighlighter1_1370_1384_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1370_1384_Open_Text.style.display='none'; Codehighlighter1_1370_1384_Closed_Image.style.display='inline'; Codehighlighter1_1370_1384_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1370_1384_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1370_1384_Closed_Text.style.display='none'; Codehighlighter1_1370_1384_Open_Image.style.display='inline'; Codehighlighter1_1370_1384_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000">(HibernateException ex2)</span><span id="Codehighlighter1_1370_1384_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_1370_1384_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />            }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />    }</span></span></div><img src ="http://www.blogjava.net/wujun/aggbug/41171.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-04-14 21:50 <a href="http://www.blogjava.net/wujun/archive/2006/04/14/41171.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate继承-joined-subclass  已更新(五) </title><link>http://www.blogjava.net/wujun/archive/2006/04/11/40527.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Tue, 11 Apr 2006 14:28:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/04/11/40527.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/40527.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/04/11/40527.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/40527.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/40527.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 还是和前面一样。。先看先看由满江红翻译团队(RedSaga Translate Team)翻译的配置说明每个子类可能被映射到他自己的表中(每个子类一个表的策略)。被继承的状态通过和超类的表关联得到。我们使用&lt;joined-subclass&gt;元素。 &lt;joined-subclass        name="ClassName"                    (1)...&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2006/04/11/40527.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/40527.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-04-11 22:28 <a href="http://www.blogjava.net/wujun/archive/2006/04/11/40527.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate继承之---subclass 已更新(四) </title><link>http://www.blogjava.net/wujun/archive/2006/04/09/40038.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Sat, 08 Apr 2006 16:18:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/04/09/40038.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/40038.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/04/09/40038.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/40038.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/40038.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 先看由满江红翻译团队(RedSaga Translate Team)翻译的子类(subclass)说明,再来看我们的例子多态持久化需要为父类的每个子类都进行定义。对于“每一棵类继承树对应一个表”的策略来说，就需要使用&lt;subclass&gt;定义。 &lt;subclass        name="ClassName"                              (1...&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2006/04/09/40038.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/40038.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-04-09 00:18 <a href="http://www.blogjava.net/wujun/archive/2006/04/09/40038.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate多对多例子-方便以后查看(三) </title><link>http://www.blogjava.net/wujun/archive/2006/04/08/39956.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Sat, 08 Apr 2006 03:11:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/04/08/39956.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/39956.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/04/08/39956.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/39956.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/39956.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 1.建表										create				 				table				 student(sid 				varchar				(				32				) 				not				 				null				 				primary				 				key				, sname 				varchar				(			...&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2006/04/08/39956.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/39956.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-04-08 11:11 <a href="http://www.blogjava.net/wujun/archive/2006/04/08/39956.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate一对多例子-已更新(二) </title><link>http://www.blogjava.net/wujun/archive/2006/04/07/39700.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Thu, 06 Apr 2006 16:07:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/04/07/39700.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/39700.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/04/07/39700.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/39700.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/39700.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 先看由满江红翻译团队(RedSaga Translate Team)翻译的一对多配置说明然后在看例子 一对多关联（One-to-many Associations）																一对多关联														通过外键				连接两个类对应的表,而没有中间集合表。 这个关系模型失去了一些Java集合的语义: 									...&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2006/04/07/39700.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/39700.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-04-07 00:07 <a href="http://www.blogjava.net/wujun/archive/2006/04/07/39700.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate一对一例子-已更新（一） </title><link>http://www.blogjava.net/wujun/archive/2006/04/06/39609.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Thu, 06 Apr 2006 08:05:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/04/06/39609.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/39609.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/04/06/39609.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/39609.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/39609.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 先看由满江红翻译团队(RedSaga Translate Team)翻译的一对一配置说明一对一						持久化对象之间一对一的关联关系是通过one-to-one元素定义的。 						&lt;one-to-one        name="propertyName"                                          (1)      ...&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2006/04/06/39609.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/39609.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-04-06 16:05 <a href="http://www.blogjava.net/wujun/archive/2006/04/06/39609.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate 一对多测试-----笔记</title><link>http://www.blogjava.net/wujun/archive/2006/03/30/38372.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Thu, 30 Mar 2006 14:41:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/03/30/38372.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/38372.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/03/30/38372.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/38372.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/38372.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 最近看那本深入浅出hibernate 真是很不错啊。。讲的也很细。。刚刚小试了一把，真的很过隐。。我用的是MYSQL数据库表结构。1:文章表										CREATE				 				TABLE				 `t_article` (  `a_id` 				int				(				11				) 				NOT				 				NULL	...&nbsp;&nbsp;<a href='http://www.blogjava.net/wujun/archive/2006/03/30/38372.html'>阅读全文</a><img src ="http://www.blogjava.net/wujun/aggbug/38372.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-03-30 22:41 <a href="http://www.blogjava.net/wujun/archive/2006/03/30/38372.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate要点</title><link>http://www.blogjava.net/wujun/archive/2006/03/27/37571.html</link><dc:creator>junmy</dc:creator><author>junmy</author><pubDate>Mon, 27 Mar 2006 03:27:00 GMT</pubDate><guid>http://www.blogjava.net/wujun/archive/2006/03/27/37571.html</guid><wfw:comment>http://www.blogjava.net/wujun/comments/37571.html</wfw:comment><comments>http://www.blogjava.net/wujun/archive/2006/03/27/37571.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wujun/comments/commentRss/37571.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wujun/services/trackbacks/37571.html</trackback:ping><description><![CDATA[原文:<a href="http://blog.csdn.net/sunsnow8/archive/2005/03/05/312359.aspx"><strong><font color="#006bad">http://blog.csdn.net/sunsnow8/archive/2005/03/05/312359.aspx</font></strong></a><br /><br />1.两种配置文件： <br />  A.hibernate.cfg.xml   和   B.hibernate.properties 
<p>  A中可含映射文件的配置，而B中hard codes加映射文件。</p><p>  A。Configuration config=new Configuration().config(); <br />  B. Configuration config=new Configuration(); <br />     config.addClass(TUser.class); </p><p><br />2.你不必一定用hibernate.cfg.xml或hibernate.properties这两文件名， <br />   你也不一定非得把配置文件放在Classes下， <br />   File file=new File("c:\\sample\\myhibernate.xml"); <br />   Configuration config=new Configuration().config(file); </p><p>3. session.Flush() <br />   强制数据库立即同步，当用事务时，不必用flush,事务提交自动调用flush <br />   在session关闭时也会调用flush </p><p><br />4. Hibernate总是使用对象类型作为字段类型 </p><p>5. XDoclet专门建立了hibernate doclet,就是在java代码上加上一些 <br />   java docTag，后来再让XDoclet分析该java代码，生成映射文件; </p><p>6.HQL子句本身大小写无关，但是其中出现的类名和属性名必须注意大小写区分。</p><p>7.关系： <br />  Constrained : 约束，表明主控表的主键上是否存在一个外键（foreigh key） <br />   对其进行约束。 </p><p>  property-ref:关联类中用于与主控类相关联的属性名，默认为关联类的主键属性名</p><p>  单向一对多需在一方配置，双向一对多需在双方进行配置</p><p>8.lazy=false:被动方的记录由hibernate负责记取，之后存放在主控方指定的 <br />  Collection类型属性中 </p><p>9. java.util.Set或net.sof.hibernate.collecton.Bag类型的Collection</p><p><br />10.重要：inverse:用于标识双向关联中的被动方一端。 <br />         inverse=false的一方（主控方）负责维护关联关系.默认值：false </p><p>11.batch-size:采用延迟加载特征时，一次读入的数据数昨。</p><p>12.一对多通过主控方更新（主控方为一方时）</p><p>   user.getAddresses().add(addr); <br />   session.save(user);//通过主控对象级联更新   </p><p>13.在one-to-many 关系中，将many 一方设为主动方（inverse=false）将有助性能 <br />   的改善。在一方设置关系时，inverse=true,即将主控权交给多方， <br />   这样多方可主动从一方获得foreign key,然后一次insert即可完工。 </p><p><br />   addr.setUser(user);//设置关联的TUser对象 <br />   user.getAddresses().add(addr); <br />   session.save(user);//级联更新  </p><p>14.只有设为主控方的一方才关心（访问）对方的属性，被动方是不关心对方的属性的。</p><p>15.one-to-many与many-to-one节点的配置属性不同： <br />   一对多关系多了lazy和inverse两个属性 <br />   多对多节点属性：column:中间映射表中，关联目标表的关联字段 <br />                   class:类名，关联目标类 <br />                   outer-join:是否使用外联接     </p><p>   注意:access是设置属性值的读取方式。</p><p><br />        column是设置关联字段。 </p><p><br />16.多对多，注意两方都要设置inverse和lazy,cascade只能设为insert-update <br />   多对多关系中，由于关联关系是两张表相互引用，因此在保存关系状态时必须对双方同时保存。 </p><p>   group1.getRoles().add(role1); <br />   role1.getGroups().add(group1); </p><p>   session.save(role1); <br />   session.save(group1); </p><p>17.关于vo和po <br />   vo经过hibernate容量处理，就变成了po(该vo的引用将被容器保存，并且在session关闭时flush,因此po如果再传到其它地方改变了，就危险了) <br />  <br />   vo和po相互转换：BeanUtils.copyProperties(anotherUser,user); </p><p>18.对于save操作而言，如果对象已经与Session相关联（即已经被加入Session的实体容器中），则无需进行具体的操作。因为之后的Session.flush过程中，Hibernate <br />会对此实体容器中的对象进行遍历，查找出发生变化的实体，生成并执行相应的update <br />语句。 </p><p>19.如果我们采用了延迟加载机制，但希望在一些情况下，实现非延迟加 <br />载时的功能，也就是说，我们希望在Session关闭后，依然允许操作user的addresses <br />属性 <br />Hibernate.initialize方法可以通过强制加载关联对象实现这一功能： <br />这也正是我们为什么在编写POJO时，必须用JDK Collection接口（如Set,Map）, <br />而非特定的JDK Collection实现类（如HashSet、HashMap）申明Collection属性的 <br />原因。 </p><p>20.事务：从sessionFactory获得session,其自动提交属性就已经关闭(AutoCommit=false),此时若执行了jdbc操作，如果不显式调用session.BeginTransaction(),是不会执行事务操作的。</p><p>   jdbc transaction:基于同一个session(就是同一个connection)的事务; <br />   jta  transaction:跨session（跨connection）事务. </p><p>   对于jta事务，有三种实现方法： <br />     A。UserTransaction tx=new InitialContext().lookup("..."); <br />        tx.commit(); <br />     B. 使用hibernate封装的方法：(不推荐) <br />        Transaction tx=session.beginTransaction(); <br />        tx.commit(); <br />     C. 使用ejb之sessionBean的事务技持方法，你只要在把需要在发布描述符中，把需要jta事务的方法声明为require即可 </p><p>21.悲观锁，乐观锁： <br />   乐观锁一般通过version来实现，注意version节点必须出现在id后。 </p><p><br />22.Hibernate中，可以通过Criteria.setFirstResult和Criteria.setFetchSize方法设定分页范围。 <br />   Query接口中也提供了与其一致的方法，hibernate主要在dialect类中实现在这个功能。 </p><p><br />23.cache <br />   &lt;hibernate-configuration&gt; <br /> &lt;session-factory&gt; <br /> …… <br />  &lt;property name="hibernate.cache.provider_class"&gt; <br />   net.sf.ehcache.hibernate.Provider <br />  &lt;/property&gt;  </p><p>  还需对ecache本身进配置 <br />  &lt;ehcache&gt; <br /> &lt;diskStore path="java.io.tmpdir"/&gt; <br /> &lt;defaultCache <br /> maxElementsInMemory="10000" //Cache中最大允许保存的数据数量 <br /> eternal="false" //Cache中数据是否为常量 <br /> timeToIdleSeconds="120" //缓存数据钝化时间 <br /> timeToLiveSeconds="120" //缓存数据的生存时间 <br /> overflowToDisk="true" //内存不足时，是否启用磁盘缓存 <br /> /&gt; <br />  &lt;/ehcache&gt; </p><p>  之后在映射文件中指定各个映射实体的cache策略 <br />  &lt;class name=" org.hibernate.sample.TUser" .... &gt; <br /> &lt;cache usage="read-write"/&gt; <br /> .... <br /> &lt;set name="addresses" .... &gt; <br />  &lt;cache usage="read-only"/&gt; <br /> .... <br /> &lt;/set&gt; <br /> &lt;/class&gt; </p><p> ***************************************************** <br /> Query.list()跟Query.iterate()的不同： <br /> 对于query.list()总是通过一条sql语句获取所有记录,然后将其读出，填入pojo返回; <br /> 但是query.iterate()，则是首先通过一条Select SQL 获取所有符合查询条件的记录的 <br />id，再对这个id 集合进行循环操作，通过单独的Select SQL 取出每个id 所对应的记 <br />录，之后填入POJO中返回。 </p><p> 也就是说，对于list 操作，需要一条SQL 完成。而对于iterate 操作，需要n+1 <br />条SQL。，list方法将不会从Cache中读取数据。iterator却会。 </p><p><br />24.ThreadLocal:它会为每个线程维护一个私有的变量空间。实际上， <br />其实现原理是在JVM 中维护一个Map，这个Map的key 就是当前的线程对象，而value则是 <br />线程通过ThreadLocal.set方法保存的对象实例。当线程调用ThreadLocal.get方法时， <br />ThreadLocal会根据当前线程对象的引用，取出Map中对应的对象返回。 </p><p> 这样，ThreadLocal通过以各个线程对象的引用作为区分，从而将不同线程的变量隔离开 <br />来。 </p><p><br />25.Hibernate官方开发手册标准示例: <br />  public class HibernateUtil { <br />private static SessionFactory sessionFactory; <br />static { <br />try { <br />// Create the SessionFactory <br />sessionFactory = new <br />Configuration().configure().buildSessionFactory(); <br />} catch (HibernateException ex) { <br />throw new RuntimeException( <br />"Configuration problem: " + ex.getMessage(), <br />ex <br />); <br />} <br />} <br />public static final ThreadLocal session = new ThreadLocal(); <br />public static Session currentSession() throws HibernateException <br />{ <br />Session s = (Session) session.get(); <br />// Open a new Session, if this Thread has none yet <br />if (s == null) { <br />s = sessionFactory.openSession(); <br />session.set(s); <br />} <br />return s; <br />} <br />public static void closeSession() throws HibernateException { <br />Session s = (Session) session.get(); <br />session.set(null); <br />if (s != null) <br />s.close(); <br />} <br />}  </p><p><br />     <br />26.通过filter实现session的重用： <br />   public class PersistenceFilter implements Filter <br />{ <br />protected static ThreadLocal hibernateHolder = new ThreadLocal(); <br />public void doFilter(ServletRequest request, ServletResponse <br />response, FilterChain chain) <br />throws IOException, ServletException <br />{ <br />hibernateHolder.set(getSession()); <br />try <br />{ <br />…… <br />chain.doFilter(request, response); <br />…… <br />} <br />finally <br />{ <br />Session sess = (Session)hibernateHolder.get(); <br />if (sess != null) <br />{ <br />hibernateHolder.set(null); <br />try <br />{ <br />sess.close(); <br />} <br />catch (HibernateException ex) { <br />throw new ServletException(ex); <br />} <br />} <br />} <br />} <br />……} </p><p>27.Spring的参数化事务管理功能相当强大，笔者建议在基于Spring Framework的应用 <br />开发中，尽量使用容器管理事务，以获得数据逻辑代码的最佳可读性。 <br />  <br />public class UserDAO extends HibernateDaoSupport implements IUserDAO <br />{ <br />public void insertUser(User user) { <br />getHibernateTemplate().saveOrUpdate(user); <br />} <br />} </p><p><br />  上面的UserDAO实现了自定义的IUserDAO接口，并扩展了抽象类： <br />HibernateDaoSupport <br />HibernateSupport实现了HibernateTemplate和SessionFactory实例的关联。 <br />HibernateTemplate对Hibernate Session操作进行了封装，而 <br />HibernateTemplate.execute方法则是一封装机制的核心 </p><p>  *在spring的配置文件里，移植了整个hibernate.cfg.xml的内容。</p><br />原文:<a href="http://blog.csdn.net/sunsnow8/archive/2005/03/05/312359.aspx">http://blog.csdn.net/sunsnow8/archive/2005/03/05/312359.aspx</a><br /><img src ="http://www.blogjava.net/wujun/aggbug/37571.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wujun/" target="_blank">junmy</a> 2006-03-27 11:27 <a href="http://www.blogjava.net/wujun/archive/2006/03/27/37571.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>