2017-04-06 5 views
0

Ich sah, es gibt viele Fragen, die früher auf die gleiche Sache im Stapelüberlauf auf verschiedene Arten gefragt. Ich habe eines dieser Probleme im Hibernate-Forum angeschaut und sie haben erwähnt, dass es funktionieren wird. Wir können beziehen sich diese linkHibernate 5.2.9: @Basic (fetch = FetchType.LAZY) funktioniert nicht

Basierend auf diesen Link, verzögertes Laden für Grundeigenschaften [] Typ wie Byte arbeiten sollte

ich Hibernate Version bin mit 5.2.9 + postgresql DB

Mein Entitätsmodell sieht aus wie dieser

@Entity 
@Table 
public class ResourceFileEntity { 
@Id 
@GeneratedValue 
long id; 

@Column 
private String storageType; 

@Column 
private String path; 

@Lob 
@Basic(fetch = FetchType.LAZY) 
@Column 
byte[] fileContent; 
// removed getters/setter for readibility 
} 

-Code an das Unternehmen zu holen ist

public ResourceFileEntity fetchEntity(long jId) throws IOException { 
Session session = factory.openSession(); 
ResourceFileEntity entity = null; 
Transaction tx = null; 
    try { 
     tx = session.beginTransaction(); 
     entity = session.find(ResourceFileEntity.class, jId); 
     System.out.println(Hibernate.isPropertyInitialized(entity,  "fileContent")); 
     tx.commit(); 
    } catch (HibernateException e) { 
     if (tx != null) 
      tx.rollback(); 
     e.printStackTrace(); 
    } finally { 
     session.close(); 
    } 
    return entity; 
} 

Eine Menge Leute haben über Bytecode-Erweiterung erwähnt, ich habe versucht, alle erforderlichen Details in meinem Projekt build.gradle und @LazyGroup setzen, aber immer noch kein Glück.

Irgendwelche Eingaben dazu sind eine große Hilfe!

Antwort

1

Es ist möglich, dass Sie unter HHH-10929 laufen. Dies muss jedoch noch über einen eigenständigen Testfall mit dem Hibernate template nachgewiesen werden. Es könnte sich lohnen, einen zu erstellen, wenn Sie denken, dass es ein Problem gibt?

+1

+1. Es könnte ein Fehler sein. Wenn Ihnen die JPA-API besser gefällt, können Sie auch die [JPA-Testfallvorlage] (http://in.relation.to/2016/01/14/hibernate-jpa-test-case-template/) verwenden. –

+0

Sicher. Wird den Testfall hinzufügen. Danke Vlad und Alex für die Antworten – Mohnish

+0

Ich habe den Testfall in HHH-10929 hinzugefügt – Mohnish

Verwandte Themen