jsp上传文件到服务器问题
我用 jspsmart组件 做上传文件,我把图片上传到服务器,但当tomcat部署 Remove 掉项目时 服务器的图片就全没了,这样项目
拿到别的机子运行就没有图片,所以我把图片的名字+后缀 保存到数据库 但不知道当项目运行时如何将数据库的图片自动上传
到服务器上
或者不要保存到数据库,如何把图片直接保存在MyEclipse的项目中的upload的文件夹 ( upload文件夹是保存图片的 )
这样就是双份保存 如何做到
这是上传的代码:
uploadimage.jsp 页面
<%
SmartUpload mySmartUpload=new SmartUpload();
long file_size_max=4000000;
String fileName2="",ext="",testvar="";
String url="upload/";
mySmartUpload.initialize(pageContext);
try{
mySmartUpload.setAllowedFilesList("jpg,gif");
mySmartUpload.upload();
}
catch(Exception e)
{
%>
<script type="text/javascript">
alert("只允许上传.jpg和.gif类型图片文件");
</script>
<%
}
String name=null;
try
{
com.jspsmart.upload.File myFile=mySmartUpload.getFiles().getFile(0);
//若文件不存在则继续
if(myFile.isMissing())
{
%>
<script type="text/javascript">
alert("请选择要上传的文件");
window.location='upload.htm';
</script>
<%
}
else{
//String myFileName=myFile.getFileName(); //取得上载的文件的文件名
ext=myFile.getFileExt(); //取得后缀名
int file_size=myFile.getSize();
String saveurl="";
if(file_size<file_size_max)
{
//更改文件名,取得当前上传时间的毫秒数值
Calendar calendar=Calendar.getInstance();
String filename=String.valueOf(calendar.getTimeInMillis());
name=filename;
saveurl=application.getRealPath("/")+url;
saveurl+=filename+"."+ext;
// 将文件另存到以WEB应用程序的根目录为文件根目录的目录下
myFile.saveAs(saveurl,SmartUpload.SAVE_PHYSICAL);
}
}
}
catch(Exception e)
{
out.print(e.toString());
}
//ImageDao是一个图片的dao层
ImageDao imgDao=new ImageDao();
System.out.println(name+"."+ext);
//用AddImageName的方法添加一张图片名称到数据库中,不是图片的全路径,是图片名而已
int result=imgDao.AddImageName(name+"."+ext);
if(result>0)
{
response.sendRedirect("success.jsp");
}
else
{
out.print("<script language=javascript>alert('添加到数据库失败');</script>");
}
%>
upload.jsp 页面
<html>
<head>
<title>掉</title>
<script type="text/javascript">
function checkfile()
{
if(document.form1.file.value==null)
{
alert('去死');
return false;
}
return true;
}
</script>
</head>
<body>
<table border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="45" align="center" valign="middle">
<form action="uploadimage.jsp" method="post" enctype="multipart/form-data" name="form1" onsubmit="return checkfile()">
<input type="file" name="file">
<input type="submit" name="Submit" value="上传">
</form></td>
</tr>
</table>