配置CKFinder(Java版)

article/2025/9/16 8:35:16

1. 下载

CKFinder官网下载地址提供了PHP,ASP, Java等不同下载版本。

2. 配置

1)config.xml放到WEB-INF下,

2)其他文件放到Webcontent下,

3)配置web.xml,

xml<!--CKFinder  --><servlet><servlet-name>ConnectorServlet</servlet-name><servlet-class>com.ckfinder.connector.ConnectorServlet</servlet-class><init-param><param-name>XMLConfig</param-name><param-value>/WEB-INF/ckfinder.xml</param-value></init-param><init-param><param-name>debug</param-name><param-value>false</param-value></init-param><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>ConnectorServlet</servlet-name><url-pattern><!--根据ckfinder文件所在文件夹决定,我的ckfinder放到webcontent下的view文件夹下-->/view/ckfinder/core/connector/java/connector.java</url-pattern></servlet-mapping><filter><filter-name>FileUploadFilter</filter-name><filter-class>com.ckfinder.connector.FileUploadFilter</filter-class><init-param><param-name>sessionCookieName</param-name><param-value>JSESSIONID</param-value></init-param><init-param><param-name>sessionParameterName</param-name><param-value>jsessionid</param-value></init-param></filter><filter-mapping><filter-name>FileUploadFilter</filter-name><url-pattern><!--根据ckfinder文件所在文件夹决定,我的ckfinder放到webcontent下的view文件夹下-->/view/ckfinder/core/connector/java/connector.java</url-pattern></filter-mapping><!-- Userfiles download --><servlet><servlet-name>UserfilesDownloadServlet</servlet-name><!--文件下载需要对应后台的Servlet--><servlet-class>com.ckfinder.UserfilesDownloadServlet</servlet-class></servlet><servlet-mapping><servlet-name>UserfilesDownloadServlet</servlet-name><!--此处由config.xml的baseURl决定路径--><url-pattern>/userfiles/*</url-pattern></servlet-mapping>

4) 配置config.xml

xml<config><enabled>true</enabled><baseDir></baseDir><baseURL>/userfiles/</baseURL><licenseKey></licenseKey><licenseName></licenseName><imgWidth>1024</imgWidth><imgHeight>768</imgHeight><imgQuality>80</imgQuality><uriEncoding>UTF-8</uriEncoding><forceASCII>false</forceASCII><disallowUnsafeCharacters>false</disallowUnsafeCharacters><userRoleSessionVar>CKFinder_UserRole</userRoleSessionVar><checkDoubleExtension>true</checkDoubleExtension><checkSizeAfterScaling>true</checkSizeAfterScaling><secureImageUploads>true</secureImageUploads><htmlExtensions>html,htm,xml,js</htmlExtensions><hideFolders><folder>.svn</folder><folder>CVS</folder></hideFolders><hideFiles><file>.*</file></hideFiles><defaultResourceTypes></defaultResourceTypes><types><type name="Files"><!--java-util是我的项目工程名--><url>/java-util%BASE_URL%files/</url><directory>%BASE_DIR%files</directory><maxSize>5M</maxSize><allowedExtensions>7z,aiff,asf,avi,bmp,csv,doc,docx,fla,flv,gif,gz,gzip,jpeg,jpg,mid,mov,mp3,mp4,mpc,mpeg,mpg,ods,odt,pdf,png,ppt,pptx,pxd,qt,ram,rar,rm,rmi,rmvb,rtf,sdc,sitd,swf,sxc,sxw,tar,tgz,tif,tiff,txt,vsd,wav,wma,wmv,xls,xlsx,zip</allowedExtensions><deniedExtensions></deniedExtensions></type><type name="Images"><url>%BASE_URL%images/</url><directory>%BASE_DIR%images</directory><maxSize>0</maxSize><allowedExtensions>bmp,gif,jpeg,jpg,png</allowedExtensions><deniedExtensions></deniedExtensions></type><type name="Flash"><url>%BASE_URL%flash/</url><directory>%BASE_DIR%flash</directory><maxSize>0</maxSize><allowedExtensions>swf,flv</allowedExtensions><deniedExtensions></deniedExtensions></type></types><accessControls><accessControl><role>*</role><resourceType>*</resourceType><folder>/</folder><folderView>true</folderView><folderCreate>true</folderCreate><folderRename>true</folderRename><folderDelete>true</folderDelete><fileView>true</fileView><fileUpload>true</fileUpload><fileRename>true</fileRename><fileDelete>true</fileDelete></accessControl></accessControls><thumbs><enabled>true</enabled><url>%BASE_URL%_thumbs/</url><directory>%BASE_DIR%_thumbs</directory><directAccess>false</directAccess><maxHeight>100</maxHeight><maxWidth>200</maxWidth><quality>80</quality></thumbs><plugins><plugin><name>imageresize</name><class>com.ckfinder.connector.plugins.ImageResize</class><params><param name="smallThumb" value="90x90"></param><param name="mediumThumb" value="120x120"></param><param name="largeThumb" value="180x180"></param></params></plugin><plugin><name>fileeditor</name><class>com.ckfinder.connector.plugins.FileEditor</class><params></params></plugin></plugins><basePathBuilderImpl>com.ckfinder.connector.configuration.ConfigurationPathBuilder</basePathBuilderImpl>
</config>

5)后台下载文件需要的Servlet

javapackage com.ckfinder;import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.UnsupportedEncodingException;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.util.FileCopyUtils;
import org.springframework.web.util.UriUtils;import com.ckfinder.connector.ServletContextFactory;/*** 查看CK上传的图片* @author ThinkGem* @version 2014-06-25*/
public class UserfilesDownloadServlet extends HttpServlet {private static final long serialVersionUID = 1L;private Logger logger = LoggerFactory.getLogger(getClass());private String USERFILES_BASE_URL = "/userfiles/";public void fileOutputStream(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {String filepath = req.getRequestURI();int index = filepath.indexOf(USERFILES_BASE_URL);if(index >= 0) {filepath = filepath.substring(index + USERFILES_BASE_URL.length());}try {filepath = UriUtils.decode(filepath, "UTF-8");} catch (UnsupportedEncodingException e1) {logger.error(String.format("解释文件路径失败,URL地址为%s", filepath), e1);}File file = new File(getUserfilesBaseDir() + USERFILES_BASE_URL + filepath);try {FileCopyUtils.copy(new FileInputStream(file), resp.getOutputStream());resp.setHeader("Content-Type", "application/octet-stream");return;} catch (FileNotFoundException e) {req.setAttribute("exception", new FileNotFoundException("请求的文件不存在"));req.getRequestDispatcher("/WEB-INF/views/error/404.jsp").forward(req, resp);}}private String getUserfilesBaseDir() {String path = "";try {path = ServletContextFactory.getServletContext().getRealPath("/");} catch (Exception e) {e.printStackTrace();}return path;}@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {fileOutputStream(req, resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {fileOutputStream(req, resp);}
}

6) jar包引入
方法一:pom.xml

xml
<!-- CKFinder begin --><dependency><groupId>net.coobird</groupId><artifactId>thumbnailator</artifactId><version>0.4.2</version></dependency><dependency><groupId>com.ckfinder</groupId><artifactId>apache-ant-zip</artifactId><version>2.3</version></dependency><dependency><groupId>com.ckfinder</groupId><artifactId>ckfinder</artifactId><version>2.3</version></dependency><dependency><groupId>com.ckfinder</groupId><artifactId>ckfinderplugin-fileeditor</artifactId><version>2.3</version></dependency><dependency><groupId>com.ckfinder</groupId><artifactId>ckfinderplugin-imageresize</artifactId><version>2.3</version></dependency><!-- CKFinder end -->

方法二:
URL链接,jar包下载

运行

运行ckfinder文件夹下–>_samples–>standalone.html文件,出现下面界面。

OK!

附录

去除CKFinder界面中的水印方法


http://chatgpt.dhexx.cn/article/9DrmiAlX.shtml

相关文章

CKEditor/FCKEditor 使用-集成 CKFinder(上传文件、浏览文件)

CKFinder 也是 CK 系列的产品之一&#xff0c;它有两个功能&#xff1a;上传文件、浏览文件。一般来说&#xff0c;它是集成在 CKEditor 或 FCKEditor 中&#xff0c;以便在编辑器中插入超链接或图像时可以直接上传&#xff0c;也可通过浏览直接插入编辑器中。并且 CKFinder 提…

CKEditor与CKFinder学习--安全的使用CKFinder与权限控制

0 前言 上一篇博客中说了ckeditor与ckfinder整合之后进行图文混排的时候通过浏览服务器按钮可以浏览服务器上的所有资源&#xff0c;文件&#xff0c;图片&#xff0c;该用户上传的&#xff0c;非该用户上传的&#xff0c;不仅可以查看&#xff0c;还可以删除、重命名等。所以…

CKEditor和CKFinder及CKEditor配置属性说明

最近在做一个新闻发布平台&#xff0c;放弃了很早的FCKEditor&#xff0c;使用CKEditor和CKFinder&#xff0c;尽管免费的CKFinder是Demo版本&#xff0c;但是功能完整&#xff0c;而且用户都是比较集中精神发新闻的人&#xff0c;不会在意这个。按照官网的document一步一步配置…

ckfinder--如何去掉版本提示This is the demo version of CKFinder

最近用到ckfinder作为文件管理集成到项目当中使用&#xff0c;但是发下从官网下载来的java版本的ckfinder插件&#xff0c;跑起项目起来发现提示信息This is the demo version of CKFinder&#xff0c;于是就在网上查找各种资料&#xff0c;有各种不同版本的解释&#xff0c;而…

CKFinder 介绍

<转载:http://baike.baidu.com/view/3565650.htm#1> CKFinder 简介 CKFinder是一个强大而易于使用的Web浏览器的Ajax文件管理器。 其简单的界面使得它直观&#xff0c;快速学习的各类用户&#xff0c;从高级人才到互联网初学者。 特点 文件夹树导航 &#xff1a;用户直…

CKEditor与CKFinder学习--整合SpringMVC

先来看一下效果 这个是我采用了office2013的皮肤&#xff0c;并对界面按钮做了优化后的效果 这个是bootstrap的皮肤&#xff0c;好了&#xff0c;开始进入正题。 第一步 下载 下载ckeditor和ckfinder ckeditor Full Package版本 http://download.cksource.com/CKEditor/CK…

CKEditor/CKFinder一些特殊配置

这几天把一个旧项目中的fckeditor升级为ckeditor 3.2 ckfinder 1.4.3 组合&#xff0c;下面是一些升级心得: 一、CKFinder的若干问题 1.单独使用ckfinder从原fckeditor分离出来以后可以单独使用&#xff0c;通常我习惯于在工具栏中添加ckfinder.dll&#xff0c;这样以后要使用…

ckfinder使用

ckeditor环境搭建 &#xff0c;请参考 JSP中使用CKEditor3.6入门教程 JSP页面使用富文本控件ckeditor提交表单数据 JSP页面使用富文本控件ckeditor自定义样式 JSP使用ckeditor和ckfinder实现富文本及上传功能 源码下载 一、下载 ckeditor下载地址为&#xff1a;http://ckedito…

ckeditor和ckfinder集成详细配置及其优化

1、下载文件目录结构分析 ckeditor和ckfinder的下载网址分别是&#xff1a; ckeditor&#xff1a;http://ckeditor.com/ ckfinder&#xff1a;http://cksource.com/ckfinder 下载下来后的目录结构&#xff1a; ckeditor&#xff1a; 精简&#xff1a; 1.samples文件夹&am…

CKEditor&ckfindtor

前言 之前的项目中一直使用的是FCKeditor&#xff0c;昨天突然有个想法&#xff1a;为什么不试一下新的CKEditor呢&#xff1f;于是花了大半天的时间去学习它的用法&#xff0c;现在把我的学习过程与大家分享一下。 谈起FCKeditor&#xff0c;相信没几个Web程序员不知道的吧。不…

在JSP里使用CKEditor和CKFinder

在JSP里使用CKEditor和CKFinder 最近在做一个新闻发布平台&#xff0c;放弃了很早的FCKEditor&#xff0c;使用CKEditor和CKFinder&#xff0c;尽管免费的CKFinder是Demo版本&#xff0c;但是功能完整&#xff0c;而且用户都是比较集中精神发新闻的人&#xff0c;不会在意这个。…

ckfinder2上传绕过漏洞

CKFinder 是国外一款非常流行的所见即所得文字编辑器,其1.4.3 asp.net版本存在任意文件上传漏洞,攻击者可以利用该漏洞上传任意文件。ckfinder2上传绕过漏洞, CKFinder在上传文件的时候,强制将文件名(不包括后缀)中点号等其他字符转为下划线_,但是在修改文件名时却没有任何…

Ckeditor5 整合Ckfinder3 防出错实战教程(二)整合篇

Ckeditor5 整合Ckfinder3 防出错实战教程&#xff08;二&#xff09;文件图片上传和管理 自从写了 Ckeditor5完全开发指南教程&#xff08;一&#xff09;后&#xff0c;很多码友都说不错&#xff0c;一直说更新呢&#xff0c;也没时间&#xff0c;慢慢忘了&#xff0c; 今天突…

思科路由器修改密码

第一步&#xff1a;重启路由器 #表示进度 &#xff0c;在60秒内切换到CLI&#xff0c;在重启之前完成ctrlc进入ROM模式&#xff08;窗口如下所示&#xff09; 第二步&#xff1a;自动重启路由器 输入 rommon1> confreg 0x2142 忽略NARAM中的配置文件 rommon2> reset 重…

没有一个绝对安全的系统 (二) 破解路由器后台密码

此教程只为分享&#xff0c;请勿用于其它用途 在学习黑客的道路&#xff0c;好难走啊&#xff0c;一堆乱七八糟的资料 还是翻墙出去学吧 有时间补一期 kali linux 破解 wifi 密码以及 使用 mac 破解wifi 的教程 破解路由器后台&#xff08;mac os&#xff09; 1. 安装 hy…

计算机网络实验如何设置无线路由器密码,怎么设置路由器密码 路由器设置密码方法【图文】...

随着互联网的不断发展&#xff0c;和智能手机的出现&#xff0c;连接电脑与手机的桥梁路由器诞生了&#xff0c;那么大家对路由器有多少了解呢?知道它是用来做什么的?其实路由器是连接因特网的一种设备&#xff0c;它可以把一些网络数据分发到智能手机上&#xff0c;让智能手…

获取路由器后台账号密码

获取路由器后台账号密码 偶然发现的路由器的漏洞 网站目录&#xff1a; 我是先分析他登陆按钮的事件 <input type"submit" name"login" class"button3" value"登录" onclick"return check();">return check(); &a…

华硕Android原始密码,华硕路由器默认密码是多少?ASUS路由器初始密码介绍

华硕路由器的默认初始密码是所有入手华硕路由器的伙伴们需要知道的&#xff0c;不知道华硕无线路由器默认密码是无法设置使用华硕路由器的&#xff0c;那么&#xff0c;华硕路由器默认密码是多少呢&#xff1f;对此&#xff0c;本文就为大家详细介绍华硕路由器初始密码&#xf…

无线路由器服务器密码忘记了怎么办,忘了路由器密码怎么进行ip设置

忘了路由器密码怎么进行ip设置 方法1 1点击屏幕右下角的网络连接的图标打开网络和共享中心。 2打开本地连接或无线网络连接。 3点击详细信息。 4里面的IPv4 默认网关 和 IPv4 DHCP 服务器 里的内容就是无线路由器的IP了 方法2 1还有一种方法也可以看到 而且很快捷。那就是利用c…