做个审核流程 JDBC+ORACLE+upload
把审核结果保存数据库中。。
代码如下
<%@ page language="java" import="com.jspsmart.upload.*"%>
<%@ page import="java.sql.*" pageEncoding="GBK"%>
<%!
public static final String DBDRIVER = "oracle.jdbc.driver.OracleDriver" ;
public static final String DBURL = "jdbc:oracle:thin:@192.168.1.3:1521:orcl" ;
public static final String DBUSER = "scott" ;
public static final String DBPASS = "linxing" ;
%> 
<jsp:useBean id="mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload"/>
<html>
<head>
<title>上传单线图</title>
</head>
<body>
<%   
    boolean flag = false ;   //记录上传是否成功
request.setCharacterEncoding("GBK") ;
mySmartUpload.initialize(pageContext) ; // 初始化上传
mySmartUpload.upload() ; // 准备上传
String filename = mySmartUpload.getRequest().getParameter("single") ;
        String des="E:/webapp/CheckFile/upload";
try

mySmartUpload.save(des);
flag=true;
}
catch(Exception e)
{
}
Connection conn = null ;
PreparedStatement pstmt = null ;
ResultSet rs = null ;
String result=null;     // 表示上传成功或失败的标记
%>
<%  
if(flag)
{
try{
Class.forName(DBDRIVER) ;
conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
String id=filename.substring(1,5);
pstmt.executeUpdate(new String("insert into filelist (id,userid,path,pass) values ("+id+",'gis',"+filename+",'0')"));
conn.commit();
String sql = "SELECT id,username,path,pass FROM filelist" ;
pstmt = conn.prepareStatement(sql) ;
rs = pstmt.executeQuery() ;
%>
<center>
<h1>审核列表</h1>
<table border="1" width="80%">
<tr>
<td>编号</td>
<td>用户名称</td>
<td>文件名称</td>
<td>审核结果</td>
</tr>
<%

while(rs.next()){
String fileid = rs.getString(1) ;
String username = rs.getString(2) ;
String filename1 = rs.getString(3) ;
String pass=rs.getString(4);
if(pass=="0")
{
result="未通过";
}
else
        {
result="通过";
} %>
<tr>
<td><%=fileid%></td>
<td><%=username%></td>
<td><%=filename1%></td>
<td><%=result%></td>
</tr>
<%
}
}
catch(Exception e)
{

    finally
{
rs.close() ;
pstmt.close() ;
conn.close() ;
}
}
%>
</table>
</center>
</body>
</html>

解决方案 »

  1.   

    Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:470)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    root causejava.lang.NullPointerException
    org.apache.jsp.CheckFile.WebContent.WEB_002dINF.gis_jsp._jspService(gis_jsp.java:175)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
      

  2.   

    在页面写这么多java代码,实在不怎么好看。写在类里好找些。另外,这里先判断下
    if(rs !=null){
      while(rs.next()){  }
    }
      

  3.   

    楼主你的习惯太差了,你的代码到处都是:
    } catch(Exception e) 
    {
      // 这里什么信息都没有输出,也没有处理,出现问题也完全不知道
    }全部老老实实修改为:
    } catch(Exception e) 
    {
        e.printStackTrace() // 完整输出错误信息,因为NullPointerException很可能就是前面有错误引起的
    }
      

  4.   

    楼主你的习惯太差了,你的代码到处都是:
    } catch(Exception e) 
    {
      // 这里什么信息都没有输出,也没有处理,出现问题也完全不知道
    }全部老老实实修改为:
    } catch(Exception e) 
    {
        e.printStackTrace(); // 完整输出错误信息,因为NullPointerException很可能就是前面有错误引起的
    }