2016-03-28 21 views
0

休止状態を習得しました。チュートリアルですべてをやっていますが、単純な選択をしようとすると何も起こりません。問題の内容を理解できません。Hibernateはクエリを使って作業しています

ログ:

мар 28, 2016 12:54:44 PM org.hibernate.Version logVersion 
INFO: HHH000412: Hibernate Core {5.1.0.Final} 
мар 28, 2016 12:54:44 PM org.hibernate.cfg.Environment <clinit> 
INFO: HHH000206: hibernate.properties not found 
мар 28, 2016 12:54:44 PM org.hibernate.cfg.Environment buildBytecodeProvider 
INFO: HHH000021: Bytecode provider name : javassist 
мар 28, 2016 12:54:45 PM org.hibernate.annotations.common.reflection.java.JavaReflectionManager <clinit> 
INFO: HCANN000001: Hibernate Commons Annotations {5.0.1.Final} 
мар 28, 2016 12:54:45 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure 
WARN: HHH10001002: Using Hibernate built-in connection pool (not for production use!) 
мар 28, 2016 12:54:45 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator 
INFO: HHH10001005: using driver [com.mysql.jdbc.Driver] at URL [jdbc:mysql://localhost:3306/taskboard] 
мар 28, 2016 12:54:45 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator 
INFO: HHH10001001: Connection properties: {user=root, password=****} 
мар 28, 2016 12:54:45 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator 
INFO: HHH10001003: Autocommit mode: false 
мар 28, 2016 12:54:45 PM org.hibernate.engine.jdbc.connections.internal.PooledConnections <init> 
INFO: HHH000115: Hibernate connection pool size: 20 (min=1) 
мар 28, 2016 12:54:45 PM org.hibernate.dialect.Dialect <init> 
INFO: HHH000400: Using dialect: org.hibernate.dialect.MySQLDialect 
мар 28, 2016 12:54:45 PM org.hibernate.validator.internal.util.Version <clinit> 
INFO: HV000001: Hibernate Validator 5.2.4.Final 
мар 28, 2016 12:54:45 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl stop 
INFO: HHH10001008: Cleaning up connection pool [jdbc:mysql://localhost:3306/taskboard] 

User.java

@Entity 
@Table(name="Users") 
public class User { 

@Id 
@Column(name="id_user") 
private Long id; 

@Column(name="first_name") 
private String firstName; 

@Column(name="last_name") 
private String lastName; 

@Column(name="login") 
private String login; 

@Column(name="password") 
private String password; 
}//get&set 

Main.java

SessionFactory sessionFactory = HibernateUtil.getSessionFactory(); 
    Session session = sessionFactory.openSession(); 

    List<User> users = null; 

    try { 
    session.beginTransaction(); 

    Criteria criteria = session.createCriteria(User.class); 
    users = criteria.list(); 

    session.getTransaction().commit(); 

    } catch (Exception e) { 
     session.getTransaction().rollback(); 
     e.printStackTrace(); 
    } finally { 
     session.close(); 
     sessionFactory.close(); 
    } 

    for (User user: users) { 
     System.out.println(user.toString()); 
    } 

hibernate.cfg.xmlの

<?xml version="1.0" encoding="utf-8"?> 
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> 
<hibernate-configuration> 
<session-factory> 
    <property name="connection.driver_class">com.mysql.jdbc.Driver</property> 
    <property name="connection.url">jdbc:mysql://localhost:3306/taskboard</property> 
    <property name="connection.username">root</property> 
    <property name="connection.password">1234</property> 
    <property name="dialect">org.hibernate.dialect.MySQLDialect</property> 
    <property name="show_sql">true</property> 
    <property name="hbm2ddl.auto">update</property> 

    <mapping class="User" /> 
</session-factory> 
</hibernate-configuration> 

HibernateUtil.java

public class HibernateUtil { 
private static SessionFactory sessionFactory = null; 

static { 
    Configuration cfg = new Configuration().configure(); 
    StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder() 
      .applySettings(cfg.getProperties()); 

    sessionFactory = cfg.buildSessionFactory(builder.build()); 
} 

public static SessionFactory getSessionFactory(){ 
    return sessionFactory; 
    } 
} 
+0

forループの前に、users.size()をSystem.out.println()に入れて何が得られるかを確認しますか? –

+0

「何も起こらない」とは何を意味しているのか説明してください。 – Bikku

+0

何も起こらないということは何を意味しますか? ログに選択クエリが表示されません。 –

答えて

0

私が覚えている限り、新しいバージョンのhibernateは、もはやhibernate構成ファイル内で<mapping class= .../>をサポートしていません。

あなたはそれを削除し、代わりにあなたのHibernateUtil静的ブロックに

cfg.addAnnotatedClass(User.class)で試すことができます。別のノートで

、あなたはsessionFactoryConfigurationような方法は廃止されている建物の最新の手法を用いて検討する必要があります。詳細については、Native Bootstrappingセクションを参照してください。

0

は、いくつかのデータを挿入しtable.Firstユーザーのためのデータベースでは何もないかもしれません。次にチェックしてください。

+0

テーブルにデータがあります。 – Jaive

+0

これは答えではありません、あなたはコメントとしてこれを置くことができました! –

関連する問題