2015年4月27日 星期一

自學筆記 no.3 - 在cmd中執行JAVA程式

【新手區練功房】
不知道大家有沒有相同的問題?
明明環境變數path設定正確,javac也執行成功......
為什麼!為什麼!為什麼!還是跳出了錯誤呢?(點圖可放大)

錯誤: 找不到或無法載入主要類別
我試了許多方法,終於TRY 成功啦!!!
成功執行- HelloWorld.java畫面
這是多麼令人感動的一件事啊!這也是多多爬文後的結果呢!
【解釋】
(1) java -cp . 檔案名稱
其實說明了就是環境變數Classpath的簡寫,使用其-classpath 選項來提供類別所在的路徑,讓 JVM 找到您所指定的 Java 程式。

整理來源:

2015年4月18日 星期六

自學筆記 no.Beginning - Java 是什麼?

(一)人們提到「JAVA」,指的可能是:
(1)JAVA程式語言:是一種物件導向的程式語言。
(2)虛擬機器(Java Virtual Machine):用於執行JAVA程式的虛擬機。
(3)JAVA APIs(函式庫的程式設計介面):
預設好可直接使用於程式的一組類別,其功能包含:檔案存取,網路讀寫,圖形介面等等。

(二)JAVA的優點特色:
(1)垃圾收集機制(garbage collection
記憶體一旦不再使用時就會自動釋放,雖執行時效率稍微變差, 但影響微乎其微。

(2)例外處理機制Exception Handling):
良好的程式員=意外發生,程式正常。
Java 的 method 可以丟出例外,用來通知呼叫者程式出狀況了!這是相當好的機制。
即使你的程式要開啟檔案,你都必須在程式中寫好例外處理方式。

(3)JAVA 免費且有API
開發工具和授權:免費!!強大的API,節省時間,免去製造一台車,要先造輪子的窘境。


整理來源:
                O'REILLY 本文作者:Jonathan Knudsen  本文譯者:蔡學鏞

從0到1的距離,看起來可能不遠!但往往我們都停留在0
獻給努力,持續邁向99的你!(哈~ 因為還有進步的空間)



                                    #內容如有錯誤請給予指教!

2015年1月11日 星期日

自學筆記 no.2 -認識Session和Cookie

(一)SessionCookie他們之間有什麼不同?

前導觀念

Http是一個沒有狀態(Stateless)的協定

State 目前的狀態


Stateless 無狀態
Client端對Server發出要求(Request)都是各自獨立,前面要求不影響後面的回應。
範例:
先送出一個Request選定一個標錯價的螢幕,再送出一個Request要結帳,但是上一個選定的Request並不會被儲存,也就是說Server不會記得你剛剛做了什麼。

Stateful 充滿狀態的
能記錄現在Client端與Server端之間的運作,知其做了什麼事件。

進入正題

Cookie

Cookies的生命週期起於瀏覽器被執行時 , 而消滅於瀏覽器結束執行時。(生命週期可設定)
文字檔,存於記憶體與硬碟空間內(Client端),通常記錄網站的個人喜好設定
與Session id,但經過XSS的攻擊後,我們更需要關注其安全性,移出重要資料,不放入其中。
並把HttpOnly屬性設為true,這樣除了HTTP協定以外的東西就無法存取這個Cookie了!



Session

Session有始有終的一系列動作/消息,比如打電話是從拿起電話撥號到掛斷電話這中間的一系列過程可以稱之為一個session。

使用session id來標識session,session id由服務器負責產生,保證隨機性與唯一性,相當於一個隨機密鑰,避免在握手或傳輸中暴露用戶真實密碼。所以說,重要資料就會選擇使用Session,比如說是否登入的驗證。

比較特別的是Session是跟著瀏覽器產生,所以當關掉瀏覽器或是過了20分鐘之後(也可以設定久一點)就會被拋棄。


具體來說

cookie採用的是在客戶端保持狀態的方案,而session機制採用是在服務器端保持狀態的方案。

整理來源:
             Cookie 與 Session    

             Cookies的生命週期


            Session和Cookie的區別

張忠謀:
不再為考試、學位而讀書,要為興趣、將來的工作學習
畢業開始才是真的學習,99%的知識在於畢業後,開始為自己的興趣做累積吧!

2015年1月10日 星期六

自學筆記 no.1 - 認識Apache和Tomcat

()ApacheTomcat而他們之間有什麼不同?
(1)Apache
世界使用排名第一的Web服務器。(開放原始碼、支持跨系統平臺及可移植性)
取自“a patchy server”的讀音,意思是充滿補丁的服務器,因爲它是自由軟件,所以不斷有人來爲它開發新的功能、新的特性、修改原來的缺陷。

特點是簡單、速度快、性能穩定,並可做代理服務器來使用。

支持SSL技術,支持多個虛擬主機。
進程爲基礎的結構,進程要比線程消耗更多的系統開支。因此,在一個Apache Web站點擴容時,通常是增加服務器或擴充群集節點而不是增加處理器。

Apache支援靜態網頁(html的普通網頁)
可通過插件支持PHP,還可與Tomcat連通。
單方向連接Tomcat,就是說通過Apache可訪問Tomcat資源。
(阿帕奇暗戀湯姆貓,這種單方向的關係)


(2)Tomcat
支援動態網頁,開放原始碼,運行servlet和JSP Web應用軟件的基於Java的Web應用軟件容器。是Apache組織在符合J2EE的JSP、Servlet標準下開發的一個JSP伺服器

(3)綜觀區別
Apache和Tomcat是獨立的,在同一臺服務器上可以集成。打個比方:Apache是一輛卡車,上面可以裝一些東西如html等。但是不能裝水,要裝水必須要有容器(桶),Tomcat就是一個桶(裝像Java這樣的水),而這個桶也可以不放在卡車上。

使用區別:
Tomcat 作為 jsp,servlet 容器,雖有靜態解析,但性能上與 Apache 相差甚遠。
Apache 可運行一年不重啟,穩定性高,而 Tomcat 則不見得。

整合:
一般使用Apache + Tomcat的話,Apache只是作為一個轉發,對jsp的處理是由Tomcat來處理。

整合的好處:
用戶端請求的是靜態頁面,則只需要Apache伺服器回應請求,Apache 解析 html 等靜態網頁非常快,是經過無數測試證明的。
如果用戶端請求動態頁面,則是Tomcat伺服器回應請求。

因為jsp是伺服器端解釋代碼的,這樣整合就可以減少Tomcat的服務開銷。



整理來源:
                   itKee(IT客) http://www.itkee.com/sysapp/detail-8fa.html
                   深綠色的私人世界 http://otaku119.blogspot.tw/2008/05/apache-vs-tomcat.html

JAVA學習之路 機會是留給準備好的人,筆記是寫給未來的自己,有一天再碰上相同的問題,莫驚莫慌莫害怕,而知識是誰也奪不走的寶,最後陪伴的也是他,而他即是我的武器!

#內容如有錯誤請給予指教!