NetBeans 6.9或7.0开发Web程序,实现图片文件上传和显示问题 100
1、要用纯JSP+Servlet实现,不用javascript,不用Struts,不用第三方的jar包;2、用户注册时在同一个jsp页面填写用户名,密码,还有文件上传<i...
1、要用纯JSP+Servlet实现,不用javascript,不用Struts,不用第三方的jar包;
2、 用户注册时在同一个jsp页面填写用户名,密码,还有文件上传<input type="file" name="jspPhoto" />。
3、同样的代码,为什么在MyEclipse8.5下运行,没有问题,而在netBeans下出现找不到文件(用户选择的图片文件)错误?
注册页面:registUser.jsp
<%@ page contentType="text/html;charset=utf-8" language="java"
errorPage="error.jsp" pageEncoding="utf-8"%>
<%@ page import="beans.*"%>
<%@page import="java.io.IOException"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>'registUser.jsp' 普通用户注册</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body>
<form action="registUserServ" method="POST">
<table>
<tr>
<td>
email:
</td>
<td>
<input type="text" name="jspEmail" value="aLi@163.com" />
</td>
</tr>
<tr>
<td>
密码:
</td>
<td>
<input type="password" name="jspPasswordA" value="123" />
</td>
</tr>
<tr>
<td>
再次输入密码:
</td>
<td>
<input type="password" name="jspPasswordB" value="123" />
</td>
</tr>
<tr>
<td>
联系电话:
</td>
<td>
<input type="text" name="jspPhone" value="02812345678" />
</td>
</tr>
<tr>
<td>
形象照:
</td>
<td>
<input type="file" name="jspPhoto" />
</td>
</tr>
<tr>
<td align="right">
<input type="submit" value="注册" />
</td> <td><input type="reset" value="重置" />
后台的servlet:public class registUserServ extends HttpServlet {略去变量声明
doGet方法是直接调用doPost方法,略。doPost方法:request.setCharacterEncoding("UTF-8");request.getSession().setAttribute("msg","");email = (String) request.getParameter("jspEmail").trim();passwordA = (String) request.getParameter("jspPasswordA").trim();passwordB = (String) request.getParameter("jspPasswordB").trim();fileName = (String) request.getParameter("jspPhoto");phone = (String) request.getParameter("jspPhone").trim();两次输入的密码核对是否一致,略。
storedPath = this.getServletContext().getRealPath("\\")+"\\userImages\\"+ email + ".jpg";
fis = new FileInputStream(fileName);count = (long) fis.available();byteArray = new byte[(int) count];fis.read(byteArray);fis.close();file = new File(storedPath);fos = new FileOutputStream(file);fos.write(byteArray);fos.flush();fos.close();
用户注册时,选择的图片是
chicken.png ,点击“注册”按钮后,捕获到的异常信息:
registUserServ 发生java.io.FileNotFoundException异常:
chicken.png (系统找不到指定的文件。)
但是,这种情况在MyEclipse8.5中不会出现。
那么,在NetBeans中怎么解决?
记住喔,不用其他框架和jar。
9月13日的两条回答,不对。 百度无高人吗? 展开
2、 用户注册时在同一个jsp页面填写用户名,密码,还有文件上传<input type="file" name="jspPhoto" />。
3、同样的代码,为什么在MyEclipse8.5下运行,没有问题,而在netBeans下出现找不到文件(用户选择的图片文件)错误?
注册页面:registUser.jsp
<%@ page contentType="text/html;charset=utf-8" language="java"
errorPage="error.jsp" pageEncoding="utf-8"%>
<%@ page import="beans.*"%>
<%@page import="java.io.IOException"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>'registUser.jsp' 普通用户注册</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body>
<form action="registUserServ" method="POST">
<table>
<tr>
<td>
email:
</td>
<td>
<input type="text" name="jspEmail" value="aLi@163.com" />
</td>
</tr>
<tr>
<td>
密码:
</td>
<td>
<input type="password" name="jspPasswordA" value="123" />
</td>
</tr>
<tr>
<td>
再次输入密码:
</td>
<td>
<input type="password" name="jspPasswordB" value="123" />
</td>
</tr>
<tr>
<td>
联系电话:
</td>
<td>
<input type="text" name="jspPhone" value="02812345678" />
</td>
</tr>
<tr>
<td>
形象照:
</td>
<td>
<input type="file" name="jspPhoto" />
</td>
</tr>
<tr>
<td align="right">
<input type="submit" value="注册" />
</td> <td><input type="reset" value="重置" />
后台的servlet:public class registUserServ extends HttpServlet {略去变量声明
doGet方法是直接调用doPost方法,略。doPost方法:request.setCharacterEncoding("UTF-8");request.getSession().setAttribute("msg","");email = (String) request.getParameter("jspEmail").trim();passwordA = (String) request.getParameter("jspPasswordA").trim();passwordB = (String) request.getParameter("jspPasswordB").trim();fileName = (String) request.getParameter("jspPhoto");phone = (String) request.getParameter("jspPhone").trim();两次输入的密码核对是否一致,略。
storedPath = this.getServletContext().getRealPath("\\")+"\\userImages\\"+ email + ".jpg";
fis = new FileInputStream(fileName);count = (long) fis.available();byteArray = new byte[(int) count];fis.read(byteArray);fis.close();file = new File(storedPath);fos = new FileOutputStream(file);fos.write(byteArray);fos.flush();fos.close();
用户注册时,选择的图片是
chicken.png ,点击“注册”按钮后,捕获到的异常信息:
registUserServ 发生java.io.FileNotFoundException异常:
chicken.png (系统找不到指定的文件。)
但是,这种情况在MyEclipse8.5中不会出现。
那么,在NetBeans中怎么解决?
记住喔,不用其他框架和jar。
9月13日的两条回答,不对。 百度无高人吗? 展开
展开全部
文件夹:build-存放编译后的class文件
nbproject-存放项目的具体配置文件
src-java源代码存放文件夹
test-JUnit测试文件存放位置
Build.xml构建描述文件,因为Netbeans的编译打包是基于ant的,build就是ant实现自动编译打包的描述文件。
manifest.mf是打包的时候需要的一个清单文件,是对打包后的jar包中的文件的一个描述下文件。
original.java,.netbeans_automatic_build,这两个文件不知道你用的什么Netbeans版本,在我的版本中并未生成此文件。
build-impl.xml是对Build.xml文件的具体描述,Build.xml其实并未实现具体的ant构建脚本,具体是在该文件中实现的,如果你看过build.xml的源代码,就会发现一句<import file="nbproject/build-impl.xml"/>,这你就知道是什么意思了。
展开全部
文件夹:build-存放编译后的class文件
nbproject-存放项目的具体配置文件
src-java源代码存放文件夹
test-JUnit测试文件存放位置
Build.xml构建描述文件,因为Netbeans的编译打包是基于ant的,build就是ant实现自动编译打包的描述文件。
manifest.mf是打包的时候需要的一个清单文件,是对打包后的jar包中的文件的一个描述下文件。
original.java,.netbeans_automatic_build,这两个文件不知道你用的什么Netbeans版本,在我的版本中并未生成此文件。
build-impl.xml是对Build.xml文件的具体描述,Build.xml其实并未实现具体的ant构建脚本,具体是在该文件中实现的,如果你看过build.xml的源代码,就会发现一句<import file="nbproject/build-impl.xml"/>
nbproject-存放项目的具体配置文件
src-java源代码存放文件夹
test-JUnit测试文件存放位置
Build.xml构建描述文件,因为Netbeans的编译打包是基于ant的,build就是ant实现自动编译打包的描述文件。
manifest.mf是打包的时候需要的一个清单文件,是对打包后的jar包中的文件的一个描述下文件。
original.java,.netbeans_automatic_build,这两个文件不知道你用的什么Netbeans版本,在我的版本中并未生成此文件。
build-impl.xml是对Build.xml文件的具体描述,Build.xml其实并未实现具体的ant构建脚本,具体是在该文件中实现的,如果你看过build.xml的源代码,就会发现一句<import file="nbproject/build-impl.xml"/>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可能是路径的问题吧!是不NETBeans 要基于工作目录?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询