02.Apache FtpServer使用数据库管理用户
1.创建数据库及表
CREATE TABLE FTP_USER (
userid VARCHAR(64) NOT NULL PRIMARY KEY,
userpassword VARCHAR(64),
homedirectory VARCHAR(128) NOT NULL,
enableflag BOOLEAN DEFAULT TRUE,
writepermission BOOLEAN DEFAULT FALSE,
idletime INT DEFAULT 0,
uploadrate INT DEFAULT 0,
downloadrate INT DEFAULT 0,
maxloginnumber INT DEFAULT 0,
maxloginperip INT DEFAULT 0
);
2.修改ftpd-typical.xml
<?xml version="1.0" encoding="UTF-8"?>
<serverxmlns="http://mina.apache.org/ftpserver/spring/v1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:beans="http://www.springframework.org/schema/beans"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://mina.apache.org/ftpserver/spring/v1
http://mina.apache.org/ftpserver/ftpserver-1.0.xsd"
id="myServer">
<listeners>
<!-- 设置默认端口是2121,可以修改为自己的端口 -->
<nio-listenername="default"port="2121">
<ssl>
<keystorefile="./res/ftpserver.jks"password="password"/>
</ssl>
</nio-listener>
</listeners>
<!-- 设置用户配置文件以及,密码是否加密 -->
<!-- <file-user-manager file="./res/conf/users.properties" encrypt-passwords="clear"/> -->
<!-- 设置数据库管理用户 -->
<db-user-managerencrypt-passwords="clear">
<!-- 数据源信息,ftpserver为MySQL数据库名称,root/wch,为用户名以及密码 -->
<data-source>
<beans:beanclass="org.apache.commons.dbcp.BasicDataSource">
<beans:propertyname="driverClassName"value="com.mysql.jdbc.Driver"/>
<beans:propertyname="url"value="jdbc:mysql://127.0.0.1/webframe"/>
<beans:propertyname="username"value="root"/>
<beans:propertyname="password"value="wch"/>
</beans:bean>
</data-source>
<insert-user>
INSERT INTO FTP_USER( userid, userpassword, homedirectory, enableflag, writepermission, idletime, uploadrate, downloadrate )
VALUES ( '{userid}', '{userpassword}', '{homedirectory}', {enableflag}, {writepermission}, {idletime}, {uploadrate}, {downloadrate} )
</insert-user>
<update-user>
UPDATE FTP_USER SET userpassword='{userpassword}',
homedirectory='{homedirectory}',
enableflag={enableflag},
writepermission={writepermission},
idletime={idletime},
uploadrate={uploadrate},
downloadrate={downloadrate}
WHERE userid='{userid}'
</update-user>
<delete-user>
DELETE FROM FTP_USER WHERE userid = '{userid}'
</delete-user>
<select-user>
SELECT userid, userpassword, homedirectory, enableflag,
writepermission, idletime, uploadrate, downloadrate,
maxloginnumber, maxloginperip FROM FTP_USER WHERE userid = '{userid}'
</select-user>
<select-all-users>
SELECT userid FROM FTP_USER ORDER BY userid
</select-all-users>
<is-admin>
SELECT userid FROM FTP_USER WHERE userid='{userid}' AND userid='admin'
</is-admin>
<authenticate>
SELECT userpassword from FTP_USER WHERE userid='{userid}'
</authenticate>
</db-user-manager>
</server>
3.增加依赖的jar文件
4.启动FTPServer
02.Apache FtpServer使用数据库管理用户的更多相关文章
- 利用apache ftpserver搭建ftp服务器
操作环境: win2012r2 x64 datacenter Apache FtpServer 1.2.0 Java SE Development Kit 8u333 commons-dbcp2-2. ...
- Apache FtpServer扩展【动手实现自己的业务】
Apache FtpServer是当下最热门的走ftp协议的用于用户上传下载的服务器. 官网http://mina.apache.org/ftpserver-project/ 一般来说,用的话,去 ...
- 01.Apache FtpServer配置
1.解压Apache FTPServer 将下载下来的压缩包(ftpserver-1.0.6.zip)解压到本地,其目录结构如下图: 2.修改users.properties 修改 \apache-f ...
- apache FtpServer整合spring逻辑处理
上面我们的部署工作完成了,那么文件上传下载后,ftpserver会自动相应我们的上传下载操作,也就是说ftpServer服务器会得到触发,那么我们如果要得到文件的一些信息,比如说文件的路径.大小.类型 ...
- (转载)Windows 上搭建Apache FtpServer
因工作需要,最近经常接触到FTP,今天我来介绍一个开源的FTP服务器,那就是Apache FTPServer,Apache FTPServer是一个100%纯Java的FTP服务器. 它的设计是基于现 ...
- android学习:Android上面部署Apache FTPServer
经过了几天的研究,终于Apache FTPServer在Android的配置和使用上有了一些心得,现在分享出来,提供给大家参考,说到这儿又不得不吐槽一下这要命的转载了,找Apache FTPServe ...
- Windows 上搭建Apache FtpServer
阅读目录 第一步:下载Apache FTPServer 第二步:解压Apache FTPServer 第三步:修改配置文件 第四步:启动FTPServer 第五步:访问FTP 第六步:FTPServe ...
- springboot整合apache ftpserver详细教程(看这一篇就够了)
原创不易,如需转载,请注明出处https://www.cnblogs.com/baixianlong/p/12192425.html,否则将追究法律责任!!! 一.Apache ftpserver相关 ...
- apache FtpServer 整合spring部署
我们在项目中可能会出现这样的需求,使用ftp上传很大的文件后对需要对文件进行相应的逻辑处理,这时我们可以使用apache ftpServer来处理这段逻辑,只要我们做相应的部署和编写我们的逻辑代码,这 ...
随机推荐
- js浏览器各种位置检测
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 将raw里面的数据库文件写入到data中
package com.city.list.db; import java.io.File; import java.io.FileNotFoundException; import java.io. ...
- Windows7下Microsoft Office Excel 不能访问文件解决方案
1).开始--〉运行--〉cmd 2)命令提示符下面,输入mmc -32,打开32的控制台 3).文件菜单中,添加删除管理单元--〉组件服务 4).在"DCOM配置"中找到&quo ...
- Vmware下Ubuntu无法上网的问题
本来这个挺简单的个问题,但是由于很久没有使用虚拟机并且期间实体机网络环境发生了一些变化,导致了一些麻烦. 一般用NAT就行了,就是Vmware右下角那个图标(左起第4个)设置就行. 我这么设置了还是不 ...
- Ubuntu 12.04 添加新用户并启用root登录
启动root sudo passwd 输入密码 输入root 新密码并重复 su 切换root 添加用户比如hduser 修改密码hduserchmod u+w /etc/sudoersvi sudo ...
- NLP自然语言处理学习笔记三(集成开发环境)
前言: 我们在做自然语言学习的过程中使用Python进行编程.是用解析器的方式确实有些麻烦.在这里给大家推荐一款集成开发环境IDE可以很方便的对Python进行项目管理,代码自动提示,运行调试等. 简 ...
- springMVC+jpa配置之简单案例
搭建springMVC+jpa的亲身经历,看着网上的博客,自己摸索着搭建框架结果错误一大堆.现在把流程走一遍,方便以后查看. 其中我遇到这样的一个问题:直接启动tomcat运行保存实体能通过,但是通过 ...
- [原创]PostgreSQL Plus Advince Server在 HA环境中一对多的Stream Replication配置(四)
八.HA环境下配置多节点的sshVIP(s1):[root@s1 ~]# mkdir /opt/PostgresPlus/9.2AS/.ssh[root@s1 ~]# chown enterprise ...
- Python常用内建模块
Python常用内建模块 datetime 处理日期和时间的标准库. 注意到datetime是模块,datetime模块还包含一个datetime类,通过from datetime import da ...
- Redbean:入门(二) - Find
<?php require_once 'rb.php'; $tableName = 'link'; //连接数据库 R::setup('mysql:host=localhost;dbname=h ...