Time of Update: 2018-12-04
Action是struts中的一個抽象類別,它其實是Struts的心臟部分,前面提到的ActionServlet和ActionForm進過處理擷取的請求和資料,都會到達Action中得到分發。一:Action有那些作用可以進行一些表單資料的檢查,這裡面的檢查一般和頁面的檢查是不一樣的,頁面的檢查都是用戶端的一些資料格式規範的檢查,這裡的檢查而與業務相關的檢查一般放到這裡面檢查,比如與JavaBean相關的一些操作。也可以說它是一個商務邏輯的管理分發的地方。執行必要的商務邏輯,不如存取資料庫,調用
Time of Update: 2018-12-04
上接:UML從需求到設計--用例從開始接觸UML到現在對UML逐漸有了更深入的瞭解.剛開始,對於UML總是感覺UML就是圖.一提起UML 就想著這個是畫圖的東西.具體這些圖都是幹什麼的.為什麼會有這些圖.在一個項目中 ,到底那個圖是首先出現的.這些圖的出現順序是什麼.腦子裡還是比較混亂.下面我用自己的理解說明一下UML由視圖(views,)圖(diagrams),模型元素(model elements),通用機制(general mechanism)
Time of Update: 2018-12-04
在使用rose的時候.rose的類裡面有個stereotype的選項.選擇了不同的選項類會呈現不同的圖形效果.這裡對stereotype做一點總結, Stereotyp英文的原意是印刷中的鉛字。比如,如果我們需要印一本書,而這本書中有一個字目前沒有其鉛字,那麼我們就得造一個鉛字出來,這樣,我們才能印這本書。UML中就是借用了這一概念來表達採用stereotype對其自身進行擴充的,只不過這個鉛字是指UML當中的圖形符號。
Time of Update: 2018-12-04
在學習Hibernate的時候,很大一部分任務量是配置實體映射關係,Hibernate的映射關係的關鍵就是掌握物件導向的思想,搞清楚實體之間的關係。每一個實體關聯都對應這UML中的對象關係。我們配置這些對象的關聯式模式。下面分節講述Hibernate的關係映射。 本節主要講述Hibernate的一和多的關係。之所以稱之為一和多的關係,是因為他包括三種關係:單向一對多,單向多對一,雙向一對多。我這裡統稱為它一對多。一對多關聯性是非常重要的關係,也是現實世界中最多的關係。這三個關係對應的是UML中的
Time of Update: 2018-12-04
試了很多方法只有這一種有效編輯Tomcat目錄下conf目錄中第一步:找到<Host name="localhost" appBase="webapps"第二步:在其後加上這樣一句話:<Context path="/myapp" docBase="myapp" debug="99" reloadable="true" />"myapp"
Time of Update: 2018-12-04
從去年12月15號開始看DRP視頻,到現在,將近兩個月的時間,終於看完了。DRP真的很大,有445+35集。這個裡面的功能還沒有完全實現,想想如果全部實現了會是多大啊。是不是得看上個一年半載。 DRP中基本上包括了java中所有技術點。這個工程就相當於vb中的陳偉視頻,是一個提綱挈領的視頻。對於裡面涉及到的每一個知識點,都是對自己將來的學習非常重要的。下面我對DRP的知識點做一個簡單的架構。為了以後學慣用到。 前台的東西大致可以分為4塊。資料顯示:html css jstl 頁面Dom控制:
Time of Update: 2018-12-04
在一個web應用中,每個資源都必須通過URI來進行引用。 資源套件括HTML頁面,JSP頁面,和定製動作。為了給定製動作一個 URI或者說路徑,Struts架構提供了一個 ActionMapping對象。 ActionMaping也是Struts的一個核心對象,通常我們不用手寫ActionMapping類,它只需要在設定檔中配置就行。ActionMapping如何配置:ActionMapping在設定檔Strtus-config.xml中配置,配置格式如下: <struts-config&
Time of Update: 2018-12-04
Struts架構是基於控制層的一個MVC架構,所以對於Struts架構來說,最核心的東西就是控制。這次畢業論文答辯的時候,老師問了“什麼叫控制”。當時聽起來有點雷人。但是事後一想,確實是這樣,Struts就是控制。我畢業論文是採用Struts架構實現的。當然裡面少不了關於控制的理論。我當時回答他的是關於web應用上,控制代表的操作。比如對頁面傳遞過來的資訊進行校正,分發等。但是老師對我的答案不是認同,他說我這個是純工程上的說法,我們要求從理論上說,他從控制論的角度去解釋了一下控制。他說的雖然有點
Time of Update: 2018-12-04
在使用mina的時候,我使用的xp系統,想測試一下mina到底支援多少長串連.但是奇怪的是每次最多支援到415個左右.這樣和網上說的mina的效能完全不符.經過研究,應該是作業系統的原因.後來修改了兩個註冊表串連數可以達到4000多.下面是修改方法:增加windows最大TCP串連隨機連接埠數系統預設TCP隨機連接埠範圍為:1024-5000本錯誤密切相關的兩個windows的登錄機碼:TcpTimedWaitDelay和MaxUserPort的值. TcpTimedWaitDelay 確定
Time of Update: 2018-12-04
上接:UML中圖出現順序上回講到使用案例圖,UML中各個圖之間的關係.接著根據UML建模中圖出現的順序來總結包圖.使用案例圖確定以後.使用者的需求基本上就確定了.接下來要根據使用者的要求去設計系統.建模的順序是由大到小.逐層解析.首先確定的就是系統的整體構架.系統的整體構架基本上就是包圖.包圖的解釋:當然包圖有非常官方的解釋.但是那些解釋都是比較抽象的.這裡我都是用自己的語言來敘述包圖的意義.在UML中,包圖看起來很像是一個檔案夾.其實個人感覺包圖就是一個檔案夾.它是UML中的專用檔案夾.用
Time of Update: 2018-12-04
上次寫到了UML的包圖,用例等:接上:UML從需求到實現---包圖按照UML中圖的出現順序.當做完包圖以後.我們下一步要做的當然是類圖,類圖也是UML中的三大核心圖之一.看到很多文章在描述類圖的時候.總是大部分在敘述類之間的關係:關聯,依賴,繼承,組合,彙總呀這些.很少有人說明類是怎麼來的.沒有了類,你拿什麼來畫類圖.那些關係其實沒有多大意義.就像是象棋的馬走日,象飛天一樣.只是一個規定.你知道了這些就是一個象棋高手嗎?類圖是UML中的一種靜態圖.他是體現物件導向編程的基礎.類圖就像是軟體設計的
Time of Update: 2018-12-04
1.通過屬性驅動式 <form action="sys/login.action" method="post"> <input type="text" name="username"> <input type="submit" value="submit"> </form>Action:直接通過get、set方法擷取。public class sysAction extends
Time of Update: 2018-12-04
本節講述一下Hibernate中一對一關聯性的配置和使用。一對一關聯性也是比較常見的一種關係,在Hibernate中可以分為單向一對一關聯性和雙向一對一關聯性。分類的原因一般是由於需求決定的,單雙向是站在不同的角度去看認為規定的。一對一關聯性相對來說比較少見。但是在某些時候也會用到。比如學生和學生證兩個實體就是一對一的。 單向一對一單向一對一是站在其中的一端看的,主要是根據需求決定的。單向標明一端持有另一端的引用,而另一端則沒有引用。如下UML圖:這裡面Student持有Card的引用,在載入S
Time of Update: 2018-12-04
Hibernate核心介面Hibernate有五大核心介面,分別是:Session Transaction Query SessionFactoryConfiguration 。這五個介面構成了Hibernate啟動並執行基本要素,可以執行存取,持久化,交易管理等操作。這五個介面可以位於系統的商務邏輯層和持久化層。下面是一張Hibernate的關係圖: Session介面:Session介面 Session 介面對於Hibernate 開發人員來說是一個最重要的介面。然而在Hibernate中,
Time of Update: 2018-12-04
Hibernate多對多關聯也是比較常見的一種。對於多對多關係,我們都是採用引入第三方表來描述它們之間的關聯的。本節主要講述一下Hibernate多對多關聯。多對多關聯根據需求也可以分為單向多對多和雙向多對多。這裡用比較常見的多對多關係使用者與角色的關係來舉例。 單向多對多如果要求拿到使用者需要知道它的角色,而不去關心反向的載入。那麼這個就是單向的。首先看UML圖。它們的設定檔User.hbm.xml和分別Role.hbm.xml如下:<?xmlversion="1.0"?><
Time of Update: 2018-12-04
心跳包,那麼就是驗證伺服器和用戶端是否串連,只要設定session的idl時間差就行了 /** * session建立時調用 */ @Override public void sessionCreated(IoSession session) throws Exception { logger.info("-IoSession執行個體:" + session.toString()); // 設定IoSession閑置時間,參數單位是秒
Time of Update: 2018-12-04
最近在使用mina測試一個訊息分發的中心,mina對於nio的封裝確實是讓我們操作底層io和線程簡單了很多.現在先簡單介紹一下這個架構.Apache MINA是一個網路應用程式架構,用來協助使用者簡單地開發高效能和高可靠性的網路應用程式。它提供了一個通過Java NIO在不同的傳輸例如TCP/IP和UDP/IP上抽象的事件驅動的非同步API。MINA雖然簡單但是仍然提供了全功能的網路應用程式架構:● 為不同的傳輸類型提供了統一的API:○ 通過Java NIO提供TCP/IP 和
Time of Update: 2018-12-04
軟考馬上就要到來了,我們的複習也進入了最後的實戰階段.兩個多月的複習。讓我學習到了很多以前所沒有注意的東西。在考試的同時,學習東西無疑也是最重要的。下面說說這段時間的收穫吧這段時間集中對電腦基礎的知識,網路,軟體工程中理論的東西學習了很多。其中計算及組成,作業系統,資料結構,編譯原理這塊讓我看到了電腦的工作原理,以及程式啟動並執行過程等。這些相信對以後的編程都會有很大的協助。網路這塊也是重點的收穫區。其中對於網路物理結構,和網路傳輸過程有了一定的瞭解。對於以後的WEB方式的開發會有所協助,尤其是
Time of Update: 2018-12-04
其實用戶端和伺服器是相對的,互發訊息,在底層當然是互為伺服器用戶端.只是這裡為了封裝區分開了.首先需要匯入的包:log4j.jarmina-core-2.0.4.jar slf4j-api-1.6.3.jar slf4j-log4j12-1.6.3.jar服務端代碼:/** */public class MinaTimeServer { // 伺服器監聽連接埠private static final int PORT = 8888;/** * */public
Time of Update: 2018-12-04
XML在不同語言,不同資料來源中交換資料已經成為主流。在這些的DRP項目中,王勇也提到了使用XML在不同資料庫中交換資料,達到安全,靈活的目的。不過他只是提到有這麼一種方法,做了其中的一部分工作。因為感覺這種技術非常實用,這裡我把這個過程補充完整。 開發環境:sql server