2016-08-11 5 views
2

In meinem Code versuche ich meine Entität zu aktualisieren, aber Daten werden nicht in db gespeichert. überprüfte Protokolle gibt es keine Ausnahme. Auch versucht @Transaction Annotation, aber es funktioniert nicht.Spring JPA Crud Repository save() nicht Entität aktualisieren

Verfahren zum Aufruf speichern

public void uploadBill(Long quoteId, MultipartFile multiPartFile) { 
    try { 
     ServiceQuote serviceQuote = serviceQuoteRepository.findOne(quoteId); 

     String extension = ""; 
     if (multiPartFile.getOriginalFilename().lastIndexOf(".") != -1) { 
      extension = multiPartFile.getOriginalFilename().substring(
        multiPartFile.getOriginalFilename().lastIndexOf("."), 
        multiPartFile.getOriginalFilename().length()); 
     } 
     String filename = SERVICING_BILL_FILE_PREFIX 
       + serviceQuote.getReferenceNo() + extension; 
     filename = AmazonS3Util.uploadBill(multiPartFile, filename); 

     serviceQuote.setBillPath(filename); 
     serviceQuoteRepository.save(serviceQuote); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 

Hier serviceQuoteRepository ist JPA crud repositorty

@Repository 
public interface ServiceQuoteRepository extends CrudRepository<ServiceQuote, Long> {} 

Bitte legen nahe, was mögliche Lösung sein könnte.

+1

Können Sie diese Zeilen zu Ihren application.properties hinzufügen und die Ausgabe nach dem Speichern in Ihre Frage einfügen? "Spring.jpa.properties.hibernate.show_sql = true spring.jpa.properties.hibernate.use_sql_comments = true spring.jpa.properties.hibernate.format_sql = true spring.jpa.properties.hibernate.type = trace" – Journeycorner

+0

Sind Sie sicher, dass die Entität nicht gespeichert wurde (überprüfen Sie sie mit einem Datenbank-Tool, stellen Sie sicher, dass die Ansicht aktualisiert wurde)? – Journeycorner

+0

@Journeycorner Ich habe alle Requisiten in application.properties. Ich habe oft überprüft, dass die Entity nicht mit den aktualisierten Werten gespeichert wurde. –

Antwort

0

Es gab kein Problem im Zusammenhang mit Crud Repository. Eigentlich nach der Upload-Methode hat ein anderer Service die Entity mit dem Null-Bill-Pfad zur gleichen Zeit aktualisiert, so dass ich immer die Null-Spalte sah. Nach dem Debuggen des Problems für einige Stunden herausgefunden.

+0

Ich hasse es, wenn das passiert. – eflat

Verwandte Themen