Java Hibernate配置:Jar文件?

Java Hibernate配置:Jar文件?,java,xml,hibernate,jar,Java,Xml,Hibernate,Jar,我在这里没什么问题,但我一直在这里找到我的问题的解决办法,我看不到。。。我是新加入hibernate的,我利用空闲时间学习这个 package negocio; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.boot.registry.StandardServiceRegistryBuilder; import org.hibernate.cfg.Configura

我在这里没什么问题,但我一直在这里找到我的问题的解决办法,我看不到。。。我是新加入hibernate的,我利用空闲时间学习这个

package negocio;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.Service;
import org.hibernate.service.ServiceRegistry;


import integracion.HibernateUtil;
import integracion.dao.BodegaDAOImpl;
import integracion.dao.VinoDAO;
import integracion.dao.VinoDAOImpl;
import integracion.entidades.Bodega;

public class Main {

    public static void main(String[] args) {

        SessionFactory sessionFactory;


        Configuration configuration  = new Configuration();
        configuration.configure();

        ServiceRegistry serviceRegistry
        = new StandardServiceRegistryBuilder()
            .applySettings(configuration.getProperties()).build();
        //The problem is here
        **sessionFactory = configuration.buildSessionFactory(serviceRegistry);**

        Session session = sessionFactory.openSession();
        BodegaDAOImpl bodegaDao = new BodegaDAOImpl<>();
        bodegaDao.get(1);


    }

}
package negocio;
导入org.hibernate.Session;
导入org.hibernate.SessionFactory;
导入org.hibernate.boot.registry.StandardServiceRegistryBuilder;
导入org.hibernate.cfg.Configuration;
导入org.hibernate.service.service;
导入org.hibernate.service.ServiceRegistry;
进口集成电路;
导入integracion.dao.BodegaDAOImpl;
进口集成电路;
导入integracion.dao.VinoDAOImpl;
进口积分;实体积分;酒庄积分;
公共班机{
公共静态void main(字符串[]args){
会话工厂会话工厂;
配置=新配置();
configure.configure();
服务注册中心服务注册中心
=新的StandardServiceRegistryBuilder()
.applySettings(configuration.getProperties()).build();
//问题就在这里
**sessionFactory=configuration.buildSessionFactory(serviceRegistry)**
Session Session=sessionFactory.openSession();
BodegaDAOImpl bodegaDao=新的BodegaDAOImpl();
得到(1);
}
}
这是添加的jar的列表

这是映射文件:

<?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/vinoteca</property>
    <property name="connection.username">root</property>
    <property name="connection.password">root</property>
    <property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
    <property name="hibernate.show_sql">true</property>


    <mapping class="integracion.entidades.Vino"/>
    <mapping class="integracion.entidades.Bodega"/>
    <mapping class="integracion.entidades.Denominacion"/>

  </session-factory>
</hibernate-configuration>




dic 15, 2016 12:37:51 AM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {5.0.9.Final}
dic 15, 2016 12:37:51 AM org.hibernate.cfg.Environment <clinit>
INFO: HHH000206: hibernate.properties not found
dic 15, 2016 12:37:51 AM org.hibernate.cfg.Environment buildBytecodeProvider
INFO: HHH000021: Bytecode provider name : javassist
dic 15, 2016 12:37:51 AM org.hibernate.annotations.common.reflection.java.JavaReflectionManager <clinit>
INFO: HCANN000001: Hibernate Commons Annotations {5.0.1.Final}
dic 15, 2016 12:37:51 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
WARN: HHH10001002: Using Hibernate built-in connection pool (not for production use!)
dic 15, 2016 12:37:51 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
INFO: HHH10001005: using driver [com.mysql.jdbc.Driver] at URL [jdbc:mysql://localhost:3306/vinoteca]
dic 15, 2016 12:37:51 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
INFO: HHH10001001: Connection properties: {user=root, password=****}
dic 15, 2016 12:37:51 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
INFO: HHH10001003: Autocommit mode: false
dic 15, 2016 12:37:51 AM org.hibernate.engine.jdbc.connections.internal.PooledConnections <init>
INFO: HHH000115: Hibernate connection pool size: 20 (min=1)
Thu Dec 15 00:37:51 CET 2016 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
dic 15, 2016 12:37:51 AM org.hibernate.dialect.Dialect <init>
INFO: HHH000400: Using dialect: org.hibernate.dialect.MySQL5Dialect
Exception in thread "main" java.lang.NoClassDefFoundError: javax/persistence/NamedStoredProcedureQuery
    at org.hibernate.cfg.AnnotationBinder.bindDefaults(AnnotationBinder.java:259)
    at org.hibernate.boot.model.source.internal.annotations.AnnotationMetadataSourceProcessorImpl.prepare(AnnotationMetadataSourceProcessorImpl.java:184)
    at org.hibernate.boot.model.process.spi.MetadataBuildingProcess$1.prepare(MetadataBuildingProcess.java:156)
    at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:253)
    at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.build(MetadataBuildingProcess.java:83)
    at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:418)
    at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:87)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:692)
    at negocio.Main.main(Main.java:31)
