📄 upload.jsp
字号:
<%@ page contentType="text/html; charset=GB2312" %>
<%@ page import="java.sql.*"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<%@ page import="java.util.regex.*"%>
<%@ page import="com.jspsmart.upload.*"%>
<%@ page import="net.fiyu.edit.RemotePic"%>
<%@ page import="cn.myapps.util.property.DefaultProperty"%>
<jsp:useBean id="date" scope="page" class="net.fiyu.edit.TimeStamp"/>
<%@ page import="net.fiyu.edit.UploadWebHelper,net.fiyu.edit.UploadBean"%>
<%!
// {*[Parameter variable]*}
String sType, sStyleName;
//' {*[Set up variable]*}
String sAllowExt, sUploadDir,sBaseUrl,sContentPath;
int nAllowSize;
//' {*[Interface variable]*}
String sFileExt,sSaveFileName,sOriginalFileName,sPathFileName,FileName, nFileNum;
String sAction;
Connection connect = null;
%>
<%!
/*' ============================================
' {*[Clear HTML box, for retrieving data and put into text box]*}
' 注意:value="?"{*[Double quotation must be used here]*}
' ============================================*/
public String inHTML(String str)
{
String sTemp;
sTemp = str;
if(sTemp.equals(""))
{
System.exit(0);
}
sTemp = sTemp.replaceAll("&", "&");
sTemp = sTemp.replaceAll("<", "<");
sTemp = sTemp.replaceAll(">", ">");
sTemp = sTemp.replaceAll("\"", """);
return sTemp;
}
//{*[Limitation for initial upload]*}
public void InitUpload(String realpath){
UploadWebHelper uw = new UploadWebHelper();
uw.filename = realpath+"WEB-INF/style.xml";
uw.getInstance();
UploadBean bean = uw.InitPara();
try{
sUploadDir = DefaultProperty.getProperty("WEB_UPLOADSPATH");//bean.getSuploaddir();
System.out.println(sUploadDir);
if(sType.equalsIgnoreCase("remote"))
{
sAllowExt = bean.getSremoteext();
sAllowExt = sAllowExt + "|" + sAllowExt.toUpperCase();
nAllowSize = Integer.parseInt(bean.getSremotesize()) ;
System.out.println(sAllowExt+nAllowSize);
}
else if(sType.equalsIgnoreCase("file"))
{
sAllowExt = bean.getSfileext();
sAllowExt = sAllowExt + "|" + sAllowExt.toUpperCase();
nAllowSize = Integer.parseInt(bean.getSfilesize());
System.out.println(sAllowExt+nAllowSize);
}
else if(sType.equalsIgnoreCase("media"))
{
sAllowExt = bean.getSmediaext();
sAllowExt = sAllowExt + "|" + sAllowExt.toUpperCase();
nAllowSize = Integer.parseInt(bean.getSmediasize());
System.out.println(sAllowExt+nAllowSize);
}
else if(sType.equalsIgnoreCase("flash"))
{
sAllowExt = bean.getSflashext();
sAllowExt = sAllowExt + "|" + sAllowExt.toUpperCase();
nAllowSize = Integer.parseInt(bean.getSflashsize());
System.out.println(sAllowExt+nAllowSize);
}
else
{
sAllowExt = bean.getSimageext();
sAllowExt = sAllowExt + "|" + sAllowExt.toUpperCase();
nAllowSize = Integer.parseInt(bean.getSimagesize());
System.out.println(sAllowExt+nAllowSize);
}
}
catch(Exception e){
}
}
%>
<%
//{*[Setup type]*}
sType=request.getParameter("type");
if(sType==null)
{
sType="image";
}
else
sType=request.getParameter("type").trim();
//{*[Select style]*}
sStyleName=request.getParameter("style");
if (sStyleName==null)
{
sStyleName="standard";
}
else
sStyleName=request.getParameter("style").trim();
//{*[Setup action]*}
sAction=request.getParameter("action");
if(sAction==null)
{
sAction="sun";
}
else
sAction=request.getParameter("action").trim();
%>
<%
//{*[Initialize upload parameter]*}
InitUpload(config.getServletContext().getRealPath("/"));
//{*[Shut down database connection]*}
//sAction = UCase(Trim(Request.QueryString("action"))
if(sAction.equalsIgnoreCase("remote"))
{ //{*[auto get remotely]*}
String sContent;
String RemoteFileurl=null;
String Protocol,sUrl;
int Port;
String LocalFileurl=null;
String SrcFileurl=null;
String SaveFileName=null;
sContent=request.getParameter("eWebEditor_UploadText");
if(sContent==null)
{
sContent="sunshanfeng";
}
else
sContent=new String(request.getParameter("eWebEditor_UploadText").getBytes("iso8859-1"));
System.out.println();
System.out.println();
System.out.println();
System.out.println();
System.out.println("{*[Before replacement, the html symbol was]*}:"+"\n"+sContent);
if(sAllowExt!="")
{
Pattern pRemoteFileurl = Pattern.compile("((http|https|ftp|rtsp|mms):(//|\\\\){1}(([A-Za-z0-9_-])+[.]){1,}(net|com|cn|org|cc|tv|[0-9]{1,3})(\\S*/)((\\S)+[.]{1}("+sAllowExt+")))");//{*[Get the regex expression from page url]*}
Matcher mRemoteFileurl = pRemoteFileurl.matcher(sContent);//对传入的字符串进行匹配
Protocol=request.getProtocol();//{*[Get the communication protocol]*}
String ProtocolA[]=Protocol.split("/");//{*[Get the intial letter of protocol name]*},如HTTP/1.1,变为"HTTP","1.1"
sUrl = ProtocolA[0]+"://"+request.getServerName();//取得本地URL{*[Path]*},如http://localhost
//ProtocolA[]=null;
Port=request.getServerPort();//{*[Get port number]*}
if(Port!=80)
{//查{*[If the port number is not 80, append port number at end]*}
sUrl=sUrl+":"+Port;
}
String context=request.getContextPath();
sUrl=sUrl+context+"/"+sUploadDir;
System.out.println(sUrl);
StringBuffer sb=new StringBuffer();
boolean result=mRemoteFileurl.find();
int i=0;
while(result)
{
i++;
RemoteFileurl=mRemoteFileurl.group(0);
System.out.println();
System.out.println();
System.out.println();
System.out.println();
System.out.println("需要替换的远程连接:"+"\n"+RemoteFileurl);
sOriginalFileName=RemoteFileurl.substring(RemoteFileurl.lastIndexOf("/"));
Pattern pFileType=Pattern.compile("[.]{1}("+sAllowExt+")");//二次匹配取得文件的{*[Type]*}
Matcher mFileType=pFileType.matcher(RemoteFileurl);
while(mFileType.find())
{
String SaveFileType=mFileType.group();
LocalFileurl=sUploadDir+(String)date.Time_Stamp()+i+SaveFileType;//文件的{*[Path]*},以时间戳命名
}
String LoadFile=sUploadDir.substring(0,sUploadDir.length()-1); SaveFileName=config.getServletContext().getRealPath("/")+LoadFile+"\\"+LocalFileurl.substring(LocalFileurl.lastIndexOf("/")+1);
System.out.println();
System.out.println();
System.out.println();
System.out.println("远程文件{*[Save]*}的{*[Path]*}和文件名:"+"\n"+SaveFileName);
sSaveFileName=LocalFileurl.substring(LocalFileurl.lastIndexOf("/"));
RemotePic Down=new RemotePic();
Down.picurl=RemoteFileurl;
Down.savepath=SaveFileName;
if (Down.download())//如果上载{*[Save]*}成功,则更换html标记里的文件{*[Path]*}
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -