资源简介
Java 操作Mongodb中存储的文件的实例
代码片段和文件信息
package com.test;
import java.io.File;
import java.io.InputStream;
import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
import org.bson.types.objectId;
import com.mongodb.BasicDBobject;
import com.mongodb.DB;
import com.mongodb.DBCursor;
import com.mongodb.Mongo;
import com.mongodb.gridfs.GridFS;
import com.mongodb.gridfs.GridFSDBFile;
import com.mongodb.gridfs.GridFSInputFile;
/**
* @author: zhengjb09610
* @since: 2014-7-28 下午2:19:36
*/
public class MongoTest {
private static Mongo mg = null;
private static DB db = null;
private static GridFS myFS = null;
@SuppressWarnings(“deprecation“)
public MongoTest(String ip int port String dbName) {
try {
mg = new Mongo(ip port);
db = mg.getDB(dbName);
myFS = new GridFS(db);
} catch (Exception e) {
e.printStackTrace();
}
}
/** 查询MONGODB中的文件集合 */
public void queryGridFS() {
DBCursor cursor = myFS.getFileList();
while (cursor.hasNext())
System.out.println(cursor.next());
}
/** 将本地文件存储到MONGODB中 */
public void saveGridFS(String localPath) {
try {
File f = new File(localPath);
GridFSInputFile inputFile = myFS.createFile(f);
inputFile.save();
System.out.println(“save success!“);
} catch (Exception e) {
e.printStackTrace();
}
}
/** 删除MONGODB中文件 */
public void removeGridFS(String oid) {
myFS.remove(new BasicDBobject(“_id“ new objectId(oid)));
System.out.println(“remove success!“);
}
/** 读取出MONGODB中的文件并存储到本地 */
public void readGridFS(String oid String localPath) {
try {
GridFSDBFile inputFile = myFS.findOne(new BasicDBobject(“_id“
new objectId(oid)));
inputFile.writeTo(localPath);
System.out.println(“save local path.“);
} catch (Exception e) {
e.printStackTrace();
}
}
/** 读取出MONGODB中的文件并存储到远程 */
public void readFTPGridFS(String oid String ip int port String userName
String passwd String destination) {
try {
GridFSDBFile inputFile = myFS.findOne(new BasicDBobject(“_id“
new objectId(oid)));
InputStream is = inputFile.getInputStream();
FTPClient fc = new FTPClient();
fc.connect(ip port);
fc.login(userName passwd);
fc.setBufferSize(1024);
fc.setFileType(FTP.BINARY_FILE_TYPE);
fc.enterLocalPassiveMode();
if (fc.storeFile(new String(destination.getBytes(“GBK“)
“iso-8859-1“) is)) {
System.out.println(“upload success!“);
} else {
System.out.println(“upload false!“);
}
is.close();
fc.logout();
fc.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}
/** 关闭MONGODB连接 */
public void closeMongo() {
mg.close();
}
public static void main(String[] args) {
MongoTest mongodb = new MongoTest(“192.168.83.29“ 27017 “test“);
mongodb.saveGridFS(“E://test.xls“);
mongodb.queryGridFS();
mongodb.readGridFS(“53d5cbe6aaf67ea69090bbb7“ “D://test.xls“);
mongodb.readFTPGridFS(“
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-07-28 14:16 MongoDBTest\
文件 473 2014-07-28 12:19 MongoDBTest\.classpath
文件 387 2014-04-28 14:08 MongoDBTest\.project
目录 0 2014-07-28 14:16 MongoDBTest\.settings\
文件 598 2014-04-28 14:08 MongoDBTest\.settings\org.eclipse.jdt.core.prefs
目录 0 2014-07-28 14:16 MongoDBTest\bin\
目录 0 2014-07-28 14:16 MongoDBTest\bin\com\
目录 0 2014-07-28 14:16 MongoDBTest\bin\com\test\
文件 4536 2014-07-28 14:15 MongoDBTest\bin\com\test\MongoTest.class
目录 0 2014-07-28 14:16 MongoDBTest\lib\
文件 280983 2014-06-06 09:25 MongoDBTest\lib\commons-net-3.3.jar
文件 586605 2014-04-28 13:55 MongoDBTest\lib\mongo-java-driver-2.12.0.jar
目录 0 2014-07-28 14:16 MongoDBTest\src\
目录 0 2014-07-28 14:16 MongoDBTest\src\com\
目录 0 2014-07-28 14:16 MongoDBTest\src\com\test\
文件 3255 2014-07-28 14:15 MongoDBTest\src\com\test\MongoTest.java
- 上一篇:Android activity劫持
- 下一篇:java高校就业管理系统源码
相关资源
- java高校就业管理系统源码
- 基于MyEclipse开发的超市管理系统
- java web静态网页制作代码
- java编写的宠物医院管理系统
- Java语言程序设计课后习题解答+张思民
- java sound 简单播放器代码
- java写的方向键盘控制的简易画图工具
- JAVA编写的驾校在线考试系统
- 象棋游戏java代码
- 支持向量机算法实现Java、python、mat
- JAVA工具模块TBOX
- 广工java文本编辑器课设源代码
- java 模拟进程调度
- java绘制股票走势图
- java,socket聊天,单聊,群聊,传文件
- 在线投票小程序java源代码
- java ajax上传文件并显示进度条
- Java多线程赛马游戏
- jdk-8u221-linux-x64.tar.gz
- javax.servlet-api-3.0.1-sources.jar
- Java版数据结构与算法视频教程(20集
- java-ymodem/xmodem上位机源码
- C4.5决策树Java实现
- 基于JAVA的学生管理系统源代码
- java版网页图片编辑器
- Java从入门到精通第3和4版书+全套光盘
- 清华大学人工智能大作业源码
- java实现k-means算法137342
- 排课表Java源代码
- Java实战项目 - 办公自动化管理系统源
评论
共有 条评论