Улучшенная обработка исключений в JPA

Я использовал EJB3/JPA при сохранении сущностей и доволен тем, как он справляется с моей задачей, связанной с БД. задачами. Единственное, что меня беспокоит, это обработка исключений. Мой пример кода при сохранении сущности всегда приходит в таком виде. Большинство учебников, которые я читал в сети, также имеют такой вид, без учета обработки исключений.

@Stateless
public class StudentFacade{
    @PersistenceContext(unitName = "MyDBPU")
    private EntityManager em;

    public void save(Student student) {
        em.persist(student);
    }
}

Но я не знаю, что является лучшим способом обработки исключений в EJB приложении? Что должно быть лучшим способом при обработке исключений?

Вот как другие обрабатывают исключения? Блок try catch на фасаде сессии?

@Stateless
public class StudentFacade{
    @PersistenceContext(unitName = "MyDBPU")
    private EntityManager em;

    public void save(Student student) {
        try {
            em.persist(student);
        } catch(Exception e) {
            //log it or do something
        }
    }
}

или позволить методу выбросить исключение?

public void save(Student student) throws Exception {
    em.persist(student);
}

Я не знаю, правильно ли я понимаю, так как я все еще изучаю EJB. Спасибо

16
задан Pool 21 July 2014 в 14:08
поделиться