2015-11-25 1 views
1

Я получаю ошибку в спящем режиме, которая довольно странная. Я сопоставляются все объекты в моей базе данных MySQL поблагодарить поколения зимуют кода, я создал все отношения и все, казалось, работало, но теперь я получаю эту ошибкуСессионный завод Hibernate и идентификатор распознавания

org.hibernate.AnnotationException: No identifier specified for entity: com.YouDroop.Data.Entities.Showcase 
at org.hibernate.cfg.InheritanceState.getElementsToProcess(InheritanceState.java:243) 
at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:775) 
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processAnnotatedClassesQueue(Configuration.java:3845) 
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processMetadata(Configuration.java:3799) 
at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1412) 
at org.hibernate.cfg.Configuration.buildMappings(Configuration.java:1373) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
at java.lang.reflect.Method.invoke(Unknown Source) 
at org.jboss.tools.hibernate.runtime.common.Util.invokeMethod(Util.java:43) 
at org.jboss.tools.hibernate.runtime.common.AbstractConfigurationFacade.buildMappings(AbstractConfigurationFacade.java:160) 
at org.hibernate.console.ConsoleConfiguration$4.execute(ConsoleConfiguration.java:272) 
at org.hibernate.console.execution.DefaultExecutionContext.execute(DefaultExecutionContext.java:63) 
at org.hibernate.console.ConsoleConfiguration.execute(ConsoleConfiguration.java:108) 
at org.hibernate.console.ConsoleConfiguration.buildMappings(ConsoleConfiguration.java:270) 
at org.hibernate.eclipse.console.workbench.ConsoleConfigurationWorkbenchAdapter.getChildren(ConsoleConfigurationWorkbenchAdapter.java:44) 
at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.getChildren(BasicWorkbenchAdapter.java:98) 
at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.fetchDeferredChildren(BasicWorkbenchAdapter.java:104) 
at org.eclipse.ui.progress.DeferredTreeContentManager$1.run(DeferredTreeContentManager.java:232) 
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) 

где объект Витрина это один

@Entity 
@Table(name = "showcase", schema = "youdroopnorelationships") 
public class Showcase implements Serializable { 

private static final long serialVersionUID = 1L; 

private int code; 
private Function function; 
private String description; 
private int capacity; 
private int currentNumberOfProducts; 

public Showcase() { 
} 

public Showcase(int code, Function function, int capacity, int currentNumberOfProducts) { 
    this.code = code; 
    this.function = function; 
    this.capacity = capacity; 
    this.currentNumberOfProducts = currentNumberOfProducts; 
} 

public Showcase(int code, Function function, String description, int capacity, int currentNumberOfProducts) { 
    this.code = code; 
    this.function = function; 
    this.description = description; 
    this.capacity = capacity; 
    this.currentNumberOfProducts = currentNumberOfProducts; 
} 

@Id 
//@GeneratedValue(strategy=GenerationType.AUTO) 
@Column(name = "Code", unique = true, nullable = false) 
public int getCode() { 
    return this.code; 
} 

public void setCode(int code) { 
    this.code = code; 
} 

@OneToOne(cascade = CascadeType.ALL) 
@JoinColumn(name = "Function_Name", nullable = false) 
public Function getFunction() { 
    return this.function; 
} 

public void setFunction(Function function) { 
    this.function = function; 
} 

@Column(name = "Description", length = 100) 
public String getDescription() { 
    return this.description; 
} 

public void setDescription(String description) { 
    this.description = description; 
} 

@Column(name = "Capacity", nullable = false) 
public int getCapacity() { 
    return this.capacity; 
} 

public void setCapacity(int capacity) { 
    this.capacity = capacity; 
} 

@Column(name = "CurrentNumberOfProducts", nullable = false) 
public int getCurrentNumberOfProducts() { 
    return this.currentNumberOfProducts; 
} 

public void setCurrentNumberOfProducts(int currentNumberOfProducts) { 
    this.currentNumberOfProducts = currentNumberOfProducts; 
} 

} 

Как вы можете видеть, что я написал все аннотации в нужном месте, даже @Id один, а также че файл .hbm отражает его. Когда я перестраиваю конфигурацию Hibernate, появляется ошибка, а если я только обновляю ее, она работает, но не позволяет мне видеть фабрику сеансов из-за этой ошибки.

ответ

1

убедитесь, что у вас есть право на импорт:

import javax.persistence.Id; 

и не

import org.springframework.data.annotation.Id; 

надеюсь, что это работает

+0

Я использую этот импорт:. импорт javax.persistence *; импорт java.io. *; – MissArmstrong

+0

Можете ли вы показать мне код вашей таблицы базы данных, чтобы, возможно, я мог помочь? –

+0

таблица базы данных ниже, она называется Showcase – MissArmstrong

Смежные вопросы