2016-11-13 2 views
-1

Пытается запустить простой пример. Но получить следующую ошибку. Может быть, глупая ошибка.MySQLSyntaxErrorException: Неизвестный столбец 'vehicle_vehicleId' в 'списке полей'

Ошибка:

MySQLSyntaxErrorException: Неизвестный столбец 'vehicle_vehicleId' в 'список полей'

Код:

User.java

public class User { 

    @Id @GeneratedValue 
    private Long userId; 

    @OneToOne 
    private Vehicle vehicle; 

    // Getter and setter of userId and vehicle 
} 

Vehicle.java:

@Entity 
public class Vehicle { 

    @Id @GeneratedValue 
    private int vehicleId; 

    private String vehicleName; 

    // getter and setter of vehicleId and vehicleName 
} 

MainClass.java

SessionFactory sessionFact = new Configuration().configure().buildSessionFactory(); 
User user1 = new User(); 

Session session = sessionFact.openSession(); 
Transaction tx = session.beginTransaction(); 
user1.setUserAddress("USA"); 
user1.setUserName("John"); 
Vehicle vehicle1 = new Vehicle(); 
vehicle1.setVehicleName("Ferrari"); 
user1.setVehicle(vehicle1); 
session.save(user1); 
session.save(vehicle1); 
tx.commit(); 
session.close(); 

Я не знаю, почему его не в состоянии создать отображение столбца 'vehicle_vehicleId'. Я прошел через ответы SO. Но это действительно не помогло.

Пожалуйста, помогите

+0

Это выглядит как ошибка MySQL для меня, а не ошибки спящего режима. –

+0

@SamOrozco. Да . Фактически это было разрешено после перезагрузки сервера MySQL. Но после запуска основного класса, когда-то успешно, снова я столкнулся с этой проблемой. – Rehman

+0

Попробуйте добавить @Column (name = "vehicle_vehicle") выше @OneToOne –

ответ

0

Я не мог видеть @JoinColumn или mappedBy недвижимость в @OneToOne, которая изображает отношения между двумя отношениями. Пройдите нижеприведенный пример, который даст вам четкое представление о @OneToOne.

One To One Relationship Example

+0

Если я не пишу '@ JoinColumn', hibernate должен создать новый столбец в своем собственном * tableName_columnName * format – Rehman

+0

Да, который будет создан, но в этом случае столбец находится в отношении владельца не в другом отношении. возможно, это вызывает проблему. –