Проблема в спящем режиме - PullRequest
1 голос
/ 17 декабря 2010

Я написал программу для вставки строки в базу данных контактов, в которой есть таблица с именем contact. Когда я запускаю программу, она работает без ошибок и выдает следующий вывод -

Hibernate: вставить в CONTACT (FIRSTNAME, LASTNAME, EMAIL, ID) значения (?,?,?,?)

Однако, когда я на самом деле делаю select * from contact; в mysql я не могу видеть записи, которые я ввел через Hibernate. Это немного удивительно, потому что нет никаких исключений при запуске моей программы. Любые идеи о том, что мне не хватает. Я очень ценю вашу помощь в решении этой проблемы.

Ниже приведен код:

public static void main(String[] args) {
Session session = null;

try{
// This step will read hibernate.cfg.xml and prepare hibernate for use
SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
session =sessionFactory.openSession();
Contact contact = new Contact();
contact.setId(1);
contact.setFirstName("asdad");
contact.setLastName("Kumar");
contact.setEmail("deepak");
session.save(contact);
}catch(Exception e){
System.out.println(e.getMessage());
e.printStackTrace();
}finally{
session.flush();
session.close();

}

}

Ответы [ 3 ]

2 голосов
/ 17 декабря 2010

Кажется, вы забыли создать транзакцию:

SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
using (ISession session = sessionFactory.OpenSession())
{
 using (ITransaction transaction = session.BeginTransaction())
 {
  Contact contact = new Contact();
  contact.setId(1);
  contact.setFirstName("asdad");
  contact.setLastName("Kumar");
  contact.setEmail("deepak");
  session.save(contact);
  transaction.Commit();
 }
}

Возможно, вы захотите взглянуть на учебник nhibernate .

0 голосов
/ 17 декабря 2010
 Session session =  new Configuration().configure().buildSessionFactory(); 
Transaction transaction = session.beginTransaction();   
transaction.begin();
Contact contact = new Contact(); 
contact.setId(1); 
contact.setFirstName("asdad"); 
contact.setLastName("Kumar"); 
contact.setEmail("deepak");
session.save(contact);
transaction.commit();
session.close();
0 голосов
/ 17 декабря 2010

Каково ваше отображение для класса контактов?Как выглядит конфигурация Hibernate?Возможно, у вас нет связи с базой данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...