我坚持实体时使用了EJB3/JPA,我很高兴看到它如何能够管理我的数据库相关的 任务。 我唯一关心的是异常处理。我在保存实体时的示例代码总是出现在这种风格中。 我在网上阅读的大多数教程都带有这种风格,也不考虑异常处理。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。 谢谢
如果你抛出异常,你并不需要抓住它 –