上傳圖片到Tomcat服務器

上傳圖片到Tomcat服務器

一.前言                                                                                                                                                                                                  

在實際項目開發中,很多地方都會涉及到上傳圖片到服務器,而且圖片資源往往是與項目是分屬不同的服務器。本博文將實現利用Jersey上傳圖片資源到Tomcat服務器上

二.預製條件                                                                                                                                                                                           

IDE:eclipse

web容器:Tomcat 7.0

三.實現                                                                                                                                                                                                 

實現思路:Tomcat默認情況下是不允許進行文件讀寫,因此首先要對其進行讀寫配置,然後利用jersey上傳圖片到Tomcat上

(步驟一):修改Tomcat讀寫權限配置

在Tomcat容器的conf目錄下找到web.xml並打開,大概在98行找到如下代碼:

 <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>
            <param-name>listings</param-name>
            <param-value>false</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

加入權限代碼,變成如下

 <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>
		<init-param>
        	<param-name>readonly</param-name>
        	<param-value>false</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>

(步驟二):新建一個web動態項目,在webContext下新建一個upload的文件夾,這個目錄結構只用於存放上傳的圖片資源,將該項目部署到tomcat服務器

該web項目的目錄結構如下圖所示:

注意這時不要啓動eclipse中的服務器免得佔用了端口號


(步驟三):在Tomcat容器的bean目錄下啓動服務器startup.bat


(步驟四):創建一個java項目上傳圖片

1.導入jesery包

commons-io-1.3.2.jar   jersey-client-1.18.1.jar   jersey-core-1.18.1.jar

commons-io-1.3.2.jar 與上傳文件無直接關係,只是爲了很好的操作文件io流

測試實現代碼如下:JerseyDemo.java

public class JerseyDemo {
	public static void main(String[] args) throws IOException {
		//實例化一個Jersey
		Client client = new Client();
		//保存圖片服務器的請求路徑
       
               String url = "http://localhost:8088/image-web/upload/qqq.jpg";
		//設置請求路徑
		WebResource resource = client.resource(url);
		String path = "本地圖片的絕對路徑";
		//讀取圖片到內存,將其變成二進制數組
		byte[] readFileToByteArray = FileUtils.readFileToByteArray(new File(path));
		//發送post get put 
		resource.put(String.class, readFileToByteArray);
		System.out.println("成功發送");
		
	}
}
運行當你看到成功發送時去到服務器image-web的upload目錄下就能看到所上傳的圖片了。



















發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章