Yay verilerinin depolarını kullanıyorum - çok kullanışlı bir şey ama bir sorunla karşılaştım. Kolayca bütün varlık güncelleyebilir ama yalnızca tek bir alanı güncelleştirmek için gerektiğinde anlamsız olduğuna inanıyoruz:Yay verilerini kullanarak tek bir alanı güncelleştirin jpa
@Entity
@Table(schema = "processors", name = "ear_attachment")
public class EARAttachment {
private Long id;
private String originalName;
private String uniqueName;//yyyy-mm-dd-GUID-originalName
private long size;
private EARAttachmentStatus status;
Sadece yöntem kurtarmak çağrı güncellemek için.
batching 1 statements: 1: update processors.ear_attachment set message_id=100,
original_name='40022530424.dat',
size=506,
status=2,
unique_name='2014-12-16-8cf74a74-e7f3-40d8-a1fb-393c2a806847-40022530424.dat'
where id=1
böyle bazı şey görmek istiyorum: günlüğünde ben followwing bkz
batching 1 statements: 1: update processors.ear_attachment set status=2 where id=1
Spring'in depoları
adı kurallarını kullanarak bir şey seçmek için tesislerin çok şey var, belki benzer bir şey olduğunu updateForStatus (int durumu) gibi güncelleme için;
Teşekkürler, şimdi çalışıyorum, ama entityManager.creatQuery (..) kullanarak daha iyi olup olmadığını merak ediyorum? Güvenli bir şey arıyorum –
@DmitriiBorovoi Bu da doğru hatırlıyorum eğer, em.createQuery' olarak da adlandırılır, böylece samething. Güvenli bir şey istiyorsanız, sorguyu oluşturmak için hangi özniteliklerin değiştirildiğini bilmenin bir yoluna ihtiyacınız olacaktır. Bundan sonra, sorguyu yürütmek için özel deposu kullanabilirsiniz (http://docs.spring.io/spring-data/data-jpa/docs/current/reference/html/#repositories.custom-implementations). –