在做项目的时候经常会碰到上传下载,通常在上传完文件以后会把文件在项目中的相对路径存到数据库以便下载,如果想直接下载文件,不通过后台action,则可以直接把文件路径给a标签的href属性,例如:
点击下载
这样用户在点击这个链接的时候,就会直接下载这个文件,但是这里有个问题,像txt,jpg这些浏览器支持直接打开的文件是不会执行下载的,而是会直接打开。这时候可以给a标签添加一个download属性,例如:
点击下载
download也可以不给值,这样就会使用默认的文件名。
PS:IE貌似不支持这种写法,所以只能通过后台代码。
在jsp中直接用a标签去链接一个文件,点击即可下载这个文件。
但是这个文件的名字如果含有中文的话,tomcat就会报错。
解决办法:
在tomcat中指定url编码即可。
找到tomcat目录中的conf下的server.xml,然后打开,找到端口的配置的标签位置:
然后加上URIEncoding="UTF-8"这个配置,重新启动tomcat即可: