0

emp.html

<!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=ISO-8859-1">
<title>Insert title here</title>
</head>
<body bgcolor="wheat">
<center>
<form action="insert.jsp" method="post">
Empno: <input type="text" name="t1"> <br><br>
Empname:<input type="text" name="t2"> <br><br>
Salary:<input type="text" name="t3"> <br><br>
<input type="submit" value="createEmp">
</form>
</center>
</body>
</html>

插入.jsp:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@page import="java.sql.*" %>
<%@page import="java.util.*" %>

<%!
Connection con;
PreparedStatement ps;
public void jspInt(){
    try {
        Class.forName("com.mysql.jdbc.Driver");
        con = DriverManager.getConnection("jdbc:mysql://localhost/test","root","test");
        ps = con.prepareStatement("insert into emp values(?,?,?)");
    }
    catch (Exception e) {
        // TODO: handle exception
    }
}
public void jspDestroy() {
    try {
        ps.close();
        con.close();
    }
    catch(Exception e) {
        e.printStackTrace();
    }
}
%>
<%
int eid = Integer.parseInt(request.getParameter("t1"));
String ename = request.getParameter("t2");
float sal = Float.parseFloat(request.getParameter("t3"));
ps.setInt(1, eid);
ps.setString(2, ename);
ps.setFloat(3, sal);
ps.executeUpdate();
%>
<%@ include file="emp.html" %>

错误:当我单击提交按钮时,我收到一个空指针异常:


在 org.apache.jasper.servlet 的 org.apache.jasper.runtime.HttpJspBase.destroy(HttpJspBase.java:84)
的 org.apache.jsp.insert_jsp.jspDestroy(insert_jsp.java:27)的java.lang.NullPointerException
。 JspServletWrapper.destroy(JspServletWrapper.java:321)
在 org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:131)
在 org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:253)
在 org .apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:258)
在 org.apache.jasper.servlet.JspServlet.service(JspServlet.java:205)
在 javax.servlet.http.HttpServlet.service(HttpServlet.java :856)
在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
在 org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:214)
在 org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
在 org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
在 org.apache。 catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
在 org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
在 org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
在 org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:137)
在 org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
在 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
在 org.apache。 catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
在 org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
在 org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
在 org.apache.catalina.core.StandardPipeline.invoke (StandardPipeline.java:520)
在 org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
在 org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
在 org.apache。 coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt( PoolTcpEndpoint.java:577)
在 org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
在 java.lang.Thread.run(Thread.java:595)

我正在使用 MySQL 5.5、Tomcat 5 和 JDK 1.5。我配置了构建路径并添加了服务器库和 mysql 连接器。罐。请对此有所了解。

4

0 回答 0