报什么错?OperateSourceInf这个类connection是怎么获取的?为什么没有commit?异常不处理rollback?关闭资源为什么不写在finally里?

解决方案 »

  1.   


    他这个代码的话, public static Connection getConnection() {
    Connection cn = null;
    try {
    Class.forName("com.mysql.jdbc.Driver");
    cn = DriverManager.getConnection(
    "jdbc:mysql://127.0.0.1:3306/test", "root", "123");
    } catch (ClassNotFoundException e) {
    System.out.println("没有找到数据库");
    e.printStackTrace();
    } catch (SQLException e) {
    e.printStackTrace();
    }
    return cn;
    }直接在后台运行没问题,只是放到了前台直接运行就报错,报错就是找不到驱动类。
      

  2.   


    JSP导入如下:
    <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@ page import="cn.prac.operate.OperateSourceInf"%>
    <%@ page import="cn.prac.entity.SourceInf"%>
    <%@ page import="java.util.List"%>
    <%@ page import="java.util.ArrayList"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <script type="text/javascript">
    function enterKey() {
    if (event.keyCode == 3) {
    form.action = "sucess.jsp";
    form.submit();
    }
    }
    </script>
    <script type="text/javascript">
    function cancelKey() {
    if (event.keyCode == 3) {
    form.action = "detailOfAccount.jsp";
    form.submit();
    }
    }
    </script>
    <script type="text/javascript">
    function backKey() {
    if (event.keyCode == 3) {
    form.action = "home.jsp";
    form.submit();
    }
    }
    </script>
    <title>detailOfAccount</title>
    </head>
    <body>
    <form action="" name="form" method="post"></form>
    <table width="600" border="1" align="center">
    <tr>
    <td>日期</td>
    <td>入账</td>
    <td>来源</td>
    <td>支出</td>
    <td>结余</td>
    <td>总计</td>
    <td>备注</td>
    </tr>
    <%
    OperateSourceInf opt = new OperateSourceInf();
    SourceInf si = new SourceInf("2014.1.15", "差旅费");
    SourceInf si1 = new SourceInf("2014.1.15", "差旅费1");
    opt.addSourceInf(si);
    opt.addSourceInf(si1);
    %> <tr>
    <td><%=si.getSrc_date()%></td>
    <td><%=si.getSrc_name()%></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    </tr>
    <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    </tr>
    <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    </tr>
    </table>
    <div align="center">
    <input type="submit" name="提交" value="提交" onsubmit="enterKey()">
    <input type="reset" name="取消" value="取消" onclick="cancelKey()">
    <input type="button" name="返回" value="返回" onunload="backKey()">
    </div>
    </form>
    </body>
    </html>
      

  3.   

    看下web-info/lib  下是否有mysql jar包
      

  4.   


    他这个代码的话, public static Connection getConnection() {
    Connection cn = null;
    try {
    Class.forName("com.mysql.jdbc.Driver");
    cn = DriverManager.getConnection(
    "jdbc:mysql://127.0.0.1:3306/test", "root", "123");
    } catch (ClassNotFoundException e) {
    System.out.println("没有找到数据库");
    e.printStackTrace();
    } catch (SQLException e) {
    e.printStackTrace();
    }
    return cn;
    }直接在后台运行没问题,只是放到了前台直接运行就报错,报错就是找不到驱动类。在addSourceInf这个方法第一行打印一下,在前台运行能执行到这个方法吗?
    如果可以 还是怀疑你那个连接没获取到,打印下连接是不是null;
    或者加一句con = getConnection();试一下可不可以
      

  5.   

    找到了解决的方案,是tomcat的lib下面没有mysql的驱动包,然后项目即使build path里面有mysql,tomcat还是无法找到驱动包。所以刚刚把驱动包,放到lib下面,瞬间好使了。
      

  6.   


    你的名字这么屌丝,CSDN造吗?
      

  7.   


    你的名字这么屌丝,CSDN造吗?
    臣妾真的不知啊,你帮问问床上等你。
      

  8.   


    你的名字这么屌丝,CSDN造吗?
    臣妾真的不知啊,你帮问问床上等你。
    床上等你今晚加班改导航,没时间
      

  9.   


    你的名字这么屌丝,CSDN造吗?
    臣妾真的不知啊,你帮问问床上等你。
    床上等你今晚加班改导航,没时间几位这么happy ?
      

  10.   

    楼主应该没有加mysql的jar吧。