我正在尝试使用Kundera作为一个JPA实现,而不是cassandra (即事务管理功能)。
2个问题:
第一个问题
事务管理不支持本机查询是真的吗?也就是说,如果我这样做:
EntityManagerFactory emf = Persistence.createEntityManagerFactory("piccandra", getCassandraProperties());
EntityManager em = emf.createEntityManager();
em.setFlushMode(FlushModeType.COMMIT);
em.getTransaction().begin();
Query q = em.createNativeQuery("insert into photographer (photographer_id, photographer_name) values ('id1', 'name1')");
q.executeUpdate();
em.getTransaction().rollback();回滚不起作用吗?
第二个问题
如何对持久化执行乐观锁定(也称为CAS)?在卡桑德拉,我可以跑:
UPDATE photographer SET name = 'x' WHERE id = 1 AND update_date <= some-timestamp当使用昆德拉时,我想持久化一个实体,但前提是它没有被其他人更改。我能这么做吗?
编辑:我看到JPA确实支持乐观锁定,但是Kundera并不支持它。
发布于 2016-05-26 16:28:49
https://stackoverflow.com/questions/37436549
复制相似问题