編輯:關於Android編程
這次直接找一個JavaEE版本的Eclipse解壓到我們想安裝的目錄下即可,用過 Eclipse+ADT 開發 Android 的同學都知道 Eclipse 是免安裝的,在 /eclipse 下直接打開 eclipse.exe 即可。
到此我們只是簡單安裝了一個服務器的運行環境,現在我們開始寫自己的服務器程序。 不管你是學Java的,還是 Android 的,肯定都學過 Core-Java 課程,那麼你肯定學過 Servlet ,或許你忘了,但這無所謂,我們重新開始。
摘自書上的一小段解釋——“Java Servlet 是運行在 Web 服務器或應用服務器上的程序,它是作為來自 Web 浏覽器或其他 HTTP 客戶端的請求和 HTTP 服務器上的數據庫或應用程序之間的中間層。使用 Servlet,您可以收集來自網頁表單的用戶輸入,呈現來自數據庫或者其他源的記錄,還可以動態創建網頁”。Servlet 是 sun 公司提供的一門用於開發動態 web 資源的技術。其實,"Servlet"本來是指 Java語言實現的一個接口(狹義的Servlet),但更多的也更普遍的情況是:我們把任何實現了 Servlet 接口的類都叫作 "Servlet"。Servlet 的作用主要是對 Request 的請求數據進行解析、按照業務邏輯處理並將結果封裝成 Response 返回我的理解就是“讀-計算-寫”,像數學計算器一樣,輸入操作數、操作符按"等於"就顯示出結果;也像人的腦神經元一樣“接受刺激-信號處理-作出響應”。為了便於理解,我們來慢慢拆解:
在普通用戶看來,我們平時使用互聯網就像下圖這樣:
vc=" src="/uploadfile/Collfiles/20160601/20160601094130707.png" />
普通用戶只關心自己作為一個客戶端,是和一個叫服務器的東西在進行數據交互,具體服務器在哪裡、做什麼、怎麼實現、數據庫用哪種... ...這些都不重要。
而作為開發者的我們,用戶不關心的問題我們卻理當視如家珍(這是我們吃飯的家伙啊)——我們將服務器部分放大,從一個入門級的服務器開發者的角度來看看服務器的構造(這裡僅以 Servlet 為例):
服務器接收來自不同用戶的不同的請求(當然是以該服務器作為請求目標的那些請求),分析不同的請求,控制模塊將各自的請求分送至對應的 Servlet (如登陸請求,則將登陸數據送至LoginServlet),然後 Servlet 根據請求內容處理業務邏輯(如登陸請求則解析用戶名密碼,並和數據庫中保存的用戶名密碼進行對比,得出是否是合法用戶的結論),完成響應數據的封裝返回給控制模塊,控制模塊再將該響應返回給對應的請求用戶,這樣即完成一次網絡交互。
@WebServlet(description = "學習Servlet創建的", urlPatterns = { "/Home/FirstServlet" }, initParams = { @WebInitParam(name = "userName", value = "abc", description = "用戶姓名") })PreferenceServlet中為:
@WebServlet("/Home/PreferenceServlet")可以發現,之前添加的這些選項都是以注解的方式出現的一些說明、初始化參數。為了理解這一點,我找出了Servlet3.0之前版本的 web.xml文件中對Servlet的配置文件內容進行說明:
這兩種寫法的功能是一樣的,只是Servlet3.0之後支持注解的方式進行配置更方便、更高效而已。FirstServlet servlet.FirstServlet userName abc FirstServlet /Home/FirstServlet
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.getWriter().append("\n初始化參數userName = " + getInitParameter("userName")); }然後工程上右鍵>Run As: Server選擇之前創建的,Add該工程到服務器配置,finish。出現 即說明運行成功了! 在浏覽器地址欄輸入http://localhost:8080/ServletTest/Home/FirstServlet 回車,會看到: 好了,初步成功了。如果你是個新手,肯定還有很多地方不知道為什麼,比如請求地址為什麼這樣寫?Servlet 的響應怎麼返回的?為什麼顯示的中文成了亂碼?沒關系,萬事都不是一蹴而就的,我們就像標題一樣,一步一個腳印,仔仔細細來。限於篇幅,本以為一篇就能說完,沒想到還是留下了不少的內容,我們下篇繼續。
博主在剛剛在學習過程中發現了一個關於android往sdcard讀寫的問題, 配置了該配置的提示無讀寫權限。 在AndroidManifest.xml文件中配置清單如下
引言Android 中的Drawable是一個抽象的概念,換言之所有能被畫出來的都可以定義成Drawable(A Drawable is a general abstra
用過android手機的人都知道android使用app的時候屏幕上方的狀態欄都是黑色的,就算不是黑色的都與正在打開的app顏色不同。有一種灰常不搭調的感覺。
SurfaceView, GLSurfaceView, SurfaceTexture和TextureView是Android當中名字比較繞,關系又比較密切的幾個類。本文基