quarkus hibernate未提交事务

oxcyiej7  于 2021-07-07  发布在  Java
关注(0)|答案(0)|浏览(265)

我冬眠了 Entity 在quarkus 1.9.2.final服务中定义的类,我正在尝试将其持久化到数据库。我注射了一种 EntityManager 并持久化对象,我知道它确实插入了记录,就好像我在那一行中断了应用程序一样,我可以查询表,记录就在那里,但是在它退出方法之后,插入立即被回滚。
我的实体:

@Entity
@Table(name = "MyEntityTable",
     schema = "dbo",
     catalog = "MyDB",
     uniqueConstraints = @UniqueConstraint(columnNames = "entityNumber")
public class MyEntity implements Serializable {

  private Long entityId;
  private Integer entityNumber;

  @Id
  @GeneratedValue(strategy = IDENTITY)
  @Column(name = "entityId", unique = true, nullable = false)
  public Long getEntityId() {
    return this.entityId;
  }

  public void setEntityId(Long entityId) {
     this.entityId = entityId;
  }

}

以及执行持久性的类:

@RequestScoped
public class Persistor {
  @Inject
  EntityManager em;

  @Transactional
  public MyEntity persistPortfolio(MyEntity m) throws PersistException {
     em.persist(m);
  }
}

我的配置很普通:

quarkus.datasource.db-kind=mssql
quarkus.datasource.jdbc.url=jdbc:sqlserver://db_server;DatabaseName=MyDB;enablePrepareOnFirstPreparedStatementCall=false;
quarkus.datasource.username=user
quarkus.datasource.password=****
quarkus.hibernate-orm.dialect=org.hibernate.dialect.SQLServerDialect
quarkus.hibernate-orm.database.generation=none
quarkus.hibernate-orm.log.sql=true
quarkus.hibernate-orm.log.jdbc-warnings=true

日志中没有错误,也没有说明事务回滚的原因。为什么这不能正确提交或者至少给出一个错误?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题