JspSmartUpload上傳常見問題解析_JSP教程
推薦:JSP上傳文件的兩種實(shí)現(xiàn)方法(含詳細(xì)代碼)以前用cos作文件上傳,但是對(duì)于文件上傳后的改名還需要借助其他的工具。 摘錄如下: 在用Java開發(fā)企業(yè)器系統(tǒng)的使用,特別是涉及到與辦公相關(guān)的軟件開發(fā)的時(shí)候,文件的上傳是客戶經(jīng)常要提到的要求.因此有 一套很好文件上傳的解決辦法也能方便大家在這一塊的開發(fā).
因?yàn)槭诸^的項(xiàng)目需要 上傳圖片,初次才用比較流行的jspSmartUpload上傳。
畢竟沒有搞過,弄了一個(gè)下午,終于將碰到的問題搞定了。
第一個(gè)問題,表單設(shè)置:method="post",ENCTYPE="multipart/form-data",只能這樣
第二個(gè)問題,不能通過request.getParameter()取得取得其他的表單字段值,只能通過SmartUpload.getRequest().getParameter("")取得,否則得到的值始終為null
第三,SmartUpload.getRequest().getParameter("")中如果取得中文轉(zhuǎn)馬方式為
String name=new String(su.getRequest().getParameter("name").getBytes(),"UTF-8");
這是我試了許多方式,唯一正確的
第四 ,取得其他表單字段的值必要在 // 新建一個(gè)SmartUpload對(duì)象
SmartUpload su = new SmartUpload();
后面完成,否則出錯(cuò)
相關(guān)代碼入下:希望對(duì)大家有所幫組
upload.jsp
<%@ page language="java" pageEncoding="UTF-8" import="java.sql.*,com.jspsmart.upload.*"%>
<jsp:useBean id="date" scope="request" class="util.DateAndTime"/>
<jsp:useBean id="data" scope="request" class="util.DataConnection"/>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html:html locale="true">
<head>
<html:base />
<title>upload.jsp</title>
<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">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<%
// 新建一個(gè)SmartUpload對(duì)象
// 新建一個(gè)SmartUpload對(duì)象
SmartUpload su = new SmartUpload();
// 上傳初始化
su.initialize(pageContext);
// 設(shè)定上傳限制
// 1.限制每個(gè)上傳文件的最大長度。
su.setMaxFileSize(10000);
// 2.限制總上傳數(shù)據(jù)的長度。
su.setTotalMaxFileSize(10000);
// 3.設(shè)定允許上傳的文件(通過擴(kuò)展名限制),僅允許doc,txt文件。
su.setAllowedFilesList("gif,jpeg,jpg");
// 4.設(shè)定禁止上傳的文件(通過擴(kuò)展名限制),禁止上傳帶有exe,bat,jsp,htm,html擴(kuò)展名的文件和沒有擴(kuò)展名的文件。
su.setDeniedFilesList("exe,bat,jsp,htm,html,asp,php,xml,xhtml");
// 上傳文件
su.upload();
// 將上傳文件全部保存到指定目錄
su.save("/upload");
String pathname=null;
String name=new String(su.getRequest().getParameter("name").getBytes(),"UTF-8");
String link=su.getRequest().getParameter("link");
for(int i=0;i<su.getFiles().getCount();i++)
{
com.jspsmart.upload.File file = su.getFiles().getFile(i);
if(file.isMissing()){
continue;
}
pathname=file.getFileName();
}
String ptime=date.getDate2();
String sql="insert into link(path,content,type,ptime,hotlink)values('"+pathname+"','"+name+"','1','"+ptime+"','"+link+"')";
int ac=data.executeOperate(sql);
if(ac==1)
{
out.println("<script>alert('發(fā)布成功!');</script>");
out.println("<script>window.location='uplink.jsp';</script>");
}
%>
</body>
</html:html>
來源:CSDN
分享:JSP調(diào)用SQL server 2000存儲(chǔ)過程1.新建表: CREATE TABLE [mytest] ( [id] [int] NOT NULL , [name] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL , [phone] [varchar] (13) COLLATE Chinese_PRC_CI_AS NULL , [addr] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ) ON [PRIMARY]
- jsp response.sendRedirect不跳轉(zhuǎn)的原因分析及解決
- JSP指令元素(page指令/include指令/taglib指令)復(fù)習(xí)整理
- JSP腳本元素和注釋復(fù)習(xí)總結(jié)示例
- JSP FusionCharts Free顯示圖表 具體實(shí)現(xiàn)
- 網(wǎng)頁模板:關(guān)于jsp頁面使用jstl的異常分析
- JSP頁面中文傳遞參數(shù)使用escape編碼
- 基于jsp:included的使用與jsp:param亂碼的解決方法
- Java Web項(xiàng)目中連接Access數(shù)據(jù)庫的配置方法
- JDBC連接Access數(shù)據(jù)庫的幾種方式介紹
- 網(wǎng)站圖片路徑的問題:絕對(duì)路徑/虛擬路徑
- (jsp/html)網(wǎng)頁上嵌入播放器(常用播放器代碼整理)
- jsp下顯示中文文件名及絕對(duì)路徑下的圖片解決方法
JSP教程Rss訂閱編程教程搜索
JSP教程推薦
- Servlet和Filter的url匹配url-pattern
- 選擇JSF不選Struts的十大理由
- 解決jsp重復(fù)提交
- Apache Tomcat 5.5部署jsp項(xiàng)目總結(jié)之——jsp連接數(shù)據(jù)庫
- Java Web項(xiàng)目中連接Access數(shù)據(jù)庫的配置方法
- 使用靜態(tài)類實(shí)現(xiàn)JSP自定義標(biāo)簽
- 如何學(xué)習(xí)JSP
- JSP頁面自動(dòng)生成html頁面或任何格式頁面
- struts2中action實(shí)現(xiàn)ModelDriven后無法返回json的解決方法
- JSP上傳圖片產(chǎn)生 java.io.IOException: Stream closed異常解決方法
- 相關(guān)鏈接:
- 教程說明:
JSP教程-JspSmartUpload上傳常見問題解析。