⑴ java怎么捕获mysqltimeoutexception
1直接捕获
try{
//链接数据库的代码
}catch(Exceptione){
if(){
System.out.println("数据库连接超时");
}
}
2现在项目都使用Spring连接到数据库,可以在拦截器里面捕获异常,
{
//最终拦截,视图已经解析完毕,监控一些异常,
publicvoidafterCompletion(HttpServletRequestrequest,HttpServletResponseresponse,Objectobj,Exceptionexception)throwsException{
if(){
System.out.println("数据库连接超时");
}
}
//后置拦截,可以给使用当前拦截器的追加一些东西,Controller执行完,但是视图解析器没有解析成页面,
publicvoidpostHandle(HttpServletRequestrequest,HttpServletResponseresponse,Objectobj,ModelAndViewmav)throwsException{
}
//前置拦截,Controller执行前,
publicbooleanpreHandle(HttpServletRequestrequest,HttpServletResponseresponse,Objectobj)throwsException{
returntrue;
}
}
⑵ java.net.SocketTimeoutException: Read timed out
具体的解决方法如下:
修改tomcat配置文件server.xml,找到类似于下面配置:
<Connector port="8086" maxHttpHeaderSize="8192"。
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"。
enableLookups="false" redirectPort="8443" acceptCount="100"。
connectionTimeout="20000" disableUploadTimeout="true" /> 。
将上面的参数disableUploadTimeout值改为false即可。