搭建Tomcat服务器
要搭建一个图片服务器,那么在测试时在个人电脑上至少需要启动2个服务器,所以需要修改下Tomcat的端口配置,另外,由于默认情况下Tomcat 发布的项目路径下的内容是只读的,这里需要将其配置为可读写。
修改server.xml的配置
需要修改的端口如下:
<Server port="8050" shutdown="SHUTDOWN"> <!--from 8005 to 8050-->
<Connector port="8088" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" /> <!--from 8080 to 8088-->
<Connector port="8090" protocol="AJP/1.3" redirectPort="8443" />
修改web.xml的配置
找到103行的servlet,然后加入readonly的配置。
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<!--add configuration here for read only-->
<init-param>
<param-name>readonly</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
然后在该tomcat的webapps下面创建存储文件的路径,路径如下:
/usr/local/apache-tomcat-7.0.69-2/webapps/image-web/upload
至此,不妨拷贝一个图片到该路径下,然后启动tomcat就可以访问该照片了。假设照片的名称为1.jpg,则可以通过
http://localhost:8088/image-web/upload/1.jpg访问该照片了。
利用jersey来测试发送照片到图片服务器
import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.WebResource;
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;
/**
* Created by lili on 16/6/10.
*/
public class TestJerssy {
public static void main(String[] args) throws IOException {
Client client = new Client();
String uploadURL = "http://localhost:8088/image-web/upload/888.jpg";
WebResource webResource = client.resource(uploadURL);
String path = "/Users/lili/Downloads/IMG_0535.JPG";
byte[] filebytes = FileUtils.readFileToByteArray(new File(path));
webResource.put(String.class,filebytes);
System.out.println("over!");
}
}