这句话出错了
int picid = Integer.parseInt((String)request.getParameter("id"));

解决方案 »

  1.   

    id 是从另外一个htm文件中手工输入的
      

  2.   

    另外我用jspsmartupload上传图片到数据库后,上传时间、文件名、路径等也存到图片字节中,下载图片在ie中无法显示。
      

  3.   

    int picid = Integer.parseInt((String)request.getParameter("id"));
    ---->
    String id=request.getParameter("id");
    if(id.trim()!=null&&!id.trim().equals(""))
    {
    int picid = Integer.parseInt(id.trim());}
      

  4.   

    htm文件的内容如下:<HTML>
    <BODY BGCOLOR="white"><H1>&nbsp;上传到数据库</H1>
    <HR><FORM METHOD="POST" ACTION="uploadpic1.jsp" ENCTYPE="multipart/form-data">
        
       <p>请输入要上传的文件名</p>
       <INPUT TYPE="FILE" NAME="image" SIZE="50"><BR>
       <P></P>
       输入数据库的ID
       <INPUT TYPE="text" NAME="id" SIZE="2"><BR>   
       <P>
       <INPUT TYPE="SUBMIT" VALUE="上传">
       </p>
       
    </FORM></BODY>
    </HTML>
      

  5.   

    int picid = Integer.parseInt((String)request.getParameter("id"));(String)request.getParameter("id")
    有为null或者空的可能
    所以不能parseInt。
    你要作判断
      

  6.   

    Try it:
    uploadpic1.jsp
    <%@ page import="java.sql.*" errorPage="error.jsp" %>
    <%@page contentType="text/html;charset="%>
    <%@ page language="java"%>
    <%@ page import="java.io.*"%> 
    <%@ page import="java.util.*"%> 
    <%@ page import="javax.servlet.*"%> 
    <%@ page import="javax.servlet.http.*"%> 
    <%@ page import="java.lang.*"%><HTML>
    <BODY BGCOLOR="white">
    <H1>我的upload</H1>
    <HR>
    <%    String fname = request.getParameter("image");
        String id = request.getParameter("id");
        int picid = Integer.parseInt(id.trim());

    %>
    <p>資数据库picid是:<%=picid%></p>
    <p>圖图片文件是是:<%=fname%></p>
    <%
        fname = new String(fname.trim().getBytes("ISO8859_1"), "GBK");
        String url = new String();
        url="jdbc:microsoft:sqlserver://localhost:1433";
        Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
        Connection con = DriverManager.getConnection(url,"sa","sa");
        con.setCatalog("mybase");
        String sqlin = "insert into PICS(picid,image) values (?,?)";
        File file = new File(fname);
        long l1 = file.length();
        int l2 = (int)l1;
      try
      {  
        FileInputStream fis = new FileInputStream(file);
        PreparedStatement ps = con.prepareStatement(sqlin);
        ps.setInt(1, picid);
        ps.setBinaryStream(2, fis, l2);
        ps.executeUpdate();
        ps.close();
        fis.close();
      }  
      catch(SQLException e)
         {
           System.out.println(e);
         }  
    %>
    </BODY>
    </HTML>uploadpic.htm
    <HTML>
    <BODY BGCOLOR="white">
    <H1>&nbsp;上传到数据库</H1>
    <HR>
    <FORM METHOD="POST" ACTION="uploadpic1.jsp" > 
       <p>请输入要上传的文件名</p>
       <INPUT TYPE="FILE" NAME="image" SIZE="50"><BR>
       <P></P>
       输入数据库的ID
       <INPUT TYPE="text" NAME="id" SIZE="2"><BR>   
       <P>
       <INPUT TYPE="SUBMIT" VALUE="上传">
       </p>
    </FORM>
    </BODY>
    </HTML>