hazırda özel durum: org.Hazırda Beklet.AnnotationException: adı varlık için belirtilen: com..etki alanı.fikir.MAE_MFEView
bu özel durum alıyorum neden emin değilim. Benim bakış modelim yanlış olmalı sanırım.
package com.domain.idea;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import org.hibernate.annotations.AccessType;
/**
* object model for the view [InvestmentReturn].[vMAE_MFE]
*/
@Entity
@Table(name="vMAE_MFE", schema="InvestmentReturn")
@AccessType("field")
public class MAE_MFEView
{
/**
* trade property is a SuggestdTradeRecommendation object
*/
@OneToOne(fetch = FetchType.LAZY , cascade = { CascadeType.PERSIST })
@JoinColumn(name = "suggestedTradeRecommendationID")
private SuggestedTradeRecommendation trade;
/**
* Most Adeverse Excursion value
*/
private int MAE;
//tb
/**
* @return MAE property
*/
public int getMAE()
{
return MAE;
}
/**
* Most Favorable Excursion value
*/
private int MFE;
/**
* @return MFE property
*/
public int getMFE()
{
return MFE;
}
/** *
* @return trade property
* see #trade
*/
public SuggestedTradeRecommendation getTrade()
{
return trade;
}
}
herhangi bir yardım mutluluk duyacağız
Benim kod bu gibi görünüyor için değiştirdim: . güncelleme:
package com.domain.idea;
import javax.persistence.CascadeType;
import javax.persistence.FetchType;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import org.hibernate.annotations.AccessType;
/**
* object model for the view [InvestmentReturn].[vMAE_MFE]
*/
@Entity
@Table(name="vMAE_MFE", schema="InvestmentReturn")
@AccessType("field")
public class MAE_MFEView
{
/**
* trade property is a SuggestdTradeRecommendation object
*/
@Id
@OneToOne(fetch = FetchType.LAZY , cascade = { CascadeType.PERSIST })
@JoinColumn(name = "suggestedTradeRecommendationID")
private SuggestedTradeRecommendation trade;
/**
* Most Adeverse Excursion value
*/
private int MAE;
//tb
/**
* @return MAE property
*/
public int getMAE()
{
return MAE;
}
/**
* Most Favorable Excursion value
*/
private int MFE;
/**
* @return MFE property
*/
public int getMFE()
{
return MFE;
}
/** *
* @return trade property
* see #trade
*/
public SuggestedTradeRecommendation getTrade()
{
return trade;
}
}
ama şimdi bu özel durum alıyorum:
Sebep: org.Hazırda Beklet.MappingException: türü: belirlenemedi com.etki alanı.fikir.SuggestedTradeRecommendation, tablo: sütun için vMAE_MFE,: [org.Hazırda Beklet.eşleme.Sütun(ticaret)] org.Hazırda Beklet.eşleme.SimpleValue.getType(SimpleValue.:292 java) org.Hazırda Beklet.eşleme.SimpleValue.isValid(SimpleValue.:276 java) org.Hazırda Beklet.eşleme.RootClass.doğrulamak(RootClass.:216 java) org.Hazırda Beklet.cfg.Yapılandırma.doğrulamak(Yapılandırma.:1135 java) org.Hazırda Beklet.cfg.Yapılandırma.buildSessionFactory(Yapılandırma.:1320 java) org.Hazırda Beklet.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.:867 java) org.Hazırda Beklet.yerel.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.:669 java) ... 145 daha fazla
CEVAP
Alanı @Id
ile açıklama eksik. @Entity
@Id
- bu veritabanında birincil anahtar bir ihtiyaç.
Eğer senin varlığın ayrı bir tabloda kalıcı, daha ziyade diğer kurumların bir parçası olmak istiyorsanız Eğer, @Entity
yerine @Embeddable
kullanabilirsiniz.
Eğer sadece bir veri aktarım nesnesi hazırda işletmenin bazı verileri tutmak istiyorsanız, hiç ek açıklamalar olursa olsun kullanımı - basit bir pojo bırakın.
Güncelleme: görünümler SQL konusunda, Hazırda dokümanlar yazmak:
Bir görünüm ve Hazırda bir eşleme için temel bir tablo arasında fark yoktur. Bu veritabanı düzeyinde saydamdır
Hazırda Beklet - Çağlayan ile Bir kole...
Nasıl bir özel durum olduğunu doğrulam...
'JPA arasındaki fark ne ve Hazırd...
Özel bir yöntem kamu test birimi için....
Hazırda Beklet: Kriterleri vs HQL...