Java问题汇集(2)

1.Error setting driver on UnpooledDataSource

具体:Exception in thread "main" org.apache.ibatis.exceptions.PersistenceException:
### Error updating database.  Cause: java.sql.SQLException: Error setting driver on UnpooledDataSource. Cause: java.lang.ClassNotFoundException: Cannot find class: com.mysql.jdbc.Driver

原因:该问题出现的原因是jdbc.properties文件里driver后面有空格,所以注意properties里的空格

2.Cannot forward after response has been committed

具体:我现在遇到的该问题是出现在Filter的使用时出现的。

原因:在过滤servlet请求时,在servlet中己经调用getRequestDispatcher,在flter再调用一次getRequestDispatcher或在Filter中调用完getRequestDispatcher后再调用chain.doFilter();

 1 if(!isExcludeQuery(queryStr))
 2                 {
 3                     String filterflag = request.getParameter("filterflag");
 4                     
 5                     if(user == null)
 6                     {
 7                         request.setAttribute("filter_mess","不好意思,你还没有登录");
 8                         if("front".equals(filterflag))
 9                         //前台请求标志
10                             request.getRequestDispatcher("../index.jsp").forward(request, response);
11                         else
12                             request.getRequestDispatcher("../manager/login.jsp").forward(request, response);
13                         //return;
14                     }
15                 }
16                 chain.doFilter(request, response);

注意:

  1.14行注释掉的retunr,return为必须的

  2.不管是servlet还Filter,request.getRequestDispatcher并不等于return,也就是并不是结束程序调用,返回系统,chain和servlet都是链的模型,可以多次使用

  

原文地址:https://www.cnblogs.com/liuyq/p/3652966.html