2009年5月22日

            個(gè)人對(duì)軟件設(shè)計(jì)及架構(gòu)的總結(jié):

          1.軟件設(shè)計(jì)        

          Java 跨平臺(tái)、虛擬機(jī) .Net CLR

          J2EE:一組規(guī)范,多種JSR的組合,ServletJSPEJBJDBCJNDIJMS

                JTARMI等等

          目標(biāo):企業(yè)應(yīng)用

          2.企業(yè)應(yīng)用的特點(diǎn),這也是J2EE誕生的原因

             企業(yè)應(yīng)用的特點(diǎn)

          1. 涉及到持久化數(shù)據(jù)

          2. 很多人同時(shí)訪問(wèn)數(shù)據(jù)

          3. 含有大量操作數(shù)據(jù)的用戶界面

          4. 與散布在企業(yè)內(nèi)部或周圍的其他的應(yīng)用集成

          5. 各種異構(gòu)系統(tǒng)的概念含有不一致性

          6. 業(yè)務(wù)邏輯通常是最沒(méi)有邏輯的東西

          7. 企業(yè)應(yīng)用并非都是大型的,但可能都為企業(yè)提供巨大的價(jià)值

             因此需要更強(qiáng)的健壯性、可擴(kuò)展性和異常處理能力

          3.經(jīng)典道理:

          l       

          l        計(jì)算機(jī)科學(xué)里,沒(méi)有任何問(wèn)題是不能通過(guò)增加額外的附加層而得到解決的。

          發(fā)展歷史:

          Flat File-〉事務(wù)處理系統(tǒng)(處理并發(fā)訪問(wèn))-〉RDB(SQL)

          -〉C/S應(yīng)用(客戶端負(fù)責(zé)數(shù)據(jù)獲取和呈現(xiàn),并直接訪問(wèn)數(shù)據(jù)庫(kù))

          -〉受數(shù)據(jù)庫(kù)的物理連接的限制,決定了客戶端的最大連接數(shù)

          -〉銀彈:分層                                  |----【連接池】

              -〉三層架構(gòu) ,n-tier(中間件)           [tier & layer ]

              

             J2EE通過(guò)分層與AOP

          4.系統(tǒng)架構(gòu)

          原則:接口實(shí)現(xiàn)分離、開(kāi)閉、迪米特、依賴倒置、里氏替換

          分層: presentation layer: mvc "databind " look & feel " i18n

          Service layer: 接口實(shí)現(xiàn)分離" Service Locater" Facade

          Business layer : BPM "Domain Model

          Data Access layer: DAO ----DB independence

                             

          事務(wù):本地事務(wù)、聲明式、編程式

          安全:CASSLSOOLDAP

          5.企業(yè)架構(gòu)

                 Zachman: 5W1H

          n        數(shù)據(jù)(WHAT

          n        功能(HOW

          n        網(wǎng)絡(luò)(WHERE

          n        人員(WHO

          n        時(shí)間(WHEN

          n        動(dòng)機(jī)(WHY

          TOGAF: 4 Architeture

           ADM

           

          6.應(yīng)用整合

          SOA-----WebService

              -------ESB 應(yīng)用互聯(lián)

          -------SCA 服務(wù)組件

          -------BPEL 業(yè)務(wù)編排

          posted @ 2009-05-22 08:30 fph 閱讀(1618) | 評(píng)論 (2)編輯 收藏

          2007年11月15日

          ORM(Object Relation Mapping)大家都很熟悉,包括hibernate,ibatis等等,JavaEE 5里面定義了JPA,也是差不多的意思。

          這里的關(guān)鍵是Relation,將對(duì)象映射到關(guān)系數(shù)據(jù)庫(kù),為什么呢要映射到關(guān)系數(shù)據(jù)庫(kù),因?yàn)槲覀儼l(fā)展了這么多年的數(shù)據(jù)庫(kù)歷史,

          并且發(fā)明了sql等一系列相關(guān)的工具以及穩(wěn)定的DB Product。

          OXM不是新名詞,是我自己簡(jiǎn)寫的(Object XML Mapping),將對(duì)象與xml(不一定是文件,是xml的表示方式)互相轉(zhuǎn)換及映射,

          目前有很多工具可以做,比如castor,我想用DOM或SAX也可以作出其他的類似工具。

          XQuery ,XPath可以用來(lái)做類似sql的事情。

          當(dāng)然,如何把xml持久化呢,DB2 V9不是已經(jīng)做了嗎,不過(guò)xml只不過(guò)是關(guān)系數(shù)據(jù)庫(kù)的一種附加品而已。

          xml不一定非需要操作系統(tǒng)文件的方式呀,也許有一天,某一個(gè)數(shù)據(jù)庫(kù)(或者叫持久化)產(chǎn)品是

          只面向xml而非關(guān)系的,那么流行的將是OXM,或者叫OX(和XO很像呀,想來(lái)一口嗎 ^-^),因?yàn)閷?duì)象和xml之間幾乎不需要mapping

          posted @ 2007-11-15 12:59 fph 閱讀(918) | 評(píng)論 (0)編輯 收藏

          2007年5月27日

          1。URL中g(shù)et方式傳遞中文參數(shù)
                在WAS下需要取出參數(shù)之前加上
             request.setCharacterEncoding("GBK");
             String file = request.getParameter("file");

          2。關(guān)于jsp:include的用法
               WAS下能<jsp:include page='<%=expression%>' />, 其中expression只能是單個(gè)變量,而不能是表達(dá)式,如request.getAttribute("XXX")
              這種在WAS下必須 
                       
          <% String aa = (String) request.getAttribute("aa");
          %>
          <jsp:include page="<%=aa%>"/>

            好像是標(biāo)簽里都會(huì)有這種問(wèn)題,而直接用html語(yǔ)法不會(huì)有這個(gè)問(wèn)題
              

          posted @ 2007-05-27 14:49 fph 閱讀(1503) | 評(píng)論 (0)編輯 收藏

          2007年4月25日

          最近遇到新系統(tǒng)與老系統(tǒng)部署共享jar沖突的問(wèn)題,參考了下面文章,WAS的類加載機(jī)制

          參考:http://www-128.ibm.com/developerworks/cn/websphere/library/techarticles/haoaili/0512/index.html#IDARCQPB

          posted @ 2007-04-25 13:33 fph 閱讀(335) | 評(píng)論 (0)編輯 收藏

          2007年4月23日

          type1:jdbc-odbc橋
                    driver: sun.jdbc.odbc.JdbcOdbcDriver
                    url:jdbc:odbc:odbcdatasourcename
          type2:應(yīng)用驅(qū)動(dòng)
                  driver: COM.ibm.db2.jdbc.app.DB2Driver
                  url:jdbc:db2:dbname
                     
                 通用驅(qū)動(dòng)
                  driver:com.ibm.db2.jcc.DB2Driver
                  url:  jdbc:db2:dbname

          type3: 網(wǎng)絡(luò)驅(qū)動(dòng)
                 driver : COM.ibm.db2.jdbc.net.DB2Driver
                 url: jdbc:db2:// server:portNumber / dbname
           
                此處端口號(hào)默認(rèn)為6789,也可以用db2jstrt <port number>  自己在db server上啟動(dòng)設(shè)置。
                 
                這個(gè)中間件服務(wù)器就是安裝DB2后在服務(wù)中顯示為”DB2 JDBC小應(yīng)用程序服務(wù)器–對(duì)DB2應(yīng)用程序提供JDBC服務(wù)支持”(在windwos上安裝DB2的),務(wù)必使這個(gè)服務(wù)啟動(dòng),否則type3型的JDBC是鏈接不上的。這個(gè)中間件服務(wù)器就是安裝DB2后在服務(wù)中顯示為”DB2 JDBC Applet服務(wù)器–對(duì)DB2應(yīng)用程序提供JDBC服務(wù)支持”(在windwos上安裝DB2的),務(wù)必使這個(gè)服務(wù)啟動(dòng),否則type3型的JDBC是鏈接不上的。
                 參考:http://feed.feedsky.com/niarevol

          type4:直接驅(qū)動(dòng)
                driver :com.ibm.db2.jcc.DB2Driver
                url:
          jdbc:db2:// server:portNumber / dbname
               此處端口號(hào)默認(rèn)為50000,為數(shù)據(jù)庫(kù)實(shí)例的端口號(hào)
           
               需要 db2jcc_license_*.jar文件,我的是db2jcc_license_cu.jar

              連接 DB2 UDB for z/OS、OS/390 和 iSeries 時(shí)需專門考慮:
          • DB2 Connect 軟件是必要的,因?yàn)樗鼛?lái)所需的許可文件: db2jcc_license_cisuz.jar
          • 在指定數(shù)據(jù)庫(kù)名時(shí),務(wù)必使用大寫體

          posted @ 2007-04-23 18:52 fph 閱讀(1811) | 評(píng)論 (0)編輯 收藏

          2007年4月20日

          因?yàn)槲覀兊南到y(tǒng)考慮到加密及認(rèn)證,因此又學(xué)習(xí)了一下CA,把以前不是很清楚的地方確認(rèn)了一下。
          基礎(chǔ): 對(duì)稱加密 :速度快,大量數(shù)據(jù)加密
                        非對(duì)稱加密:效率慢,用于加密,簽名,傳輸對(duì)稱密鑰

          而網(wǎng)絡(luò)安全的基礎(chǔ)就是非對(duì)稱加密算法。
          四要素: 
                    保密性:加密
                    完整性:Hash算法
                    認(rèn)證: 數(shù)字證書,數(shù)字簽名
                    抗抵賴:數(shù)字簽名
          簽名用本人私鑰,加密用對(duì)方公鑰。

          posted @ 2007-04-20 10:51 fph 閱讀(250) | 評(píng)論 (0)編輯 收藏

          2007年4月13日

          今天上eclipse網(wǎng)址,發(fā)現(xiàn)有個(gè)分類是webinar,查了金山,沒(méi)有。

          google了一下,意思如下:

          Short for Web-based seminar

          posted @ 2007-04-13 13:19 fph 閱讀(340) | 評(píng)論 (0)編輯 收藏

          2007年4月12日

          最近在看閻博士的Java與模式,有一點(diǎn)說(shuō)得很不錯(cuò),模式是根據(jù)用途來(lái)命名的,而模式的實(shí)現(xiàn)不外乎Java里面類、或者對(duì)象之間的關(guān)系。其實(shí)最一般化的就是關(guān)聯(lián)關(guān)系了。
          而關(guān)聯(lián)關(guān)系在UML中根據(jù)用意不同分為聚合、合成等。

          因此所有的模式或關(guān)系都是Java類或?qū)ο蟮年P(guān)聯(lián)。

          btw:很懶的人,不怎么寫blog,今天突然想起來(lái)了,寫了一下,發(fā)現(xiàn)寫blog有助于加強(qiáng)對(duì)一些概念的理解,如聚合、合成的區(qū)別,copy如下:

          一般關(guān)聯(lián):只要一個(gè)對(duì)象聯(lián)系到另外一個(gè)對(duì)象就形成了關(guān)聯(lián)關(guān)系。如:人和他的貓,黑豹樂(lè)隊(duì)和竇魏,pc機(jī)和顯示器。

          聚合關(guān)系:一種強(qiáng)關(guān)聯(lián)關(guān)系,它要求有部分和整體的關(guān)系,并且沒(méi)有了整體部分也可以獨(dú)立存在。在上面三個(gè)例子中人和它的貓顯然沒(méi)有部分和整體的關(guān)系,所以只能是一般的關(guān)聯(lián)關(guān)系。而黑豹樂(lè)隊(duì)和竇魏,竇魏等人組成了黑豹樂(lè)隊(duì)即:竇魏和黑豹是整體和部分的關(guān)系。而竇魏脫離了黑豹(早就離開(kāi)了)更或者黑豹不存在了那么竇魏仍然可以以音樂(lè)人的身份存在(即對(duì)象仍然可以獨(dú)立存在)所以它屬于聚合關(guān)系。組成關(guān)系是可以共享的。(竇魏也可以加入其他樂(lè)隊(duì))。

          組合關(guān)系:一種更強(qiáng)的整體和部分的關(guān)系。它并且要求代表整體的對(duì)象負(fù)責(zé)代表部分的對(duì)象的生命周期,組成關(guān)系是不能共享的。如:pc機(jī)和顯示器的關(guān)系。

          posted @ 2007-04-12 13:31 fph 閱讀(392) | 評(píng)論 (3)編輯 收藏

          僅列出標(biāo)題  
          主站蜘蛛池模板: 水富县| 桦川县| 驻马店市| 镶黄旗| 邵阳市| 长垣县| 上虞市| 星座| 宁波市| 宜丰县| 高唐县| 龙胜| 新竹县| 宝坻区| 永修县| 韶山市| 梁山县| 兴国县| 永和县| 盘锦市| 大同县| 晋宁县| 宜君县| 保康县| 隆回县| 罗源县| 泽库县| 曲阜市| 手游| 宜都市| 时尚| 兴安县| 白沙| 大宁县| 邵东县| 黔江区| 鄂托克前旗| 通辽市| 宿松县| 滁州市| 海阳市|