我有一个表单页面,当我保存它时,它会覆盖数据库。表单页面中是一个文本框,允许用户输入4000个字符,但是如果用户输入的字符超过此字符,则会出现以下错误:


 ERROR 15:54:05 AbstractFlushingEventListener.performExecutions(301) |
 Could not synchronize database state with session
 org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update



我知道这是因为它试图添加的数量超出了数据库的允许范围。我只想捕获异常并重定向回表单页面。

当控制器将它传递给此行的handle请求时,它失败了:

return super.handleRequest(request,response);


有什么办法可以做到吗?

最佳答案

try {
    /* your code that creates the exception */
} catch (GenericJDBCException e) {
    /* redirect back to form page */
}

07-24 09:34