1

Hibernate 5、MySQL サーバー

AccountMap account = new AccountMap();

Configuration configuration = new Configuration();

        configuration.addClass(AccountMap.class);
        configuration.setProperty("hibernate.connection.driver_class", "com.mysql.jdbc.Driver");
        configuration.setProperty("hibernate.connection.url", "jdbc:mysql://localhost:3306/test");
        configuration.setProperty("hibernate.connection.username", "root");
        configuration.setProperty("hibernate.connection.password", "");
        configuration.setProperty("hibernate.show_sql", "com.mysql.jdbc.Driver");
        configuration.setProperty("hibernate.dialect", "org.hibernate.dialect.MySQLDialect");

        StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder().
        applySettings(configuration.getProperties());
        SessionFactory factory = configuration.buildSessionFactory(builder.build());
        Session session = factory.openSession();

        session.save(account);

        session.getTransaction().commit();
        session.close();
        factory.close();

アカウントマップ:

package Mapping;

import java.sql.Date;

import javax.persistence.*;

@Entity
@Table(name="accounts")
public class AccountMap {

    @Id
    @Column(name="id")
    private int id;

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

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

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

    @Column(name="created_at")
    @org.hibernate.annotations.Type( type="DateType" )
    private Date createdAt;

    @Column(name="updated_at")
    @org.hibernate.annotations.Type( type="DateType" )
    private Date updatedAt;

    @Column(name="currency")
    private int currency;

    @Column(name="alternative_currency")
    private int alternativeCurrency;

    @Column(name="level")
    private int level;

    @Column(name="exp")
    private int exp;

    @Column(name="activation_key")
    private String activationKey;

    @Column(name="recovery_key")
    private String recoveryKey;

    @Column(name="recovery_time")
    private Date recoveryTime;
}

エラー:

org.hibernate.boot.MappingNotFoundException: マッピング (リソース) が見つかりません: Mapping/AccountMap.hbm.xml: origin(Mapping/AccountMap.hbm.xml)

xml ファイルの代わりに注釈を使用します。

4

1 に答える 1

1

addAnnotatedClassの代わりに使用addClass:-

configuration.addAnnotatedClass(AccountMap.class);

予想Configuration.addClass()通り hbm.xml

于 2015-10-08T06:15:05.243 に答える