我使用Jersey创建一个RESTful API,其中实现了一个ExceptionMapper类来捕获所有错误。
public class ExceptionFilter implements ExceptionMapper<Throwable>{
public Response toResponse(Throwable thrownable) {
if(thrownable instanceof PSQLExeption) {
System.out.print("Error: " + ((PSQLExeption)thrownable).getQuery());
}
}
}
有没有办法从异常中获取查询字符串? 或者可以实现PreparedStatement并在其中创建一个方法来获取查询字符串?
答案 0 :(得分:1)
你是否要求throwable是PSQLException?
您可以在执行包含预准备语句的DAO层期间抛出一个CustomException,该类可以查询该语句的原始SQL。