1、MVC的各個部分都有那些技術來實現?如何??
答:MVC是Model-View-Controller的簡寫。"Model" 代表的是應用的商務邏輯(通過JavaBean,EJB組件實現), "View" 是應用的表示面(由JSP頁面產生),"Controller" 是提供應用的處理過程式控制制(一般是一個Servlet),通過這種設計模型把應用邏輯,處理過程和顯示邏輯分成不同的組件實現。這些組件可以進行互動和重用。
2、J2EE是什嗎?
答:Je22是Sun公司提出的多層(multi-diered),分布式(distributed),基於組件(component-base)的企業級應用程式模型(enterpriese application model).在這樣的一個應用系統中,可按照功能劃分為不同的組件,這些組件又可在不同電腦上,並且處於相應的層次(tier)中。所屬層次包括客戶層(clietn tier)組件,web層和組件,Business層和組件,公司資訊系統(EIS)層。
3、WEB SERVICE名詞解釋。JSWDL開發包的介紹。JAXP、JAXM的解釋。SOAP、UDDI,WSDL解釋。
答:Web Service描述語言WSDL
SOAP即簡易物件存取通訊協定 (SOAP)(Simple Object Access Protocol),它是用於交換XML編碼資訊的輕量級協議。
UDDI 的目的是為電子商務建立標準;UDDI是一套基於Web的、分布式的、為Web Service提供的、資訊註冊中心的實現標準規範,同時也包含一組使企業能將自身提供的Web Service註冊,以使別的企業能夠發現的訪問協議的實現標準。
4、J2EE是技術還是平台還是架構?
答:J2EE本身是一個標準,一個為企業分布式應用的開發提供的標準平台。
J2EE也是一個架構,包括JDBC、JNDI、RMI、JMS、EJB、JTA等技術。
5、STRUTS的應用(如STRUTS架構)
答:Struts是採用Java Servlet/JavaServer Pages技術,開發Web應用程式的開放源碼的framework。 採用Struts能開發出基於MVC(Model-View-Controller)設計模式的應用構架。 Struts有如下的主要功能:
一.包含一個controller servlet,能將使用者的請求發送到相應的Action對象。
二.JSP自由tag庫,並且在controller servlet中提供關聯支援,協助開發員建立互動式表單應用。
三.提供了一系列實用對象:XML處理、通過Java reflection APIs自動處理JavaBeans屬性、國際化的提示和訊息。
6、WEB SERVICE名詞解釋。JSWDL開發包的介紹。JAXP、JAXM的解釋。SOAP、UDDI,WSDL解釋。
答:Web ServiceWeb Service是基於網路的、分布式的模組化組件,它執行特定的任務,遵守具體的技術規範,這些規範使得Web Service能與其他相容的組件進行互操作。
JAXP(Java API for XML Parsing) 定義了在Java中使用DOM, SAX, XSLT的通用的介面。這樣在你的程式中你只要使用這些通用的介面,當你需要改變具體的實現時候也不需要修改代碼。
JAXM(Java API for XML Messaging) 是為SOAP通訊提供存取方法和傳輸機制的API。
WSDL是一種 XML 格式,用於將網路服務描述為一組端點,這些端點對包含面向文檔資訊或面向過程資訊的訊息進行操作。這種格式首先對操作和訊息進行抽象描述,然後將其綁定到具體的網路通訊協定和訊息格式上以定義端點。相關的具體端點即組合成為抽象端點(服務)。
SOAP即簡易物件存取通訊協定 (SOAP)(Simple Object Access Protocol),它是用於交換XML編碼資訊的輕量級協議。
UDDI 的目的是為電子商務建立標準;UDDI是一套基於Web的、分布式的、為Web Service提供的、資訊註冊中心的實現標準規範,同時也包含一組使企業能將自身提供的Web Service註冊,以使別的企業能夠發現的訪問協議的實現標準。
7、C/S 與 B/S 區別:
答:有如下八個方面的不同:
1.硬體環境不同:
C/S 一般建立在專用的網路上, 小範圍裡的網路環境, 區域網路之間再通過專門伺服器提供串連和資料交換服務.
B/S 建立在廣域網路之上的, 不必是專門的網路硬體環境,例與電話上網, 租用裝置. 資訊自己管理. 有比C/S更強的適應範圍, 一般只要有作業系統和瀏覽器就行
2.對安全要求不同
C/S 一般面向相對固定的使用者群, 對資訊安全的控制能力很強. 一般高度機密的資訊系統採用C/S 結構適宜. 可以通過B/S發布部分可公開資訊.
B/S 建立在廣域網路之上, 對安全的控制能力相對弱, 可能面向不可知的使用者。
3.對程式架構不同
C/S 程式可以更加註重流程, 可以對許可權多層次校正, 對系統運行速度可以較少考慮.
B/S 對安全以及訪問速度的多重的考慮, 建立在需要更加最佳化的基礎之上. 比C/S有更高的要求 B/S結構的程式架構是發展的趨勢, 從MS的.Net系列的BizTalk 2000 Exchange 2000等, 全面支援網路的構件搭建的系統. SUN 和IBM推的JavaBean 構件技術等,使 B/S更加成熟.
4.軟體重用不同
C/S 程式可以不可避免的整體性考慮, 構件的重用性不如在B/S要求下的構件的重用性好.
B/S 對的多重結構,要求構件相對獨立的功能. 能夠相對較好的重用.就入買來的餐桌可以再利用,而不是做在牆上的石頭桌子
5.系統維護不同
C/S 程式由於整體性, 必須整體考察, 處理出現的問題以及系統升級. 升級難. 可能是再做一個全新的系統
B/S 構件組成,方面構件個別的更換,實現系統的無縫升級. 系統維護開銷減到最小.使用者從網上自己下載安裝就可以實現升級.
6.處理問題不同
C/S 程式可以處理使用者面固定, 並且在相同地區, 安全要求高需求, 與作業系統相關. 應該都是相同的系統
B/S 建立在廣域網路上, 面向不同的使用者群, 分散地區, 這是C/S無法作到的. 與作業系統平台關係最小.
7.使用者介面不同
C/S 多是建立的Window平台上,表現方法有限,對程式員普遍要求較高
B/S 建立在瀏覽器上, 有更加豐富和生動的表現方式與使用者交流. 並且大部分難度減低,減低開發成本.
8.資訊流不同
C/S 程式一般是典型的中央集權的機械式處理, 互動性相對低
B/S 資訊流向可變化, B-B B-C B-G等資訊、流向的變化, 更像交易中心。
8、什麼是web容器
答:給處於其中的應用程式組件(JSP,SERVLET)提供一個環境,使JSP,SERVLET直接更容器中的環境變數接**互,不必關注其它系統問題。主要有WEB伺服器來實現。例如:TOMCAT,WEBLOGIC,WEBSPHERE等。該容器提供的介面嚴格遵守J2EE規範中的WEB APPLICATION 標準。我們把遵守以上標準的WEB伺服器就叫做J2EE中的WEB容器。122、什麼是EJB容器
答:Enterprise java bean 容器。更具有行業領域特色。他提供給運行在其中的組件EJB各種管理功能。只要滿足J2EE規範的EJB放入該容器,馬上就會被容器進行高效率的管理。並且可以通過現成的介面來獲得系統層級的服務。例如郵件服務、交易管理
9、什麼是JNDI
答:(Java Naming & Directory Interface)JAVA命名目錄服務。主要提供的功能是:提供一個目錄系統,讓其它各地的應用程式在其上面留下自己的索引,從而滿足快速尋找和定位分布式應用程式的功能。
10、什麼是JMS
答:(Java Message Service)JAVAMessage Service。主要實現各個應用程式之間的通訊。包括點對點和廣播。
11、什麼是JTA
答:(Java Transaction API)JAVA事務服務。提供各種分散式交易服務。應用程式只需調用其提供的介面即可。
12、什麼是JAF
答:(Java Action FrameWork)JAVA安全認證架構。提供一些安全控制方面的架構。讓開發人員通過各種部署和自訂實現自己的個性安全控制策略。
RMI/IIOP:(Remote Method Invocation /internet對象請求中介協議)他們主要用於通過遠程調用服務。例如,遠程有一台電腦上運行一個程式,它提供股票分析服務,我們可以在本機電腦上實現對其直接調用。當然這是要通過一定的規範才能在異構的系統之間進行通訊。RMI是JAVA特有的。
13、MVC的各個部分都有那些技術來實現?如何??
答:MVC是Model-View-Controller的簡寫。"Model" 代表的是應用的商務邏輯(通過JavaBean,EJB組件實現), "View" 是應用的表示面(由JSP頁面產生),"Controller" 是提供應用的處理過程式控制制(一般是一個Servlet),通過這種設計模型把應用邏輯,處理過程和顯示邏輯分成不同的組件實現。這些組件可以進行互動和重用。
14、開發中都用到了那些設計模式?用在什麼場合?
答:每個模式都描述了一個在我們的環境中不斷出現的問題,然後描述了該問題的解決方案的核心。通過這種方式,你可以無數次地使用那些已有的解決方案,無需在重複相同的工作。主要用到了MVC的設計模式。用來開發JSP/Servlet或者J2EE的相關應用。簡單原廠模式等。
15、說說你所熟悉或聽說過的j2ee中的幾種常用模式?及對設計模式的一些看法
答:Session Facade Pattern:使用SessionBean訪問EntityBean
Message Facade Pattern:實現非同步呼叫
EJB Command Pattern:使用Command JavaBeans取代SessionBean,實現輕量級訪問
Data Transfer Object Factory:通過DTO Factory簡化EntityBean資料提供特性
Generic Attribute Access:通過AttibuteAccess介面簡化EntityBean資料提供特性
Business Interface:通過遠程(本地)介面和Bean類實現相同介面規範商務邏輯一致性
EJB架構的設計好壞將直接影響系統的效能、可擴充性、可維護性、組件可重用性及開發效率。項目越複雜,項目隊伍越龐大則越能體現良好設計的重要性。
16、j2ee常用的設計模式?說明原廠模式。
答:Java中的23種設計模式:
Factory(原廠模式), Builder(建造模式), Factory Method(Factory 方法模式),
Prototype(原始模型模式),Singleton(單例模式), Facade(門面模式),
Adapter(適配器模式), Bridge(橋樑模式), Composite(合成模式),
Decorator(裝飾模式), Flyweight(享元模式), Proxy(代理模式),
Command(命令模式), Interpreter(解譯器模式), Visitor(訪問者模式),
Iterator(迭代子模式), Mediator(調停者模式), Memento(備忘錄模式),
Observer(觀察者模式), State(狀態模式), Strategy(策略模式),
Template Method(模板方法模式), Chain Of Responsibleity(責任鏈模式)
原廠模式:原廠模式是一種經常被使用到的模式,根據原廠模式實現的類可以根據提供的資料產生一組類中某一個類的執行個體,通常這一組類有一個公用的抽象父類並且實現了相同的方法,但是這些方法針對不同的資料進行了不同的操作。首先需要定義一個基類,該類的子類通過不同的方法實現了基類中的方法。然後需要定義一個工廠類,工廠類可以根據條件產生不同的子類執行個體。當得到子類的執行個體後,開發人員可以調用基類中的方法而不必考慮到底返回的是哪一個子類的執行個體。
17、UML方面
答:標準建模語言UML。使用案例圖,靜態圖(包括類圖、對象圖和包圖),行為圖,互動圖(順序圖,合作圖),實現圖,
18、CORBA是什麼?用途是什麼?
答:CORBA 標準是公用對象請求代理結構(Common Object Request Broker Architecture),由對象管理組織 (Object Management Group,縮寫為 OMG)標準化。它的組成是介面定義語言(IDL), 語言綁定(binding:也譯為聯編)和允許應用程式間互操作的協議。 其目的為:
用不同的程式設計語言書寫
在不同的進程中運行
為不同的作業系統開發
19、LINUX下線程,GDI類的解釋。
答:LINUX實現的就是基於核心輕量級進程的"一對一"執行緒模式,一個線程實體對應一個核心輕量級進程,而線程之間的管理在核外函數庫中實現。
GDI類為映像裝置編程介面類庫。
134、LINUX下線程,GDI類的解釋。
LINUX實現的就是基於核心輕量級進程的"一對一"執行緒模式,一個線程實體對應一個核心輕量級進程,而線程之間的管理在核外函數庫中實現。
GDI類為映像裝置編程介面類庫。