java 设置自定义文件目录,浏览器可以直接打开该目录下的文件

 

浏览器可以直接打开的文件有html、pdf、xml等,office文件浏览器不能直接打开,若想要在线预览office文件,可以参照我其他的博文,office文件转换为html的实现代码

重写WebMvcConfigurerAdapter类

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;

@Component
@Configuration
public class WebAppConfig extends WebMvcConfigurerAdapter {

@Override
 public void addResourceHandlers(ResourceHandlerRegistry registry) {
  registry.addResourceHandler("/**")
        .addResourceLocations("classpath:/META-INF/resources/")
        .addResourceLocations("classpath:/resources/")
        .addResourceLocations("classpath:/static/")
        .addResourceLocations("classpath:/public/");
        registry.addResourceHandler("/onlineFile/**").addResourceLocations("file:D:/onlinefile/");
        super.addResourceHandlers(registry);
    }
}

上面的D:/onlinefile/就是设置的浏览器可以直接访问的文件路径,其中/onlineFile拼接在url上,浏览器的url:http://localhost:8103/onlineFile/U76bpqN4TWFcwkqg.html,这样就可以直接访问了

 

注意:

今天项目直接打开这个url出问题了,js调用window.open直接打开文件会被浏览器拦截,需要客户端设置允许弹出框不被拦截,对于用户来说体验感不好,而且有些浏览器根本没有拦截提示,在网上查了一下解决方法,各位可参考以下链接:

https://blog.csdn.net/u011159417/article/details/53692536

https://blog.csdn.net/yypsober/article/details/79487217

最简单的解决方法应该是这种:

var tempwindow=window.open('_blank'); // 先打开页面
tempwindow.location='http://www.baidu.com'; // 后更改页面地址
 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值