赞
踩
gitee上kkFIleView项目使用spring boot打造文件文档在线预览项目解决方案
gitee开源项目:https://gitee.com/wyshp08/file-online-preview
下载地址:https://gitee.com/kekingcn/file-online-preview/releases
下载最新版发行包
解压kkFileView-2.x.x.zip包
打开解压后文件夹的bin目录,运行startup脚本(Windows下以管理员身份运行startup.bat
,Linux以root用户运行startup.sh
)
浏览器访问本机8012端口 http://127.0.0.1:8012 即可看到项目演示用首页
配置文件application.properties在config目录下
#######################################不可动态配置,需要重启生效####################################### server.port = ${KK_SERVER_PORT:8012} server.context-path = ${KK_CONTEXT_PATH:/} spring.http.encoding.charset = utf8 ## Freemarker 配置 spring.freemarker.template-loader-path = classpath:/web/ spring.freemarker.cache = false spring.freemarker.charset = UTF-8 spring.freemarker.check-template-location = true spring.freemarker.content-type = text/html spring.freemarker.expose-request-attributes = true spring.freemarker.expose-session-attributes = true spring.freemarker.request-context-attribute = request spring.freemarker.suffix = .ftl server.tomcat.uri-encoding = UTF-8 #文件上传限制 spring.http.multipart.max-request-size=500MB spring.http.multipart.max-file-size=500MB #文件资源路径(默认为打包根路径下的file目录下) #file.dir = D:\\kkFileview\\ file.dir = ${KK_FILE_DIR:default} #openoffice home路径 #office.home = C:\\Program Files (x86)\\OpenOffice 4 office.home = ${KK_OFFICE_HOME:default} #缓存实现类型,不配默认为内嵌RocksDB(type = default)实现,可配置为redis(type = redis)实现(需要配置spring.redisson.address等参数)和 JDK 内置对象实现(type = jdk), cache.type = ${KK_CACHE_TYPE:jdk} #redis连接,只有当cache.type = redis时才有用 spring.redisson.address = ${KK_SPRING_REDISSON_ADDRESS:127.0.0.1:6379} spring.redisson.password = ${KK_SPRING_REDISSON_PASSWORD:123456} #缓存是否自动清理 true 为开启,注释掉或其他值都为关闭 cache.clean.enabled = ${KK_CACHE_CLEAN_ENABLED:true} #缓存自动清理时间,cache.clean.enabled = true时才有用,cron表达式,基于Quartz cron cache.clean.cron = ${KK_CACHE_CLEAN_CRON:0 0 3 * * ?} #######################################可在运行时动态配置####################################### #提供预览服务的地址,默认从请求url读,如果使用nginx等反向代理,需要手动设置 #base.url = https://file.keking.cn base.url = ${KK_BASE_URL:default} #信任站点,多个用','隔开,设置了之后,会限制只能预览来自信任站点列表的文件,默认不限制 #trust.host = file.keking.cn,kkfileview.keking.cn trust.host = ${KK_TRUST_HOST:default} #是否启用缓存 cache.enabled = ${KK_CACHE_ENABLED:true} #文本类型,默认如下,可自定义添加 simText = ${KK_SIMTEXT:txt,html,htm,asp,jsp,xml,json,properties,md,gitignore,log,java,py,c,cpp,sql,sh,bat,m,bas,prg,cmd} #多媒体类型,默认如下,可自定义添加 media = ${KK_MEDIA:mp3,wav,mp4,flv} #office类型文档(word ppt)样式,默认为图片(image),可配置为pdf(预览时也有按钮切换) office.preview.type = ${KK_OFFICE_PREVIEW_TYPE:image} #是否禁止下载转换生成的pdf文件 pdf.download.disable = ${KK_PDF_DOWNLOAD_DISABLE:true} #预览源为FTP时 FTP用户名,可在ftp url后面加参数ftp.username=ftpuser指定,不指定默认用配置的 ftp.username = ${KK_FTP_USERNAME:ftpuser} #预览源为FTP时 FTP密码,可在ftp url后面加参数ftp.password=123456指定,不指定默认用配置的 ftp.password = ${KK_FTP_PASSWORD:123456} #预览源为FTP时, FTP连接默认ControlEncoding(根据FTP服务器操作系统选择,Linux一般为UTF-8,Windows一般为GBK),可在ftp url后面加参数ftp.control.encoding=UTF-8指定,不指定默认用配置的 ftp.control.encoding = ${KK_FTP_CONTROL_ENCODING:UTF-8} #水印内容 #例:watermark.txt = ${WATERMARK_TXT:凯京科技内部文件,严禁外泄} #如需取消水印,内容设置为空即可,例:watermark.txt = ${WATERMARK_TXT:} watermark.txt = ${WATERMARK_TXT:} #水印x轴间隔 watermark.x.space = ${WATERMARK_X_SPACE:10} #水印y轴间隔 watermark.y.space = ${WATERMARK_Y_SPACE:10} #水印字体 watermark.font = ${WATERMARK_FONT:微软雅黑} #水印字体大小 watermark.fontsize = ${WATERMARK_FONTSIZE:18px} #水印字体颜色 watermark.color = ${WATERMARK_COLOR:black} #水印透明度,要求设置在大于等于0.005,小于1 watermark.alpha = ${WATERMARK_ALPHA:0.2} #水印宽度 watermark.width = ${WATERMARK_WIDTH:180} #水印高度 watermark.height = ${WATERMARK_HEIGHT:80} #水印倾斜度数,要求设置在大于等于0,小于90 watermark.angle = ${WATERMARK_ANGLE:10}
默认文件路径在打包根路径下的file目录下,file.dir参数调节
默认清除缓存时间为一天
代码调用
var url = 'http://127.0.0.1:8080/file/test.txt'; //要预览文件的访问地址
window.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(url));
完整链接
http://ip:8012/onlinePreview?url=http://ip:8012/+(子目录)+文件名
使用示例
application.properties配置文件
#访问文档路径
file.dir = /root/
文档存储路径
[root@localhost fileTest]# pwd
/root/fileTest
[root@localhost fileTest]# ll
总用量 2312
-rw-r--r--. 1 root root 2366545 11月 4 18:46 test.pdf
`
文档存储路径
[root@localhost fileTest]# pwd
/root/fileTest
[root@localhost fileTest]# ll
总用量 2312
-rw-r--r--. 1 root root 2366545 11月 4 18:46 test.pdf
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。