为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 Hibernate 5 中从 xml 创建表?

如何在 Hibernate 5 中从 xml 创建表?

郎朗坤 2023-03-17 14:09:32
我在这个文件中保留表架构tableaddress.orm.xml<?xml version="1.0" encoding="UTF-8"?><entity-mappings version="2.1"    xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/orm"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">    <entity class="Address">        <attributes>            <basic name="city" attribute-type="String" />            <basic name="country" attribute-type="int" />            <basic name="province" attribute-type="double" />            <basic name="postalCode" attribute-type="boolean">            </basic>            <basic name="street" attribute-type="String" />        </attributes>    </entity></entity-mappings>这是我尝试使用 Hibernate 创建表的方法public class App {    public static void main( String[] args )    {    Properties prop= new Properties();    prop.setProperty("hibernate.connection.url", "jdbc:mariadb:......");    prop.setProperty("dialect", "org.hibernate.dialect.MariaDB53Dialect");    prop.setProperty("hibernate.connection.username", "user");    prop.setProperty("hibernate.connection.password", "password");    prop.setProperty("hibernate.connection.driver_class", "org.mariadb.jdbc.Driver");     SessionFactory sessionFactory = new Configuration()             .addResource("tableaddress.orm.xml").addProperties(prop).buildSessionFactory();     Session session = sessionFactory.openSession();     session.beginTransaction();     session.getTransaction().commit();     session.close();     }} 它应该工作,没有编译错误,但由于某种原因没有创建表错误java.lang.NoClassDefFoundError: javax/transaction/SystemException
查看完整描述

1 回答

?
鸿蒙传说

TA贡献1865条经验 获得超7个赞

这可能是由于 Hibernate 中的错误/功能所致。

javax.transaction 已在 5.0.4 中从 Hibernate 中删除(好吧,标记为“已提供”),但它在 5.0.7 中被带回(参见https://hibernate.atlassian.net/browse/HHH-10307

“JTA 不再可传递地提供 (HHH-10178) 导致不使用 JTA 的应用程序出现问题”

)

因此,假设您使用的是 5.04、5.0.5 或 5.0.6,您的选择是升级 Hibernate,或添加以下依赖项:

<dependency>
    <groupId>javax.transaction</groupId>
    <artifactId>jta</artifactId>
    <version>1.1</version>
</dependency>


查看完整回答
反对 回复 2023-03-17
  • 1 回答
  • 0 关注
  • 100 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信