Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 数据库使用JSP并收到错误消息_Java_Mysql_Jsp - Fatal编程技术网

Java 数据库使用JSP并收到错误消息

Java 数据库使用JSP并收到错误消息,java,mysql,jsp,Java,Mysql,Jsp,在试图向数据库添加信息时,我在JSP文件中遇到了一个问题。当我尝试执行时,我在JSP:中不断得到一个org.apache.jasper.jaspereException:Exception错误,它指向这个代码块。我假设它与setAutoCommit语句有关,但我不确定,因为它也显示了nullPointerException。任何见解都会有所帮助 <%@ page import="java.sql.*" %> <% String url = "jdbc:mysql://

在试图向数据库添加信息时,我在JSP文件中遇到了一个问题。当我尝试执行时,我在JSP:中不断得到一个org.apache.jasper.jaspereException:Exception错误,它指向这个代码块。我假设它与setAutoCommit语句有关,但我不确定,因为它也显示了nullPointerException。任何见解都会有所帮助

<%@ page import="java.sql.*" %>

<%
    String url = "jdbc:mysql://example:3306/database";
    String username = "test";
    String password = "test";
    Connection conn = null;
    Statement stm=null;

    String classPath = "sun.jdbc.odbc.jdbc0dbcDriver";
    try{
        Class.forName(classPath);
        conn = DriverManager.getConnection(url,username,password);
        }catch(Exception exc){

            out.println(exc.toString());

        }

%>

<center><a href="example3-1.jsp">View Movies</a></center><br>
<%
    String MovieTitle=request.getParameter("MovieTitle");
    String MainActor=request.getParameter("MainActor");
    String MainActress=request.getParameter("MainActress");
    String Rating=request.getParameter("Rating");

    String query1 = null;

    query1 = "INSERT INTO MovieTitles (MovieTitle,MainActor,MainActress,Rating) VALUES('"+MovieTitle+"','"+MainActor+"','"+MainActress+"','"+Rating+"')";

    conn.setAutoCommit(false);
    stm = conn.createStatement();
    try{
        stm.executeUpdate(query1);
        conn.commit();
        out.println("<center><h2>A new movie has been added.</h2>");
        out.println("<a href=example3-2.jsp>Add another Movie</a></center>");
        }catch(Exception exc){
            conn.rollback();
            conn.setAutoCommit(true);
        %>

            <script>
                alert("Entry failed. Please retry.");
            </script>
    <%}%>
<%
    if(stm != null){ stm.close();}
    conn.close();
%>


警报(“输入失败。请重试”);
//步骤:注册JDBC驱动程序

  Class.forName("com.mysql.jdbc.Driver");
//步骤:打开一个连接

conn=DriverManager.getConnection(DB_URL, USER, PASS);

您的conn对象未声明/初始化-

Connection conn = DriverManager.getConnection(URL, USER, PASS);

链接以了解有关建立连接的更多信息--

create语句方法抛出
SQLException
。在
try
块中添加createStatement()方法

try {
stm = conn.createStatement();
 ............
 ............

}

你能发布完整的jsp语法至少java部分吗..这里的连接对象是空的。这次我发布了整个代码,因为它以前被截断了。然而,同样的问题仍然存在。我检查了所有语句是否也正确关闭。sun.jdbc.odbc.jdbcDriver 0->o和它是一个mysql服务器,但是为什么要使用odbc驱动程序呢?这么小的错误可能会把其余的搞糟。然而,我只是修复了它,并再次尝试,这一次也没有运气。