綆鍗曠湅浜嗕竴涓婬ibernate鐨勭浉鍏蟲簮鐮侊紝鍘熸潵鐢盚ibernate榪斿洖鐨刡lob瀵硅薄瀹為檯涓婃槸浠g悊綾籗erializableBlobProxy鐨勫疄渚嬶紝鎻愪緵浜唈ava.sql.Blob鎺ュ彛瀹氫箟鐨勬柟娉曪紙瀹為檯涓婃槸閫氳繃鍙嶅皠鐨勬柟寮忥級(jí)錛岃〃鐜板緱鍍忔槸涓疄鐜癹ava.sql.Blob鎺ュ彛鐨勫璞★紙璨屼技錛夛紝浣嗗疄闄呬笂鏄釜Proxy綾誨瀷鐨勫疄渚嬶紝鍥犳涓嶈兘鎶婅繖涓疄渚嬭漿鍖栨垚oracle.sql.BLOB綾誨瀷銆?/p>
銆銆褰撶敤System.out.println(blob)杈撳嚭淇℃伅鐨勬椂鍊欙紝鏄劇ず鐨勬槸oracle.sql.BLOB@10fba68錛屽緢鍏瘋糠鎯戞с備絾浣跨敤System.out.println(blob.getClass().getName())杈撳嚭淇℃伅鐨勬椂鍊欙紝鏄劇ず鐨勬槸$Proxy6錛岃繖鏄劇ず浜嗙湡瀹炵殑鎯呭喌錛屼篃灝辨槸璇存樉紺轟簡榪欎釜瀹炰緥鐨勭湡瀹為潰鐩?/p>
銆銆涓鍙ヨ瘽錛岃繖涓疄渚嬫槸涓┛鐫java.sql.Blob椹敳鐨凱roxy綾誨瀷鐨勫疄渚嬨?/p>
鏈鍚庡涓嬩慨鏀癸細(xì)
涓銆佷竴瀵瑰敮涓澶栭敭鍏寵仈鏄犲皠——鍗曞悜
1. 涓瀵瑰敮涓澶栭敭鍏寵仈鏄犲皠鏄瀵逛竴鍏寵仈鏄犲皠鐨勭壒渚?鍙互閲囩敤<many-to-one>鏍囩錛屾寚瀹氬鐨勪竴绔殑unique=true錛岃繖鏍峰氨闄?nbsp; 鍒朵簡澶氱殑涓绔殑澶氶噸鎬т負(fù)涓錛岄氳繃榪欑鎵嬫鏄犲皠涓瀵逛竴鍞竴澶栭敭鍏寵仈
2.棰嗗煙妯″瀷鍥撅細(xì)
3.閰嶇疆
Person.hbm.xml:
<class name="com.bjsxt.hibernate.Person" table="t_person">
<id name="id">
<generator class="native"/>
</id>
<property name="name"/>
<many-to-one name="idCard" unique="true"/>
</class>
IDCard.hbm.xml:
<class name="com.bjsxt.hibernate.IdCard" table="t_idcard">
<id name="id">
<generator class="native"/>
</id>
<property name="cardNo"/>
</class>
浜屻?/span> 涓瀵瑰敮涓澶栭敭鍏寵仈鏄犲皠——鍙屽悜
1. 涓瀵逛竴鍞竴澶栭敭鍏寵仈鍙屽悜錛岄渶瑕佸湪鍙︿竴绔紙idcard錛夛紝娣誨姞<one-to-one>鏍囩錛屾寚紺?/span>hibernate濡備綍鍔犺澆鍏跺叧鑱斿璞★紝榛樿鏍規(guī)嵁涓婚敭鍔犺澆person錛屽閿叧鑱旀槧灝勪腑錛屽洜涓轟袱涓疄浣撻噰鐢ㄧ殑鏄?/span>person鐨勫閿淮鎶ょ殑鍏崇郴錛屾墍浠ヤ笉鑳芥寚瀹氫富閿姞杞?/span>person錛岃岃鏍規(guī)嵁person鐨勫閿姞杞斤紝鎵浠ラ噰鐢ㄥ涓嬫槧灝勬柟寮忥細(xì)
<one-to-one name="person" property-ref="idCard"/>
2.棰嗗煙妯″瀷鍥撅細(xì)
3.鍏蜂綋閰嶇疆錛?/font>
Person.hbm.xml: <class name="com.bjsxt.hibernate.Person" table="t_person"> <id name="id"> <generator class="native"/> </id> <property name="name"/> <many-to-one name="idCard" unique="true"/> </class> IDCard.hbm.xml <class name="com.bjsxt.hibernate.IdCard" table="t_idcard"> <id name="id"> <generator class="native"/> </id> <property name="cardNo"/> <one-to-one name="person" property-ref="idCard"/> </class>