Caused by: java.lang.ClassNotFoundException: javax.persistence.NamedStoredProcedureQuery
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 9 more

com.mysql.jdbc.Driver
jdbc:mysql://localhost:3306/vinoteca
根
根
org.hibernate.dialogue.mysql5dialogue
真的
dic 15201612:37:51 AM org.hibernate.Version日志版本
信息:hh000412:Hibernate核心{5.0.9.Final}
dic 15201612:37:51 AM org.hibernate.cfg.Environment
信息:HH000206:找不到hibernate.properties
dic 15201612:37:51 AM org.hibernate.cfg.Environment buildBytecodeProvider
信息:HH000021:字节码提供程序名称:javassist
dic 15201612:37:51 AM org.hibernate.annotations.common.reflection.java.JavaReflectionManager
信息:HCANN000001:Hibernate Commons注释{5.0.1.Final}
dic 15201612:37:51 AM org.hibernate.engine.jdbc.connections.internal.driverManager连接提供MPL配置
警告:HHH10001002:使用Hibernate内置连接池(不用于生产!)
dic 15201612:37:51 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
信息:HHH10001005:在URL[jdbc:mysql://localhost:3306/vinoteca]
dic 15201612:37:51 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
信息:HHH10001001:连接属性:{user=root,password=***}
dic 15201612:37:51 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
信息:HHH10001003:自动提交模式:错误
dic 15201612:37:51 AM org.hibernate.engine.jdbc.connections.internal.PooledConnections
信息:HH000115:休眠连接池大小:20(最小值=1)
Thu Dec 15 00:37:51 CET 2016警告:不建议在没有服务器身份验证的情况下建立SSL连接。根据MySQL 5.5.45+、5.6.26+和5.7.6+的要求,如果未设置explicit选项,默认情况下必须建立SSL连接。为了符合不使用SSL的现有应用程序,verifyServerCertificate属性设置为“false”。您需要通过设置useSSL=false显式禁用SSL,或者设置useSSL=true并为服务器证书验证提供信任库。
dic 15201612:37:51 AM org.hibernate.dialogue.dialogue
信息:HH000400:使用方言:org.hibernate.dialogue.mysql5dialogue
线程“main”java.lang.NoClassDefFoundError中出现异常:javax/persistence/NamedStoredProcedureQuery
在org.hibernate.cfg.AnnotationBinder.bindDefaults(AnnotationBinder.java:259)上
位于org.hibernate.boot.model.source.internal.AnnotationMetadataSourceProcessorImpl.prepare(AnnotationMetadataSourceProcessorImpl.java:184)
位于org.hibernate.boot.model.process.spi.MetadataBuildingProcess$1.prepare(MetadataBuildingProcess.java:156)
位于org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:253)
位于org.hibernate.boot.model.process.spi.MetadataBuildingProcess.build(MetadataBuildingProcess.java:83)
位于org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:418)
位于org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:87)
位于org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:692)
位于negocio.Main.Main(Main.java:31)
原因:java.lang.ClassNotFoundException:javax.persistence.NamedStoredProcedureQuery
位于java.net.URLClassLoader.findClass(URLClassLoader.java:381)
位于java.lang.ClassLoader.loadClass(ClassLoader.java:424)
位于sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
位于java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 9更多
所以。。这就是问题所在。当eclipse说
java.lang.ClassNotFoundException:javax.persistence.NamedStoredProcedureQuery

是因为没有添加jar(javax.persistence.jar或hibernate-jpa-2.1-api-1.0.0…jar),但是我添加了它们,我没有解决这个问题

谁能告诉我为什么工作不好?谢谢
PD:对不起,我不是英语母语=)

使用maven或gradle之类的构建系统来构建项目,并添加对hibernate的依赖。这几乎肯定会解决所有与依赖项相关的基本类路径问题。

使用maven或gradle之类的构建系统来构建项目,并在hibernate上添加依赖项。这几乎肯定会解决所有与依赖项相关的基本类路径问题。

将所需的jar文件添加到类路径。

将所需的jar文件添加到类路径。

显然不是JPA API,所以请不要标记为显然不是JPA API,所以请不要贴标签,因为这是必要的工作与maven在这一刻?我从来没有