jsp文件下载完整方法
第一种:
就是直接给出下载的地址,这种方式很不好,因为会暴露你的地址,带来很多不安全的因素,可以说是千万不要用这种
第二种:
下载页面
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<html>
<head>
<title>download</title>
</head>
<body>
<a href="xia.jsp?filename=新建文档.txt">新建文档.txt</a>
</body>
</html>
然后编写如下页面
<%@ page contentType="text/html;charset=gbk"%>
<%@ page language="java" import="java.io.*,java.net.*" pageEncoding="gbk"%>
<html>
<head>
<title>test</title>
</head>
<body>
<%
response.setContentType("text/html");
javax.servlet.ServletOutputStream ou = response.getOutputStream();
String filepath="uploadfile/";
String filename=new String(request.getParameter("filename").getBytes("ISO8859_1"),"GB2312").toString();
System.out.println("DownloadFile filepath:" + filepath);
System.out.println("DownloadFile filename:" + filename);
java.io.File file = new java.io.File(filepath + filename);
if (!file.exists()) {
System.out.println(file.getAbsolutePath() + " 文件不存在!");
return;
}
// 读取文件流
java.io.FileInputStream fileInputStream = new java.io.FileInputStream(file);
// 下载文件
// 设置响应头和下载保存的文件名
if (filename != null && filename.length() > 0) {
response.setContentType("application/x-msdownload");
response.setHeader("Content-Disposition", "attachment; filename=" + new String(filename.getBytes("gb2312"),"iso8859-1") + "");
if (fileInputStream != null) {
int filelen = fileInputStream.available();
//文件太大时内存不能一次读出,要循环
byte a[] = new byte[filelen];
fileInputStream.read(a);
ou.write(a);
}
fileInputStream.close();
ou.close();
}
%>
</body>
</html>
第三种方法
使用servlet 首先配置web.xml
<servlet>
<servlet-name>DownloadFile</servlet-name>
<servlet-class>libin123.com.cn.servlet.DownloadFil
相关文档:
在Jsp和jsp中的javabean里面,"/"指的是tomcat所在的根路径,如果是在Windows下就是tomcat所在盘的盘符;而“.”指的是tomcat的bin目录所在的路径。
我猜想这是因为jsp代码都会被tomcat转为Servlet,而Servlet是在tomcat中访问的,所以jvm在运行Servlet时就认为目录是tomcat所在的目录。
Html中的“/&r ......
<%@ page contentType="text/html; charset=gbk" language="java" import="java.sql.*" errorPage="" %>
<%@ page import="java.io.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w ......
image.jsp用于生成数字图片
<%@ page contentType="image/jpeg;charset=gb2312" import="java.awt.*,
java.awt.image.*,java.util.*,javax.imageio.*" %>
<%!
Color getRandColor(int fc,int bc){//给定范围获得随机颜色
Random random = new Rand ......
一、JSP页面显示乱码
二、表单提交中文时出现乱码
三、数据库连接
大家在JSP的开发过程中,经常出现中文乱码的问题,可能一至困扰着您,我现在把我在JSP开发中遇到
的中文乱码的问题及解决办法写出来供大家参考。
一、JSP页面显示乱码
下面的显示页面(display.jsp)就出现乱码:
<html>
<head>
<tit ......
方法一、
login.html
<html>
<head>
<title>用户登录</title>
<meta http-equiv="content-type" content="text/html; charset=gb2312">
</head>
<script language="javascript">
&nbs ......