MogileFS与spring结合
一、通过Maven添加MogileFS的Java客户端驱动包
<dependency>
<groupId>fm.last</groupId>
<artifactId>moji</artifactId>
<version>1.4.</version>
</dependency>
二、配置Bean
<bean id="moji" class="fm.last.moji.spring.SpringMojiBean">
<property name="addressesCsv" value="192.168.174.104:7001" />
<property name="domain" value="c1" />
<property name="maxActive" value="" />
<property name="maxIdle" value="" />
<property name="testOnBorrow" value="true" />
</bean>
三、常用API
3.1 上传或者覆盖服务器上的文件
MojiFile mojiFile = moji.getFile("k2");
moji.copyToMogile(new File("test.txt"), mojiFile);
3.2 当然也可以指定类名,如:
MojiFile mojiFile = moji.getFile("k2“,”c1”);
3.3 从服务器上下载获取文件
mojiFile.copyToFile(new File(“myTest.txt"));
3.4 删除服务器上的文件
mojiFile.delete();
3.5 修改服务器上的文件名字
mojiFile.rename("newName");
3.6 获得服务器上文件的大小
mojiFile.length()
3.7 检查服务器上文件是否存在
if(mojiFile.exists()){……}
3.8 修改服务器上文件的类别
mojiFile.modifyStorageClass("new Class");
3.9 对文件key进行前缀模糊查询
List<MojiFile> files = moji.list("k");
for(MojiFile file : files) {
System.out.println("file=="+file);
} 可
以指定取出几个来,如:
List<MojiFile> files = moji.list("k",)
3.10 获取文件的url路径
mojiFile.getPaths()
3.11 流式上传文件到服务器
OutputStream out = null;
try {
out = mojiFile.getOutputStream();
out.write("only test file".getBytes());
out.flush();
} finally {
out.close();
}
3.12 流式从服务器下载文件
InputStream in = null;
try {
in = mojiFile.getInputStream();
byte[] bs = new byte[in.available()];
in.read(bs);
System.out.println("the content===="+new String(bs));
} finally {
in.close();
}
MogileFS与spring结合的更多相关文章
- 基于spring注解AOP的异常处理
一.前言 项目刚刚开发的时候,并没有做好充足的准备.开发到一定程度的时候才会想到还有一些问题没有解决.就比如今天我要说的一个问题:异常的处理.写程序的时候一般都会通过try...catch...fin ...
- 玩转spring boot——快速开始
开发环境: IED环境:Eclipse JDK版本:1.8 maven版本:3.3.9 一.创建一个spring boot的mcv web应用程序 打开Eclipse,新建Maven项目 选择quic ...
- Spring基于AOP的事务管理
Spring基于AOP的事务管理 事务 事务是一系列动作,这一系列动作综合在一起组成一个完整的工作单元,如果有任何一个动作执行失败,那么事务 ...
- [Spring]IoC容器之进击的注解
先啰嗦两句: 第一次在博客园使用markdown编辑,感觉渲染样式差强人意,还是github的样式比较顺眼. 概述 Spring2.5 引入了注解. 于是,一个问题产生了:使用注解方式注入 JavaB ...
- 学习AOP之透过Spring的Ioc理解Advisor
花了几天时间来学习Spring,突然明白一个问题,就是看书不能让人理解Spring,一方面要结合使用场景,另一方面要阅读源代码,这种方式理解起来事半功倍.那看书有什么用呢?主要还是扩展视野,毕竟书是别 ...
- 学习AOP之深入一点Spring Aop
上一篇<学习AOP之认识一下SpringAOP>中大体的了解了代理.动态代理及SpringAop的知识.因为写的篇幅长了点所以还是再写一篇吧.接下来开始深入一点Spring aop的一些实 ...
- 学习AOP之认识一下Spring AOP
心碎之事 要说知道AOP这个词倒是很久很久以前了,但是直到今天我也不敢说非常的理解它,其中的各种概念即抽象又太拗口. 在几次面试中都被问及AOP,但是真的没有答上来,或者都在面上,这给面试官的感觉就是 ...
- 为什么做java的web开发我们会使用struts2,springMVC和spring这样的框架?
今年我一直在思考web开发里的前后端分离的问题,到了现在也颇有点心得了,随着这个问题的深入,再加以现在公司很多web项目的控制层的技术框架由struts2迁移到springMVC,我突然有了一个新的疑 ...
- Spring之旅(2)
Spring简化Java的下一个理念:基于切面的声明式编程 3.应用切面 依赖注入的目的是让相互协作的组件保持松散耦合:而AOP编程允许你把遍布应用各处的功能分离出来形成可重用的组件. AOP面向切面 ...
随机推荐
- linux内核中#if IS_ENABLED(CONFIG_XXX)与#ifdef CONFIG_XXX的区别
1. #if IS_ENABLED(CONFIG_XXX) 1.1 IS_ENABLED的定义如下: /* * IS_ENABLED(CONFIG_FOO) evaluates to 1 if CON ...
- LC 486. Predict the Winner
Given an array of scores that are non-negative integers. Player 1 picks one of the numbers from eith ...
- new Handler()和new Handler(Looper.getMainLooper())的区别是什么?
new Handler()和new Handler(Looper.getMainLooper())的区别是什么? 一.Handler的一些知识,new Handler()和new Handle ...
- setShadpwLayer实现阴影效果
package com.loaderman.customviewdemo; import android.content.Context; import android.graphics.*; imp ...
- hive-1.1.0-cdh5.11.1-src compile
1. download cdh hive src http://archive.cloudera.com/cdh5/cdh/5/hive-1.1.0-cdh5.11.1-src.tar.gz 2. ...
- jQuery学习四——效果
1.显示,隐藏: <!DOCTYPE html> <html> <head> <title>jquery事件</title> </he ...
- laravel构建联合查询
参考:http://laravelacademy.org/post/126.html DB门面可以指定不同的数据库连接(通过connection方法) /** * @param $login_uid ...
- MySQL中表的列结构的修改操作
首先创建一个用于测试的表test_table: drop table if exists test_table; CREATE TABLE `test_table` ( `id` int(11) DE ...
- iOS-MJRefresh框架
1.用MJRefresh框架实现上下拉刷新 1.1 如何使用这个框架,只需要告诉控件的scrollView是谁,就能将框架添加到我们的滚动视图中了 // 下拉刷新 MJRefreshHeaderVie ...
- sql server 全角与半角字符转换
/****** SQL转换全角/半角函数 开始******/CREATE FUNCTION ConvertWordAngle ( @str NVARCHAR(4000), --要转换的字符串 @f ...