﻿<?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-Terry Zou-随笔分类-hibernate</title><link>http://www.blogjava.net/ZouYonghui/category/54210.html</link><description /><language>zh-cn</language><lastBuildDate>Thu, 06 Mar 2014 08:34:33 GMT</lastBuildDate><pubDate>Thu, 06 Mar 2014 08:34:33 GMT</pubDate><ttl>60</ttl><item><title>hibernate annotation 之 主键生成策略</title><link>http://www.blogjava.net/ZouYonghui/archive/2014/03/06/410690.html</link><dc:creator>Terry Zou</dc:creator><author>Terry Zou</author><pubDate>Thu, 06 Mar 2014 08:13:00 GMT</pubDate><guid>http://www.blogjava.net/ZouYonghui/archive/2014/03/06/410690.html</guid><wfw:comment>http://www.blogjava.net/ZouYonghui/comments/410690.html</wfw:comment><comments>http://www.blogjava.net/ZouYonghui/archive/2014/03/06/410690.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ZouYonghui/comments/commentRss/410690.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ZouYonghui/services/trackbacks/410690.html</trackback:ping><description><![CDATA[<span style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 10pt/19px Georgia; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px"> 
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; font-size: 10pt">Hibernate<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 微软雅黑; font-size: 10pt">默认总共支持 13 种生成策略 :<span class="Apple-converted-space">&nbsp;</span><br /><br /></span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; font-size: 10pt">1.&nbsp;increment&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: 微软雅黑; font-size: 10pt">2. &nbsp;identity&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: 微软雅黑; font-size: 10pt">3.&nbsp;sequence<br /><br /></span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; font-size: 10pt">4.&nbsp;hilo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 微软雅黑; font-size: 10pt">5.&nbsp;seqhilo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 微软雅黑; font-size: 10pt">6.&nbsp;uuid<br /><br /></span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; font-size: 10pt">7.&nbsp;uuid.hex&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 微软雅黑; font-size: 10pt">8.&nbsp;guid&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 微软雅黑; font-size: 10pt">9.&nbsp;native<br /><br /></span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; font-size: 10pt">10. assigned&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: 微软雅黑; font-size: 10pt">11. select&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 微软雅黑; font-size: 10pt">12. foreign&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: 微软雅黑; font-size: 10pt">13. sequence-identity<br /></span></p>
<p style="margin: 0px 0px 14px">&nbsp;</p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; font-size: 10pt">下面介绍几个较为常用的策略 :<span class="Apple-converted-space">&nbsp;</span><br /><br /></span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: green; font-size: 10pt">&#9312; identity [ 自然递增 ]<br /></span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; font-size: 7.5pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 微软雅黑; font-size: 10pt">支持 DB2，MySQL，SQL Server，Sybase 和HypersonicSQL 数据库， 用于为 long 或 short 或 int 类型生成唯一标识。它依赖于底层不同的数据库，<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 与 Hibernate 和 程序员无关。<br /></span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: rgb(153,51,0); font-size: 10pt">注解示例 :<span class="Apple-converted-space">&nbsp;</span><br /></span></p>
<p style="text-align: left; text-indent: 21pt; margin: 0px 0px 14px" align="left"><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@Id<br /></span></p>
<p style="text-align: left; text-indent: 21pt; margin: 0px 0px 14px" align="left"><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@GenericGenerator</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">(name =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"idGenerator"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">, strategy =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"identity"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">)<br /></span></p>
<p style="text-indent: 21pt; margin: 0px 0px 14px"><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@GeneratedValue</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">(generator =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"idGenerator"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">)<br /></span></p>
<p style="text-indent: 21pt; margin: 0px 0px 14px">&nbsp;</p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: green; font-size: 10pt">&#9313; sequence [ 序列 ]<br /></span></p>
<p style="text-indent: 21pt; margin: 0px 0px 14px"><span style="font-family: 微软雅黑; font-size: 10pt">支持</span><span style="font-family: 微软雅黑; font-size: 10pt"><span class="Apple-converted-space">&nbsp;</span>Oracle</span><span style="font-family: 微软雅黑; font-size: 10pt">，DB2，PostgreSql，SAPDb 等数据库，用于为 long 或 short 或 int 类型生成唯一标识。它需要底层数据库的支持，<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;并由数据库来维护这个 sequence 序列。</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: rgb(153,51,0); font-size: 10pt">注解示例 :<span class="Apple-converted-space">&nbsp;</span><br /></span></p>
<p style="text-align: left; text-indent: 21pt; margin: 0px 0px 14px" align="left"><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@Id</span></p>
<p style="margin: 0px 0px 14px" align="left"><span style="font-family: 'Courier New'; color: black; font-size: 11pt">&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@GenericGenerator</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">(name =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"idGenerator"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">, strategy =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"sequence"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">,</span></p>
<p style="text-align: left; text-indent: 22pt; margin: 0px 0px 14px" align="left"><span style="font-family: 'Courier New'; color: black; font-size: 10pt">parameters = {</span><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@Parameter</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">(name =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"sequence"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">,value=</span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"seq_name"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">)})</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 'Courier New'; color: black; font-size: 11pt">&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@GeneratedValue</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">(generator =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"idGenerator"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">)</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: fuchsia; font-size: 10pt">注意 :<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 微软雅黑; font-size: 10pt">该策略要求设定序列名，否则 hibernate 将无法找到，这将引致抛出异常 :</span></p>
<p style="text-indent: 26.4pt; margin: 0px 0px 14px"><u><span style="font-family: 'Courier New'; color: navy; font-size: 10pt">org.hibernate.exception.SQLGrammarException</span></u><span style="font-family: 'Courier New'; color: red; font-size: 10pt">: could not get next sequence value</span></p>
<p style="text-indent: 26.4pt; margin: 0px 0px 14px">&nbsp;</p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: green; font-size: 10pt">&#9314; native</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; font-size: 7.5pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 微软雅黑; font-size: 10pt">需底层数据库的支持，对于 MySQL，SQL Server 采用 identity 的生成策略，对于 Oracle，则采用 sequence 策略。</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: rgb(153,51,0); font-size: 10pt">注解示例 :</span></p>
<p style="text-align: left; text-indent: 21pt; margin: 0px 0px 14px" align="left"><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@Id</span></p>
<p style="margin: 0px 0px 14px" align="left"><span style="font-family: 'Courier New'; color: black; font-size: 11pt">&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@GenericGenerator</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">(name =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"idGenerator"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">, strategy =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"native"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">)</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 'Courier New'; color: black; font-size: 11pt">&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@GeneratedValue</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">(generator =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"idGenerator"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">)</span></p>
<p style="margin: 0px 0px 14px">&nbsp;</p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: green; font-size: 10pt">&#9315; increment [ 自然递增 ]</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: green; font-size: 9pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 微软雅黑; font-size: 10pt">与 identity 策略不同的是</span><span style="font-family: 微软雅黑; font-size: 10pt">，该策略不依赖于底层数据库，而依赖于 hibernate 本身，用于为 long 或 short 或 int 类型生成唯一标识。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;主键计数器是由 hibernate 的一个实例来维护，每次自增量为 1，但在集群下不能使用该策略，<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;否则将引起主键冲突的情况，该策略适用于所有关系型数据库使用。</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: rgb(153,51,0); font-size: 10pt">注解示例 :</span></p>
<p style="margin: 0px 0px 14px" align="left"><span style="font-family: 微软雅黑; color: rgb(153,51,0); font-size: 9pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@Id</span></p>
<p style="margin: 0px 0px 14px" align="left"><span style="font-family: 'Courier New'; color: black; font-size: 11pt">&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@GenericGenerator</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">(name =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"idGenerator"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">, strategy =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"increment"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">)</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 'Courier New'; color: black; font-size: 11pt">&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@GeneratedValue</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">(generator =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"idGenerator"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">)</span></p>
<p style="margin: 0px 0px 14px">&nbsp;</p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: green; font-size: 10pt">&#9316; uuid [ 32位16进制数的字符串 ]</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; font-size: 7.5pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 微软雅黑; font-size: 10pt">采用128位UUID算法生成主键，能够保证网络环境下的主键唯一性，也就能够保证在不同数据库及不同服务器下主键的唯一性。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;uuid 最终被编码成一个32位16进制数的字符串，<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 占用的存储空间较大。用于为 String 类型生成唯一标识，适用于所有关系型数据库。</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: rgb(153,51,0); font-size: 10pt">注解示例 :</span></p>
<p style="margin: 0px 0px 14px" align="left"><span style="font-family: 微软雅黑; color: rgb(153,51,0); font-size: 9pt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@Id</span></p>
<p style="margin: 0px 0px 14px" align="left"><span style="font-family: 'Courier New'; color: black; font-size: 11pt"><span>&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@GenericGenerator</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">(name =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"idGenerator"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">, strategy =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"uuid"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">)</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 'Courier New'; color: black; font-size: 11pt"><span>&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span></span><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@GeneratedValue</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">(generator =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"idGenerator"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">)</span></p>
<p style="margin: 0px 0px 14px">&nbsp;</p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: green; font-size: 10pt">&#9316; assigned [ 手工分配主键ID值 ]</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: rgb(153,51,0); font-size: 9pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 微软雅黑; font-size: 10pt">该策略要求程序员必须自己维护和管理主键，当有数据需要存储时，程序员必须自己为该数据分配指定一个主键ID值，<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;如果该数据没有被分配主键ID值或分配的值存在重复，则该数据都将无法被持久化且会引起异常的抛出。</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 微软雅黑; color: rgb(153,51,0); font-size: 10pt">注解示例 :</span></p>
<p style="margin: 0px 0px 14px" align="left"><span style="font-family: 微软雅黑; color: rgb(153,51,0); font-size: 9pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@Id</span></p>
<p style="margin: 0px 0px 14px" align="left"><span style="font-family: 'Courier New'; color: black; font-size: 11pt">&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@GenericGenerator</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">(name =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"idGenerator"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">, strategy =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"assigned"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">)</span></p>
<p style="margin: 0px 0px 14px"><span style="font-family: 'Courier New'; color: black; font-size: 11pt">&nbsp;&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(100,100,100); font-size: 10pt">@GeneratedValue</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">(generator =<span class="Apple-converted-space">&nbsp;</span></span><span style="font-family: 'Courier New'; color: rgb(42,0,255); font-size: 10pt">"idGenerator"</span><span style="font-family: 'Courier New'; color: black; font-size: 10pt">)</span></p><br /></span><span style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 13px/19px Verdana, Geneva, Arial, Helvetica, sans-serif; white-space: normal; float: none; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px"></span><br style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 13px/19px Verdana, Geneva, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px" /><br style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 13px/19px Verdana, Geneva, Arial, Helvetica, sans-serif; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px" /><span style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; font: 10pt/19px Georgia; white-space: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px"><br /><span style="font-family: Georgia; color: rgb(0,128,0); font-size: 10pt">&nbsp;&nbsp;&nbsp;[ 随笔均原创，转载请注明出处：<a style="color: rgb(29,88,209); text-decoration: none" href="http://www.blogjava.net/fancydeepin" target="_blank">http://www.blogjava.net/fancydeepin</a>&nbsp;]</span></span><span style="text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 13px/19px Verdana, Geneva, Arial, Helvetica, sans-serif; white-space: normal; float: none; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px"><span class="Apple-converted-space">&nbsp;</span></span><img src ="http://www.blogjava.net/ZouYonghui/aggbug/410690.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ZouYonghui/" target="_blank">Terry Zou</a> 2014-03-06 16:13 <a href="http://www.blogjava.net/ZouYonghui/archive/2014/03/06/410690.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>