jersey文件服务器搭建

使用jersey实现应用服务器和图片服务器分离
restful: put   向指定的目录上传附加文件
             delete  删除指定的资源
             post
             get 


1> 创建一个新的apache-tomcat(img),修改端口号


2> 创建一个动态web工程(shopimg)发布到上面的tomcat上,作为图片服务器


        1)WebContent下创建文件夹upload用于存放图片,创建index.jsp图片服务器初始页面


        2)修改tomcat配置文件web.xml(开启restful机制)
           server --> 对应tomcat --> web.xml

       		<init-param>
			<param-name>readonly</param-name>
			<param-value>false</param-value>
		</init-param>

        这里,readonly参数默认为true,相当于不允许delete和put操作
        如果不配置,http会报403错误,为了rest服务,应该设置为false


3> 服务器搭建好,创建客户端进行测试(模拟应用服务器)
         1)创建一个java工程,创建一个文件夹lib,导入jersey相关jar包(3个)
           commons-io-1.3.2.jar
           jersey-client-1.8.jar
           jersey-core-1.8.jar

         2)ClientTest.java: 

package com.zy;
import java.io.File;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Random;

import org.apache.commons.io.FileUtils;

import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.WebResource;

public class ClientTest {

	public static void main(String[] args) throws Exception {

		// 图片名称生成策略
		DateFormat df = new SimpleDateFormat("yyyyMMddHHmmssSSS");
		String format = df.format(new Date());
		// 防止同一时间上传图片,不能用时间作为区分
		// 用随机数
		Random r = new Random();
		for (int i = 0; i < 3; i++) {
			// 产生100以内的随机数
			format += r.nextInt(100);
		}

		// 图片保存数据库路径
		String path = "upload/" + format + ".jpg";

		// 另外一台服务器地址
		String url = "http://127.0.0.1:8898/shopimg/" + path;

		// 实例化jersey
		Client c = new Client();

		// 设置请求路径
		WebResource wr = c.resource(url);

		// 找到图片地址,引入(路径加转义字符"\")
		byte[] buf = FileUtils.readFileToByteArray(new File("C:\\Users\\Administrator\\Desktop\\1321668307_2.jpg"));
		wr.put(String.class, buf);

		System.out.println("发送成功!");
	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值