Jsp 下载远程文件至服务器
我是在以下这两种情况下使用到这个文件的:
当你需要向服务器上传一个文件,但是这个文件并不在你的本机上,而且在另一台服务器上,但是你又没有本台服务器的远程桌面的权限让它去下载那个文件,这时你就可以使用此文件去下载。
二就是目标服务器的上传速度非常的慢,于是我将文件先传到了另一台上传速度较快的服务器上,然后让目标服务器利用这个文件去那台速度较快的服务器下载。。
记得以前的黑客杂志上总是写着那群人们在上传文件到要入侵的服务器的时候就是利用的类似的方法。只不过用的是VBS居多。
下面两个都可以用,就是显示的效果不一样。。
01.<%@page pageEncoding="utf-8" import="java.io.*,java.net.*"%>
02.<HTML>
03.<HEAD>
04.<SCRIPT TYPE="text/javascript">
05. var dataSize = 0;
06. function update(total) {
07. document.body.innerHTML = "已下载"+total+"/"+dataSize+"字节!";
08. }
09.</SCRIPT>
10.</HEAD>
11.<BODY>
12.<%
13.try {
14. String downFileUrl = request.getParameter("url"); //要下载的文件的URL。
15. String savePath = request.getParameter("savepath"); //要另存为的路径
16. String fileName = request.getParameter("filename"); //要另存为的文件名
17.
18. fileName = fileName != null ? fileName : downFileUrl.substring(downFileUrl.lastIndexOf("/") + 1); //取文件名
19. savePath = (savePath) != null ? savePath + "/" + fileName : application.getRealPath("") + "/" + fileName; //取保存路径的绝对地址
20.
21. URL downUrl = new URL(downFileUrl);
22. URLConnection conn = downUrl.openConnection();
23.
24. int dataSize = conn.getContentLength(); //取得要下载的数据的长度
25. out.println("<SCRIPT>dataSize = "+dataSize+";</SCRIPT>");
26.
27. BufferedInputStream in = new BufferedInputStream(conn.getInputStream());
28. BufferedOutputStream outS = new BufferedOutputStream(new FileOutputStream(new File(savePath)));
29.
30. byte[] data = new byte[1024];
31. long total = 0;
32.
相关文档:
Servlet三个要素:
1.必须继承自HttpServlet
2.必须实现doGet()或者doPost()
3.必须在web.xml中配置Servlet
<servlet>
<servlet-name> </servlet-name>
<servlet-class> </servlet-class>
</servlet>
<servlet-mapping>
<servlet-name> </servlet-nam ......
以下为在jsp页面javascript实现方式:
如果需要设置地址供用户下载使用
1. 需要导入jspSmartUpload.jar包。
2. 在页面添加<%@ page import=”com..jspsmart.upload.*”%>
function createOCX()
{
try
{
//创建ActiveXobject对象时传入插件的VersionIndependProgID
//此处判断系统中是否安装meid ......
Servlet:
当然,在servlet中,一般跳转都发生在doGet, doPost等方法里面。
一、原理
1) redirect 方式
response.sendRedirect("/a.jsp");
页面的路径是相对路径。sendRedirect可以将页面跳转到任何页面,不一定局限于本web应用中,如:
response.sendRedirect("http://www.ycul ......
这几天做了一个项目,大量用到了JSP与 servlet之间的传值,所以总结了一下
JSP与 servlet之间的传值有两种情况:JSP -> servlet, servlet -> JSP。
通过对象 request和 session (不考虑 application)完成传值。
一、JSP -> servlet
JSP页面有3种方法向 servlet传值: form表单、URL 、其他
<!--&nbs ......