我研究过类似的解决方案,但都不起作用。希望我能在这里找到一些答案...
使用 Eclipse JEE (JDK 12) 这是我尝试运行“main”方法时得到的错误列表
2019 年 8 月 5 日下午 3:12:36 org.hibernate.Version logVersion INFO:HHH000412:Hibernate Core {5.4.3.Final} 线程“main”中发生异常 org.hibernate.internal.util.config.ConfigurationException:无法在资源 hibernate.cfg.xml 中的第 0 行和第 0 列执行解组。消息:在 org.hibernate.boot.cfgxml.internal.JaxbCfgProcessor.unmarshal(JaxbCfgProcessor.java:133) 处为 null 在 org.hibernate.boot.cfgxml.internal.JaxbCfgProcessor.unmarshal(JaxbCfgProcessor.java:65) 处为 null 在 org.hibernate.boot.cfgxml.internal.ConfigLoader.loadConfigXmlResource(ConfigLoader.java:57) 处为 null 在 org.hibernate.boot.registry.StandardServiceRegistryBuilder.configure(StandardServiceRegistryBuilder.java:165) 处为 org.hibernate.cfg.Configuration.configure(Configuration.java:258) 处为 null 在 main.Main.main(Main.java:18) 处为 javax.xml.bind.UnmarshalException - 带有链接异常:[javax.xml.stream.XMLStreamException: ParseError 在 [row,col]:[8,109] 消息:对实体“useSSL”的引用必须以 ';' 结尾分隔符。] 在 com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamException(UnmarshallerImpl.java:485)在 com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:463)在 com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:435)在 org.hibernate.boot.cfgxml.internal.JaxbCfgProcessor.unmarshal(JaxbCfgProcessor.java:126)...另外 5 个由以下原因引起:javax.xml.stream.XMLStreamException:ParseError 在 [row,col]:[8,109] 消息:对实体的引用“useSSL” 必须以 ';' 分隔符结尾。位于 java.xml/com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:652) 位于 java.xml/com.sun.xml.internal.stream.XMLEventReaderImpl.peek(XMLEventReaderImpl.java:277) 位于 java.xml/javax.xml.stream.util.EventReaderDelegate.peek(EventReaderDelegate.java:98) 位于 org.hibernate.boot.cfgxml.internal.JaxbCfgProcessor$NamespaceAddingEventReader.peek(JaxbCfgProcessor.java:254) 位于 com.sun.xml.bind.v2.runtime.unmarshaller.StAXEventConnector.handleCharacters(StAXEventConnector.java:179) 位于com.sun.xml.bind.v2.runtime.unmarshaller.StAXEventConnector.bridge(StAXEventConnector.java:141) at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:460) ... 还有 7 个
这是我的休眠配置(位于 /src 文件夹中)
<?xml version="1.0" encoding="UTF-8"?>
com.mysql.jdbc.Driver jdbc:mysql://localhost:3306/test root Se2018Se true true create-drop org.hibernate.dialect.MySQLDialect
<mapping resource="item.hbm.xml"/>
</session-factory>
这是我写到主类的代码
package main;
导入 org.hibernate.Session;导入 org.hibernate.SessionFactory;导入 org.hibernate.Transaction;导入 org.hibernate.cfg.Configuration;
公共类主要{
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("Starting test");
Item item = new Item();
item.setName("Bamba");
SessionFactory sessionFactory = new Configuration().configure("hibernate.cfg.xml").buildSessionFactory();
Session hession = sessionFactory.openSession(); // hession = hibernate session
Transaction tx = hession.beginTransaction();
hession.save(item);
tx.commit();
}
}