[Это может быть полезно, чтобы увидеть мой связанный, но отличный, вопрос от ранее сегодня здесь Hibernate Schema Export in Eclipse.]Странная NumberFormatException в Hibernate При использовании SessionFactory
я следующий класс Java
package com.examscam.model;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.tool.hbm2ddl.SchemaExport;
@Entity
public class User {
private Long id;
private String password;
@Id
@GeneratedValue
public Long getId() {
return id;
}
public String getPassword() {
return password;
}
public void setId(Long id) {
this.id = id;
}
public void setPassword(String password) {
this.password = password;
}
public static void main(String[] args) {
AnnotationConfiguration config = new AnnotationConfiguration();
config.addAnnotatedClass(User.class);
config.configure();
// new SchemaExport(config).create(true, true);
SessionFactory factory = config.buildSessionFactory();
Session session = factory.getCurrentSession();
session.beginTransaction();
User u = new User();
u.setPassword("abc123");
session.saveOrUpdate(u);
session.getTransaction().commit();
System.out.println("Done.");
}
}
У меня есть базы данных и (MySQL) создали таблицу Пользователь с кодом
create table User (id integer not null auto_increment, password varchar(255), primary key (id))
Однако, когда я пытаюсь работает этот код, я дал следующий стек Trac е
Exception in thread "main" java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:470)
at java.lang.Integer.valueOf(Integer.java:554)
at org.hibernate.util.PropertiesHelper.getInteger(PropertiesHelper.java:37)
at org.hibernate.connection.DriverManagerConnectionProvider.configure(DriverManagerConnectionProvider.java:47)
at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:124)
at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:56)
at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:414)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:62)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2009)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1292)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:859)
at com.examscam.model.User.main(User.java:40)
Line 40 класса User является
SessionFactory factory = config.buildSessionFactory();
Кто-нибудь есть какие-либо идеи, почему это происходит? Я не вхожу в пустую строку в этой строке, и я скопировал код именно из книги. Я не сомневаюсь, что книга верна; мои вопросы больше похожи на «Может ли кто-нибудь подумать о какой-либо причине (ошибки в xml-файлах, проблемах с упорядочением классов, файлы, не находящиеся в правильных каталогах и т. д.), почему это поведение произойдет?».
Ответ на этот вопрос также может помочь решить проблему в ссылке в самой верхней части этой страницы с экспортом схемы.
Thanks, Conor.
Я предоставил свою полную запись для hibernate.cfg.xml на странице, с которой я связался в tope сообщения, но он просто содержит hibernate.connection.url, hibernate.connection.username, hibernate.connection.password, hibernate. connection.driver_class, hibernate.dialect, hibernate.transaction.factory_class, hibernate.current_session_context_class и hibernate.show_sql. Опять же, я скопировал этот код точно так же, как и из книги. Сказав это, он немного устарел. Можете ли вы придумать что-нибудь еще, что мне нужно? Сегодня утром я загрузил все спящие баночки, так что это должна быть самая последняя версия. – ConorW
Здесь важна точная версия спящего режима, так как она подсказывает мне, на каком исходном коде стоит посмотреть. Можете ли вы дать мне точную версию? – cmbaxter
Ядро спящего режима, которое я использую, - это hibernate-core-4.2.0.Final.jar. Это то, что вам нужно [я что-то новичок]? – ConorW