📄 uploadedit.jsp
字号:
<%@ page contentType="text/html;charset=gb2312" %>
<%@ page language="java" import="java.io.*,java.sql.*,com.jspsmart.upload.*"%>
<jsp:useBean id="mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload" />
<%!
public void SaveFileToRS(java.io.File file,ResultSet rs, String colname) throws IOException
{
try
{
java.io.InputStream inStream=new java.io.FileInputStream(file);
byte[] bytes = new byte[(int)file.length()];
inStream.read(bytes);
inStream.close();
rs.updateBytes(colname,bytes);
}
catch(SQLException e)
{
}
}
%>
<%
// Initialization
mySmartUpload.initialize(pageContext);
// Upload
mySmartUpload.upload();
//取消注释以保存文件
//mySmartUpload.save("/jsp/jspdemo/upload");
String DBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
String ConnStr = "jdbc:odbc:files23jsp";
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try
{
//加载数据库驱动程序
Class.forName(DBDriver);
}
catch(java.lang.ClassNotFoundException e)
{
System.err.println("DBconn (): " + e.getMessage());
}
//与DBMS建立连接
try
{
conn = DriverManager.getConnection(ConnStr);
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
}
catch(SQLException ex)
{
System.err.println("aq.executeQuery: " + ex.getMessage());
}
String docid;
String filename;
String data;
long filesize;
com.jspsmart.upload.File myFile = null;
docid = mySmartUpload.getRequest().getParameter("docid");
System.out.println("docid="+docid);
for (int i=0;i<mySmartUpload.getFiles().getCount();i++)
{
myFile = mySmartUpload.getFiles().getFile(i);
//debug only
System.out.println("File=" + myFile.getFileName());
//处理数据及文件
if (!myFile.isMissing())
{
filename = myFile.getFileName();
filesize = myFile.getSize();
if(myFile.getFieldName().equalsIgnoreCase("EDITFILE") ) //正文文件
{
System.out.println("处理正文文件");
System.out.println("filename="+filename);
System.out.println("filesize="+filesize);
System.out.println("myFile.getFieldName()="+myFile.getFieldName());
data = mySmartUpload.getRequest().getParameter("data");
System.out.println("data="+data);
myFile.saveAs(filename,mySmartUpload.SAVE_PHYSICAL);
//java.io.File tfile = new java.io.File(application.getRealPath(temphtmlpath));
java.io.File tfile = new java.io.File(filename);
try
{
if ( (docid == null)||(docid.length() == 0) ) // new doc
{
System.out.println("New document....");
rs = stmt.executeQuery("select * from MyUploadTable where id=1");
rs.moveToInsertRow(); // moves cursor to the insert row
rs.updateLong("filesize",filesize);
rs.updateString("filename",filename);
rs.updateString("otherdata",data);
// Add the current file in the DB field
//myFile.fileToField(rs,"filedata");
SaveFileToRS(tfile, rs, "filedata");
// insert
rs.insertRow();
}
else // edit doc
{
System.out.println("Edit document id=" +docid );
rs = stmt.executeQuery("select * from MyUploadTable where id="+docid);
if (rs.next())
{
rs.updateLong("filesize",filesize);
rs.updateString("filename",filename);
rs.updateString("otherdata",data);
// Add the current file in the DB field
//myFile.fileToField(rs,"filedata");
SaveFileToRS(tfile, rs, "filedata");
// Update
rs.updateRow();
}
}
out.println("保存成功!<br>");
out.println("在线编辑的文件: " + filename + "<br>");
out.println("大小: " + filesize + " bytes<br>");
}
catch(Exception e)
{
out.println("发生错误: " + e.toString());
}
tfile.delete();
}
else //附件文件
{
try
{
System.out.println("处理附件文件");
System.out.println("filename="+filename);
System.out.println("filesize="+filesize);
System.out.println("myFile.getFieldName()="+myFile.getFieldName());
out.println("其他的文件: " + filename + "<br>");
out.println("大小: " + filesize + " bytes<br>");
}
catch(Exception e)
{
out.println("发生错误: " + e.toString());
}
}
} // end if (!myFile.isMissing())
}// end for
rs.close();
stmt.close();
conn.close();
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -