Hibernate управляет транзакцией в автономном приложенииJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Hibernate управляет транзакцией в автономном приложении

Сообщение Anonymous »

У меня есть небольшой проект, в котором есть только:
  • реализовать простой rest API с помощью com.sun.net.httpserver.HttpServer
  • Hibernate + JPA
как вы знаете, Hibernate не поддерживает вложенные транзакции, и я не буду использовать такие платформы, как Spring или jakarta/javaEE.

Я хочу знать:

Хороша ли идея передавать EntityManager в качестве параметра классам слоев CRUD?

Код: Выделить всё

public class MyCRUD {

public static void save(FirstEntity fe, EntityManager em) {
em.persist(fe);
}

public static void save(SecondEntity se, EntityManager em) {
em.persist(se);
}
}

public class MyService {
public static void doSomething(....) {
// Business logic
// Insert into db
// ...
EntityManagerFactory emf = Persistence.createEntityManagerFactory(UNIT_NAME);
try (EntityManager em = emf.createEntityManager()){
EntityTransaction tx = em.getTransaction();
tx.begin();
MyCRUD.save(fe, em);
MyCRUD.save(se, em);
tx.commit();
}
}
}
Есть ли способ использовать EntityManager внутри уровня CRUD (без передачи в качестве параметра) и обрабатывать транзакции на уровне обслуживания?

Подробнее здесь: https://stackoverflow.com/questions/782 ... pplication
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»