Kısa bir süre önce hazırda bekletme modunun en son sürümüne sahip oldum ve UserTypes'imin, bir SessionImplementor bağımsız değişkenini kullanan karşılık gelen yöntemlerden yararlanarak, AbstractStandardBasicType'ın nullSafeGet (ResultSet, String) ve nullSafeSet (PreparedStatement, T, int) yöntemleri hakkında deprecated ile ilgili uyarıları olduğunu fark ettim. Sorun, bir UserType uyguladıktan sonra, SessionImplementor, BasicType, CompositeUserType, vb. Yolunda geçirilen bir şekilde geçirilmemesidir.Kullanımdan kaldırıldıktan sonra Hazırda bir Kullanıcı Türü'nü uygulamaya koymanın en iyi yolu?
Güncelleştirilmiş bir örnek olup olmadığını görmek için Hazırda Bekletme kılavuzunu kontrol ettim. UserType örneği nullSafeGet/nullSafeSet yerine get/set kullanır, ancak bu yöntemler bir SessionImplementor kullanan sürümlerin lehine de kaldırılmıştır. Kullanıcıtürü içinden SessionImplementor almak için iyi bir yoldur
- var mı: Yani, iki şey merak beni neden olan kaldırılmış yöntemler kullanılarak bile kış uykusuna resmi UserType örneği gibi görünüyor?
- SessionImplementor'ı UserType içinden almak pratik değilse ve kendi nullSafeGet/nullSafeSet'imi yazmak istemiyorsam, UserType'ı alternatiflerinden birinin lehine bırakmalı mıyım? UserType ve örneğin BasicType arasındaki pratik farklar nelerdir?
Bu konu hakkında hibernate-dev postalama listesinde bir görüşme var: [burada] (http://lists.jboss.org/pipermail/hibernate-dev/2011-Şubat/006030.html) –
Orada bir bu konudaki çözüm 4.1.0.Finalde mi? Öyle görünmüyor ... – MetaChrome
Keşke size anlatabilseydim. JPA'ya geçiş yaptım ve maalesef UserTypes gibi herhangi bir şeyi desteklemeyen standart JPA ek açıklamalarına sadık kaldım. – spaaarky21