首页 > 解决方案 > 找不到文件异常,系统无法指定图像路径

问题描述

系统无法指定文件错误即将到来。我不知道为什么

我正在使用 servlet 并在其中使用文件输入流将图像转换为字节形式..

public class Student extends HttpServlet {
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        response.setContentType("text/html");
        PrintWriter out = response.getWriter();

        String f=request.getParameter("U_Fname");
        String l=request.getParameter("U_Lname");
        String p=request.getParameter("U_Pswd");
        String e=request.getParameter("U_Email");
        String m=request.getParameter("U_Mobile");
        String a=request.getParameter("U_Address");
        String c=request.getParameter("U_Category");
        String g=request.getParameter("U_Gender");
        String d=request.getParameter("U_Dob");
        String t=request.getParameter("U_Country");
        String j=request.getParameter("U_Image");



        try{
        Class.forName("oracle.jdbc.driver.OracleDriver");
        Connection con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","system","admin");
        PreparedStatement ps=con.prepareStatement("insert into Registeruser values(?,?,?,?,?,?,?,?,?,?,?)");

        FileInputStream fis=new FileInputStream(new File(j));

        ps.setString(1,f);
        ps.setString(2,l);
        ps.setString(3,p);
        ps.setString(4,e);
        ps.setString(5,m);
        ps.setString(6,a);
        ps.setString(7,c);
        ps.setString(8,g);
        ps.setString(9,d);
        ps.setString(10,t);
        ps.setBinaryStream(11,fis); 

        int i=ps.executeUpdate();
        if(i>0)
        out.print("You are successfully Registred...");


        }catch(Exception e2) 
        {System.out.println(e2);}

        out.close();
    }

}

无法指定系统文件,找不到java文件异常

标签: java

解决方案


您可以尝试以下方法。我假设您提交的是图像文件而不是图像路径。

InputStream inputStream = null;

Part filePart = request.getPart("U_Image");
if (filePart != null) {
    System.out.println(filePart.getName());
    System.out.println(filePart.getSize());
    System.out.println(filePart.getContentType());

    inputStream = filePart.getInputStream();
}

if (inputStream != null) {
    ps.setBlob(11, inputStream);
}

推荐阅读