大家帮忙看看了!!在线急等
uploadFile.jsp
<%@ page contentType="text/html" language="java" import="java.io.*,com.jspsmart.upload.*,java.util.*,java.sql.*"%>
<%@ page import="com.jspsmart.upload.*" pageEncoding="gbk"%>
<%@ page import="java.sql.*" %>
<html>
<head><title>文件上传实例</title></head>
<h3>使用jspsmartUpload上传文件</h3>
<body>
<% //创建一个实例bean
com.jspsmart.upload.SmartUpload mySmartUploaad= new com.jspsmart.upload.SmartUpload();
mySmartUploaad.initialize(pageContext);
//只允许上传doc/pdf/txt类型的文件
mySmartUploaad.setAllowedFilesList("doc,pdf,txt");
//不允许上传文件的类型
mySmartUploaad.setDeniedFilesList("exe,bat,jsp");
//设置上传文件的大小
mySmartUploaad.setMaxFileSize(50000);
mySmartUploaad.upload();
//创建数据库连接
Connection conn=null;
PreparedStatement pstmt=null;
ResultSet rs=null;
String driver="sun.jdbc.odbc.JdbcOdbcDriver";
String urls= "jdbc:odbc:RED";
Class.forName(driver);
conn= DriverManager.getConnection(urls,"sa","sa");
String queryStr="insert into storefiles values(?,?,?)";
pstmt=conn.prepareStatement(queryStr);
//对上传到服务器的文件进行保存至数据库及处理
for(int i=0;i<mySmartUploaad.getFiles().getCount();i++){
com.jspsmart.upload.File myFile= mySmartUploaad.getFiles().getFile(i);
if(!myFile.isMissing()){
//取得上载文件名
String myFileName= myFile.getFileName();
if(myFileName==null||myFileName.equals("")){break;}
//保存路径
String aa=getServletContext().getRealPath("/")+"HY_SchoolMate\\upload\\";
String trace=aa+myFileName;
//见文件保存在服务器
myFile.saveAs(trace,mySmartUploaad.SAVE_PHYSICAL);
//下面将上载的文件保存到数据库中
//将文件读到流中
java.io.File file= new java.io.File(trace);
java.io.FileInputStream fis= new java.io.FileInputStream(file);
//设置SQL语句
pstmt.setInt(1,i);
pstmt.setString(2,myFileName);
pstmt.setBinaryStream(3,fis,(int)file.length());
pstmt.addBatch();
out.println("上传了文件:"+(i+1)+":"+myFileName+"至目录及数据库storesFiles,文件相关信息如下:+"<br>"");
out.println("文件大小:"+myFile.getSize()+"bytes"+"<br>");
out.println("上传路径:"+trace+"<br><br>");
}
}
pstmt.executeBatch();
pstmt.clearBatch();
pstmt.close();
conn.close();
%>
</body>
upload.html
</html>
<html>
<head><title>文件上传实例</title></head>
<h3>使用jspsmartupload上传文件至服务器及storyfile数据表</h3>
<h4>请选择要上传的文件名</h4>
<body>
<form action="uploadFile.jsp" method="post" ENCTYPE="multipart/form-data">
文件名1:<input type="file" name="file1" size="50"> <br>
文件名1:<input type="file" name="file2" size="50"> <br>
<input type="submit" name="submit" value="上传">
</form>
</body>
</html>
错误提示:
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: 10 in the jsp file: /uploadFile.jsp
br cannot be resolved
7: <head><title>文件上传实例</title></head>
8: <h3>使用jspsmartUpload上传文件</h3>
9: <body>
10: <% //创建一个实例bean
11: com.jspsmart.upload.SmartUpload mySmartUploaad= new com.jspsmart.upload.SmartUpload();
12: mySmartUploaad.initialize(pageContext);
13: //只允许上传doc/pdf/txt类型的文件
Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:308)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.13 logs.
--------------------------------------------------------------------------------