從零開始搭建騰訊雲服務器 (二)

在上一篇博客中介紹了騰訊雲服務器租用、環境部署以及IIS服務器安裝和公網訪問IIS中存儲的圖片資源,本篇博客旨在記錄Android移動端公網訪問雲服務器中的圖片資源。html

一、需求java

Android端經過公網加載雲服務器中的圖片,涉及到Android端設計、本地建立web項目以及將本地web項目部署到騰訊雲服務器上。jquery

效果圖以下:web

 

二、步驟windows

2.一、Android端設計瀏覽器

a、界面設計(略)緩存

b、功能實現代碼tomcat

public class MainActivity extends AppCompatActivity {
    ImageView imageView;
    private Handler pic_hdl;
    Button sendRequest;
    EditText imagePath;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        sendRequest = (Button) findViewById(R.id.send_request);
        imageView = (ImageView) this.findViewById(R.id.imageView);
        imagePath = (EditText) this.findViewById(R.id.imagePath);
        sendRequest.setOnClickListener(new ButtonListener());
        pic_hdl = new PicHandler();
    }
    
    class ButtonListener implements View.OnClickListener {
        @Override
        public void onClick(View v) {
            if (v.getId() == R.id.send_request) {
                Thread t = new LoadPicThread();
                t.start();
            }
        }
    }

    class LoadPicThread extends Thread {
        @Override
        public void run() {
            String picDir = imagePath.getText().toString();//獲取網絡圖片路徑
            Bitmap img = getUrlImage(picDir);
            Message msg = pic_hdl.obtainMessage();
            msg.what = 0;
            msg.obj = img;
            pic_hdl.sendMessage(msg);
        }
    }

    class PicHandler extends Handler {
        @Override
        public void handleMessage(Message msg) {
            Bitmap myimg = (Bitmap) msg.obj;
            imageView.setImageBitmap(myimg);
        }
    }
    /**加載圖片
     * @param url  網絡圖片路徑
     * @return  Bitmap 位圖
     * */
    public Bitmap getUrlImage(String url) {
        Bitmap img = null;
        try {
            URL picurl = new URL(url);
            // 得到鏈接
            HttpURLConnection conn = (HttpURLConnection) picurl.openConnection();
            conn.setConnectTimeout(6000);//設置超時
            conn.setDoInput(true);
            conn.setUseCaches(false);//不緩存
            conn.connect();
            InputStream is = conn.getInputStream();//得到圖片的數據流
            img = BitmapFactory.decodeStream(is);
            is.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return img;
    }
}

2.二、建立本地web項目安全

 建立本地web項目在javaee環境下進行建立,採用的是eclipse集成開發工具,服務器

a、預先配置本地計算機Tomcat服務器環境,啓動Tomcat服務器,

b、建立動態web項目,建立完web項目,將要展現的圖片資源拷貝放在「WebContent」文件夾下。而後運行web項目於Tomcat服務器中(「Run on Server」),確保Tomcat服務器已啓動。

c、導出web項目爲「war」格式。(web項目右鍵-----Export-----WAR file)

2.三、本地web項目部署到騰訊雲服務器上

a、騰訊雲服務器配置(注意:騰訊雲服務器也要安裝jdk和配置環境變量,具體見博客底部參考資料)。

~開放訪問端口

(登錄騰訊雲服務器,點擊安全組選項,注意最上面的項目選擇正確,點擊安全組選擇新建,選擇放通所有端口,而後到最下面,點擊新建,返回安全組,點擊加入實例,勾選響應雲主機,而後點擊肯定。)

~配置騰訊雲服務器防火牆

(打開服務器管理器,右上角工具---高級安全windows防火牆,點擊Windows防火牆屬性,選擇公用配置文件,入站連接設置爲容許,而後肯定,服務器配置完畢.)

b、運行web項目

將本地web項目導出的war文件放入服務器Tomcat的webapps目錄下,而後從bin---startup.bat啓動Tomcat,先在服務器試試可否成功運行http://localhost:8080/項目名稱/圖片名稱.擴展名能夠的話,不要關閉服務器的Tomcat,回到本身筆記本,在瀏覽器輸入http://服務器公網IP:8080/項目名稱/圖片名稱.擴展名便可訪問雲服務器web項目或者運行Android上以前建立的app加載網絡圖片資源。

--------------------------------------------------------------------------------------------------------------------

參考資料:

http://blog.csdn.net/jquerys/article/details/47837823  //eclipse導出項目(war包),部署到tomcat,測試實例

http://www.cnblogs.com/diyunfei/p/6826557.html      //怎樣將本地web項目部署到騰訊雲服務器上?

http://product.pconline.com.cn/itbk/software/dnwt/1408/5260596.html#ad=7094?qq-pf-to=pcqq.c2c     //JDK怎麼安裝與配置環境變量

相關文章
相關標籤/搜索