軟件工程師面試題(含答案)94433_第1頁
軟件工程師面試題(含答案)94433_第2頁
軟件工程師面試題(含答案)94433_第3頁
軟件工程師面試題(含答案)94433_第4頁
軟件工程師面試題(含答案)94433_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、你對 MVC 的理解 ,MVC 有什么優(yōu)缺點 ?結(jié)合 Struts ,說明在一個 Web 應(yīng)用如何去使 用?答:MVC 設(shè)計模式 ( 應(yīng)用觀察者模式的框架模式 )M: Model(Business process layer) , 模型 , 操作數(shù)據(jù)的業(yè)務(wù)處理層, 并獨立于表現(xiàn)層(Independent of presentation) 。V: View(Presentation layer) , 視圖 ,通過客戶端數(shù)據(jù)類型顯示數(shù)據(jù) ,并回顯模型層的執(zhí)行結(jié) 果。C: Controller(Control layer) ,控制器 ,也就是視圖層和模型層橋梁 ,控制數(shù)據(jù)的流向 , 接 受視圖層發(fā)出

2、的事件 , 并重繪視圖MVC 框架的一種實現(xiàn)模型模型二 (Servlet-centric) :JSP+Servlet+JavaBean ,以控制為核心,JSP只負責顯示和收集數(shù)據(jù) ,Sevlet,連接視圖和模型 , 將視圖層數(shù)據(jù) , 發(fā)送給模型層 , JavaBean, 分為業(yè)務(wù)類和數(shù)據(jù)實體 , 業(yè)務(wù)類處理業(yè) 務(wù)數(shù)據(jù) , 數(shù)據(jù)實體 ,承載數(shù)據(jù) ,基本上大多數(shù)的項目都是使用這種 MVC 的實現(xiàn)模式 。StrutsMVC 框架 (Web application frameworks)Struts 是使用 MVC 的實現(xiàn)模式二來實現(xiàn)的 ,也就是以控制器為核心Struts 提供了一些組件使用 MVC

3、開發(fā)應(yīng)用程序Model : Struts 沒有提供 model 類。 這個商業(yè)邏輯必須由 Web 應(yīng)用程序的開發(fā)者以JavaBean 或 EJB 的形式提供View : Struts 提供了 action form 創(chuàng)建 form bean, 用于在 controller 和 view 間傳輸數(shù)據(jù) 。此外,Struts提供了自定義JSP標簽庫,輔助開發(fā)者用JSP創(chuàng)建交互式的以表單為基礎(chǔ)的應(yīng) 用程序 , 應(yīng)用程序資源文件保留了一些文本常量和錯誤消息 , 可轉(zhuǎn)變?yōu)槠渌Z言 , 可用于 JSP 中。Controller :Struts 提供了一個核心的控制器 ActionServlet , 通過這個

4、核心的控制器來調(diào)用 其他用戶注冊了的自定義的控制器 Action , 自定義 Action 需要符合 Struts 的自定義 Action 規(guī)范 , 還需要在 struts-config.xml 的特定配置文件中進行配置 , 接收 JSP 輸入字段形成 Action form ,然后調(diào)用一個 Action 控制器 。 Action 控制器中提供了 model 的邏輯接口 。二、什么是 WebService ?答:WebService是一個SOA (面向服務(wù)的編程)的架構(gòu),它是不依賴于語言,不依賴于平 臺, 可以實現(xiàn)不同的語言間的相互調(diào)用 ,通過 Internet 進行基于 Http 協(xié)議的網(wǎng)絡(luò)

5、應(yīng)用間的 交互 。WebService 實現(xiàn)不同語言間的調(diào)用 , 是依托于一個標準 , webservice 是需要遵守 WSDL ( web 服務(wù)定義語言 ) /SOAP (簡單請求協(xié)議 ) 規(guī)范的 。WebService=WSDL+SOAP+UDDI(webservice 的注冊 )Soap 是由 Soap 的 part 和 0 個或多個附件組成 , 一般只有 part , 在 part 中有 Envelope 和 Body 。Web Service 是通過提供標準的協(xié)議和接口 ,可以讓不同的程序集成的一種 SOA 架構(gòu) 。Web Service 的優(yōu)點可以讓異構(gòu)的程序相互訪問 (跨平臺

6、)松耦合基于標準協(xié)議 ( 通用語言 , 允許其他程序訪問 )Web Service 的基本原理Service Provider 采用 WSDL 描述服務(wù)Service Provider 采用 UDDI 將服務(wù)的描述文件發(fā)布到 UDDI 服務(wù)器 ( Register server )Service Requestor 在 UDDI 服務(wù)器上查詢并 獲取 WSDL 文件Service requestor 將請求綁定到 SOAP ,并訪問相應(yīng)的服務(wù) 。三、什么是中間件 ?中間件就是程序中可織入的 ,可重用的 , 與業(yè)務(wù)邏輯無關(guān)的各種組件 。中間件 ( middleware )是基礎(chǔ)軟件的一大類 ,屬

7、于可復(fù)用軟件的范疇 。顧名思義 , 中 間件處于操作系統(tǒng)軟件與用戶的應(yīng)用軟件的中間 。 中間件在操作系統(tǒng) 、網(wǎng)絡(luò)和數(shù)據(jù)庫之 上, 應(yīng)用軟件的下層 ,總的作用是為處于自己上層的應(yīng)用軟件提供運行與開發(fā)的環(huán)境, 幫助用戶靈活 、 高效地開發(fā)和集成復(fù)雜的應(yīng)用軟件 。在眾多關(guān)于中間件的定義中 ,比較普遍被接受的是 IDC 表述的 :中間件是一種獨立的 系統(tǒng)軟件或服務(wù)程序 , 分布式應(yīng)用軟件借助這種軟件在不同的技術(shù)之間共享資源 ,中間件 位于客戶機服務(wù)器的操作系統(tǒng)之上 , 管理計算資源和網(wǎng)絡(luò)通信 。分類 :數(shù)據(jù)訪問中間件 ,遠程調(diào)用中間件 ,消息中間件 ,交易中間件 ,對象中間件 。舉例 :1 , RMI

8、 ( Remote Method Invocations,遠程調(diào)用 )2,Load Balancing( 負載均衡 , 將訪問負荷分散到各個服務(wù)器中 )3, Transparent Fail-over( 透明的故障切換 )4, Clustering( 集群 ,用多個小的服務(wù)器代替大型機 )5, Back-end-Integration( 后端集成 ,用現(xiàn)有的 、 新開發(fā)的系統(tǒng)如何去集成遺留的系統(tǒng) )6,Transaction 事務(wù)(全局 /局部 )全局事務(wù) (分布式事務(wù) )局部事務(wù) (在同一數(shù)據(jù)庫聯(lián)接內(nèi)的事務(wù) )7, Dynamic Redeployment( 動態(tài)重新部署 ,在不停止原系統(tǒng)的

9、情況下 , 部署新的系統(tǒng) )8, System Management( 系統(tǒng)管理 )9, Threading( 多線程處理 ),Message-oriented Middleware面向消息的中間件 ( 異步的調(diào)用編程 ), Component Life Cycle( 組件的生命周期管理 ),Resource pooling ( 資源池 ),Security ( 安全 ),Caching (緩存 )四、什么是典型的軟件三層結(jié)構(gòu) ?軟件設(shè)計為什么要分層 ?軟件分層有什么好處 ?答: (1) Presentation layer ( 表示層 )(1)表示邏輯 ( 生成界面代碼 )(2)接收請求處理

10、業(yè)務(wù)層拋出的異常負責規(guī)則驗證 ( 數(shù)據(jù)格式 , 數(shù)據(jù)非空等 )流程控制(2) Service layer (服務(wù)層 / 業(yè)務(wù)層 )封裝業(yè)務(wù)邏輯處理 ,并且對外暴露接口負責事務(wù) , 安全等服務(wù)(3) Persistence layer ( 持久層 )(1) 封裝數(shù)據(jù)訪問的邏輯 , 暴露接口(2) 提供方便的數(shù)據(jù)訪問的方案 (查詢語言 , API ,映射機制等 )Domain layer (域?qū)?)(1) 業(yè)務(wù)對象以及業(yè)務(wù)關(guān)系的表示(2) 處理簡單的業(yè)務(wù)邏輯域?qū)拥膶ο罂梢源┰奖硎緦?,業(yè)務(wù)層 ,持久層軟件分層結(jié)構(gòu)使得代碼維護非常方便 , 設(shè)計明確 , 各層獨立 , 專注自己擅長的領(lǐng)域五、什么是 O

11、OP ?OOP 相對于面向過程編程有哪些優(yōu)點 ?OOP ,Object-Oriented Programming ,面向?qū)ο缶幊滩煌诿嫦蜻^程編程(1)OOP 關(guān)注對象和角色 , 也就是事物的本質(zhì)OOP 把客觀世界中的對象抽象成對應(yīng)的類 ;通過類構(gòu)造實例 ;通過依賴 、繼承 、實現(xiàn)等形式建立對象間的通信關(guān)系2) OOP 易于擴展 ,增加或改變業(yè)務(wù)的功能 , 無需大幅改動改變源代碼再現(xiàn) ,人們可以很好地理解和建立起計算機中的抽象模型六、談?wù)?Overload 和 Override 的區(qū)別 。答:方法的重寫 Overriding 和重載 Overloading 是 Java 多態(tài)性的不同表現(xiàn) 。

12、重寫 Overriding 是父類與子類之間多態(tài)性的一種表現(xiàn) , 重載 Overloading 是一個類中多態(tài)性的 一種表現(xiàn) 。如果在子類中定義某方法與其父類有相同的名稱和參數(shù) , 我們說該方法被重寫 (Overriding) 。子類的對象使用這個方法時 , 將調(diào)用子類中的定義 ,對它而言 ,父類中的定 義如同被 “屏蔽 ”了。如果在一個類中定義了多個同名的方法 ,它們或有不同的參數(shù)個數(shù)或 有不同的參數(shù)類型 ,則稱為方法的重載 (Overloading) 。 Overloaded 的方法是可以改變返回 值的類型 。七、談?wù)?HashMap 和 Hashtable 的區(qū)別 。答: HashMap

13、 是輕量級的 (線程不安全的 ,效率高的 )集合 , Hashtable 是重量級的 (線程安全的 ,效率低的 )集合 。都屬于 Map 接口的類 , 實現(xiàn)了將惟一鍵映射到特定的值上 。HashMap 類沒有分類或者排序 。 它允許一個 null 鍵和多個 null 值。Hashtable 類似于 HashMap , 但是不允許 null 鍵和 null 值 。 它也比 HashMap 慢, 因為它是同步的 。八、請問 abstract class 和 interface 有什么區(qū)別 ?答:1) 接口沒有任何的實現(xiàn) ,而抽象類它可以有部分的實現(xiàn)也可以沒有;2) 如果需要復(fù)用或者共享部分代碼 ,

14、應(yīng)該用抽象類而不是接口 ;3) 繼承無法解決類型的轉(zhuǎn)換問題 ,接口就是為了解決這一問題而產(chǎn)生的(Java 的單繼承是接口產(chǎn)生的根本原因 ) 接口是一種抽象的第三方規(guī)范 ,跟對象沒什么直接關(guān)系 。九、請問軟件開發(fā)中的設(shè)計模式你會使用哪些 ? 答:我熟悉的設(shè)計模式有單例模式 ,DAO 模式 ,模板方法 ,工廠模式 ,委托代理模式 , MVC 模式等 。Singleton 模式主要作用是保證在 Java 應(yīng)用程序中 , 一個類 Class 只有一個實例存在 。Singleton 模式一般形式 :定義一個類 ,它的構(gòu)造函數(shù)為 private 的,它有一個 static 的 private 的該類變量

15、, 在 類初始化時實例話 ,通過一個 public 的 getInstance 方法獲取對它的引用 ,繼而調(diào)用其中的 方法 。十、 類的核心特性有哪些 ?類具有封裝性 、繼承性和多態(tài)性 。封裝性 :類的封裝性為類的成員提供公有 、缺省 、保護和私有等多級訪問權(quán)限 ,目的是隱藏類 中的私有變量和類中方法的實現(xiàn)細節(jié) 。繼承性 :類的繼承性提供從已存在的類創(chuàng)建新類的機制,繼承 ( inheritance )使一個新類自動 擁有被繼承類 (父類 )的全部成員多態(tài)性 :類的多態(tài)性提供類中方法執(zhí)行的多樣性, 多態(tài)性有兩種表現(xiàn)形式 : 重載和覆蓋 。十一 、 請問類與對象有什么區(qū)別 ?類類就是某一種事物的一

16、般性的集合體 , 是相同或相似的各個事物共同特性的一種抽 象。對象在面向?qū)ο蟾拍钪?, 對象 ( Object ) 是類的實例 ( instance )。 對象與類的關(guān)系就像 變量與數(shù)據(jù)類型的關(guān)系一樣 。十二 、寫出生產(chǎn)者消費者模型的實現(xiàn)十三、用軟件工程和Java來敘述購物車(shopping cart )系統(tǒng)實現(xiàn)十四 、 文件系統(tǒng)的幾個類 :FileInputStream 、 FileOutputStream 、 FileReader 、 FileWriter 的 區(qū)別十五、 請寫出 Java API 中最常用的五個包 ,并且各舉兩個類加以說明 。十六 、 請問你在 “電信運營支撐系統(tǒng) ”中

17、遇到了哪些問題 ?你是怎么解決的 ? 做這個項目你 最大的收獲是什么 ?十七 、 請說出幾個常用的異常類答: NullpointException ( 空指針異常 )ClassNotFoundException ( 類找不到異常 )ClassCastException ( 類型轉(zhuǎn)換異常 )IllegalArgumentException ( 非法參數(shù)異常 )ArithmeticException (算術(shù)異常 )NumberFormatException ( 數(shù)據(jù)格式異常 )IndexOutOfBoundsException (數(shù)組下標越界異常 )IllegalStateException (

18、非法語句異常 )十八 、什么是進程和線程 ?兩者的區(qū)別是什么 ?十九 、請簡要描述一下你做的 ShoppingCart 項目 。二十、請問網(wǎng)絡(luò) 7層協(xié)議 ,tcp/ip4 層協(xié)議是什么 ?二十一 、Java 面向?qū)ο蟮乃拇筇攸c二十二 、 public,private,protected ,default 訪問權(quán)限 ( 可見性 ) 答:public : 全局可見protected : 繼承體系結(jié)構(gòu)之間可見default (或不寫 ): 同包可見private :本類可見 。二十三 、 名詞解釋CRMCustomer Relationship Management, 客戶關(guān)系管理 ERPEnter

19、prise Resource Planning,企業(yè)資源規(guī)劃 OSSOperation Support System, 運營支撐系統(tǒng) BSSBusiness Support System, 數(shù)據(jù)定義語言 BOSSBusiness Operation Support System,數(shù)據(jù)定義語言 OAOffice Automatization,辦公自動化 HTTPOOPSOAGUIDDLData Definition Language, 數(shù)據(jù)定義語言 DMLData Manipulation Language, 數(shù)據(jù)操作語言 WYSIWYG所見即所得 What You See is What Yo

20、u GetCMPCMTB2BC2CB2CIDEDOMClient/ServerCMMORMMISMVCMVC 是 Model View Controller 的簡寫。Model 代表的是應(yīng)用的業(yè)務(wù)邏輯(通過JavaBean , EJB組件實現(xiàn)),View 是應(yīng)用的表示面 (由JSP頁面產(chǎn)生),Controller 是提供應(yīng)用的處理過程控制 (一般是一個 Servlet), 通過這種設(shè)計模型把應(yīng)用邏輯 ,處理 過程和顯示邏輯分成不同的組件實現(xiàn) 。 這些組件可以進行交互和重用 。OLECORBACORBA 標準是公共對象請求代理結(jié)構(gòu) (Common Object Request Broker Ar

21、chitecture) , 由對象管理組織 (Object Management Group , 縮寫為 OMG) 標準化 。 它的組成是接口定 義語言 (IDL), 語言綁定 (binding: 也譯為聯(lián)編 )和允許應(yīng)用程序間互操作的協(xié)議。 其目的為:用不同的程序設(shè)計語言書寫在不同的進程中運行 為不同的操作系統(tǒng)開發(fā) 。UMLUML , 標準建模語言 , 包含用例圖 ,靜態(tài)圖 (包括類圖 、對象圖和包圖 ),行為圖 ,交互圖 (順 序圖,合作圖),實現(xiàn)圖等 。XMLCMMIJREJ2EEJ2EE 是 Sun 公 司 提 出 的 多 層 (multi-diered), 分 布 式 (distri

22、buted), 基 于 組 件 (component-base) 的企業(yè)級應(yīng)用模型 (enterpriese application model). 在這樣的一個應(yīng)用系 統(tǒng)中 , 可按照功能劃分為不同的組件 ,這些組件又可在不同計算機上 , 并且處于相應(yīng)的層 次(tier)中。所屬層次包括客戶層(clietn tier)組件,web層和組件,Business層和組件,企業(yè)信息 系統(tǒng)(EIS)層。JDKAOPOOContainerW3CJMSDomainPOJOJVMJNDIJTASOAPSimple Object Access Protocol , 簡單對象訪問協(xié)議 WSDLJDOJDO是Ja

23、va對象持久化的新的規(guī)范,為Java Data Object的簡稱 也是一個用于存取某種 數(shù)據(jù)倉庫中的對象的標準化API。 J DO 提供了透明的對象存儲 , 因此對開發(fā)人員來說 , 存儲數(shù)據(jù)對象完全不需要額外的代碼(如JDBC API的使用)。這些繁瑣的例行工作已經(jīng)轉(zhuǎn)移到 JDO 產(chǎn)品提供商身上 , 使開發(fā)人員解脫出來 , 從而集中時間和精力在業(yè)務(wù)邏輯上 。 另 外 , JDO 很靈活 , 因為它可以在任何數(shù)據(jù)底層上運行。 JDBC 只是面向關(guān)系數(shù)據(jù)庫(RDBMS)JDO 更通用 , 提供到任何數(shù)據(jù)底層的存儲功能 , 比如關(guān)系數(shù)據(jù)庫 、文件 、XML 以及對象數(shù)據(jù)庫 ( ODBMS ) 等等

24、 ,使得應(yīng)用可移植性更強 。TDDDAOIoCInversion of Control, 控制反轉(zhuǎn) RMIDNSInternet Domain Name System, 因特網(wǎng)域名系統(tǒng) URLURI二十四 、數(shù)據(jù)庫連接池的工作機制二十五 、 互聯(lián)網(wǎng)提供哪些服務(wù) ?二十六、請寫出JSP的幾個隱含內(nèi)置對象 答:JSP中隱含內(nèi)置對象名稱類型注釋和范圍requestjavax.servlet.http.HttpServletRequestrequestresponsejavax.servlet.http.HttpServletResponseresponsepagepageExceptionpagep

25、ageContextpagesessionjavax.servlet.http.HttpSessionsessionapplicationServletContextoutOutputStreamconfigServletConfigJSP共有以下9種基本內(nèi)置組件 (可與ASP的6種內(nèi)部組件相對應(yīng)) request用戶端請求 ,此請求會包含來自 GET/POST 請求的參數(shù)response 網(wǎng)頁傳回用戶端的回應(yīng)page JSP網(wǎng)頁本身exception針對錯誤網(wǎng)頁 ,未捕捉的例外pageContext 網(wǎng)頁的屬性是在這里管理session與請求有關(guān)的會話期application servlet

26、 正在執(zhí)行的內(nèi)容out用來傳送回應(yīng)的輸出config Servlet 的構(gòu)架部件 二十七 、請你談?wù)?SSH 整合答: SSH:Struts (表示層)+Spring (業(yè)務(wù)層)+Hibernate(持久層)Struts :Struts 是一個表示層框架 ,主要作用是界面展示 , 接收請求 ,分發(fā)請求 。在 MVC 框架中 ,Struts 屬于 VC 層次 ,負責界面表現(xiàn) ,負責 MVC 關(guān)系的分發(fā) 。 ( View :沿用 JSP,HTTP,F(xiàn)orm , Tag ,Resourse ;Controller :ActionServlet , struts-config.xml ,Action

27、)Hibernate :Hibernate 是一個持久層框架 ,它只負責與關(guān)系數(shù)據(jù)庫的操作 。Spring :Spring 是一個業(yè)務(wù)層框架 , 是一個整合的框架 ,能夠很好地黏合表示層與持久層 。二十八 、 應(yīng)用服務(wù)器與 Web Server 的區(qū)別二十九 、 Java Servlet API 中 forward() 與 redirect() 的區(qū)別 答:前者僅是容器中控制權(quán)的轉(zhuǎn)向, 在客戶端瀏覽器地址欄中不會顯示出轉(zhuǎn)向后的地址;后者則是完全的跳轉(zhuǎn) ,瀏覽器將會得到跳轉(zhuǎn)的地址 ,并重新發(fā)送請求鏈接 。這樣 ,從瀏覽 器的地址欄中可以看到跳轉(zhuǎn)后的鏈接地址 。所以 , 前者更加高效 ,在前者可以

28、滿足需要 時,盡量使用 forward() 方法 ,并且 ,這樣也有助于隱藏實際的鏈接 。在有些情況下 ,比 如,需要跳轉(zhuǎn)到一個其它服務(wù)器上的資源 ,則必須使用 sendRedirect() 方法 。三十、寫一個簡單的C/S結(jié)構(gòu)程序,Java的通信編程,編程題(或問答),用JAVA SOCKET 編程 , 讀服務(wù)器幾個字符 , 再寫入本地顯示 ? 答:Server端程序: package test;import .*;import java.io.*;public class Serverprivate ServerSocket ss;private Socket socket;private

29、 BufferedReader in;private PrintWriter out;public Server()tryss=new ServerSocket(10000);while(true)socket = ss.accept();String RemoteIP = socket.getInetAddress().getHostAddress();String RemotePort = :+socket.getLocalPort();System.out.println(A client come in!IP:+RemoteIP+RemotePort);in = new Buffere

30、dReader(newInputStreamReader(socket.getInputStream();String line = in.readLine();System.out.println(Cleint send is : + line);out = new PrintWriter(socket.getOutputStream(),true);out.println(Your Message Received!);out.close();in.close();socket.close();catch (IOException e)out.println(wrong);public s

31、tatic void main(String args)new Server();Client 端程序 : package test;import java.io.*;import .*;public class ClientSocket socket;BufferedReader in;PrintWriter out;public Client()trySystem.out.println(Try to Connect to :10000);socket = new Socket(,10000);System.out.println(The Server Connected!);System

32、.out.println(Please enter some Character:);BufferedReader line = new BufferedReader(newInputStreamReader(System.in);out = new PrintWriter(socket.getOutputStream(),true);out.println(line.readLine();in = new BufferedReader(new InputStreamReader(socket.getInputStream();System.out.println(in.readLine();

33、out.close();in.close();socket.close();catch(IOException e)out.println(Wrong);public static void main(String args)new Client();委托代理模式 ,個實例存在九、 請問軟件開發(fā)中的設(shè)計模式你會使用哪些 ? 答:我熟悉的設(shè)計模式有單例模式 ,DAO 模式 ,模板方法 ,工廠模式 , MVC 模式等 。Singleton 模式主要作用是保證在 Java 應(yīng)用程序中 , 一個類 Class 只有一 Singleton 模式一般形式 :類初始化時實例話 ,通過一個 public 的

34、getInstance 方法獲取對它的引用 ,繼而調(diào)用其中的 方法 。十、 類的核心特性有哪些 ?類具有封裝性 、繼承性和多態(tài)性 。封裝性 :類的封裝性為類的成員提供公有 、缺省 、保護和私有等多級訪問權(quán)限 ,目的是隱藏類 中的私有變量和類中方法的實現(xiàn)細節(jié) 。繼承性 :類的繼承性提供從已存在的類創(chuàng)建新類的機制 ,繼承 (inheritance )使一個新類自動 擁有被繼承類 (父類 )的全部成員 。多態(tài)性 :類的多態(tài)性提供類中方法執(zhí)行的多樣性 , 多態(tài)性有兩種表現(xiàn)形式 : 重載和覆蓋 。 十一 、 請問類與對象有什么區(qū)別 ?類類就是某一種事物的一般性的集合體 , 是相同或相似的各個事物共同特性

35、的一種抽 象。對象在面向?qū)ο蟾拍钪?,對象 ( Object )是類的實例 (instance )。 對象與類的關(guān)系就像 變量與數(shù)據(jù)類型的關(guān)系一樣 。十二 、寫出生產(chǎn)者消費者模型的實現(xiàn)十三 、 用軟件工程和 Java 來敘述購物車 (shopping cart )系統(tǒng)實現(xiàn)十四 、文件系統(tǒng)的幾個類 :FileInputStream 、 FileOutputStream 、 FileReader 、 FileWriter 的 區(qū)別十五、請寫出 Java API 中最常用的五個包 ,并且各舉兩個類加以說明 。十六、請問你在 “電信運營支撐系統(tǒng) ”中遇到了哪些問題 ?你是怎么解決的 ?做這個項目你 最

36、大的收獲是什么 ?十七 、請說出幾個常用的異常類答: NullpointException ( 空指針異常 )ClassNotFoundException ( 類找不到異常 )ClassCastException ( 類型轉(zhuǎn)換異常 )IllegalArgumentException ( 非法參數(shù)異常 )ArithmeticException (算術(shù)異常 )NumberFormatException ( 數(shù)據(jù)格式異常 )IndexOutOfBoundsException ( 數(shù)組下標越界異常 )IllegalStateException ( 非法語句異常 )十八 、什么是進程和線程 ?兩者的區(qū)別

37、是什么 ?十九 、請簡要描述一下你做的 ShoppingCart 項目 。二十、請問網(wǎng)絡(luò) 7層協(xié)議 ,tcp/ip4 層協(xié)議是什么 ?二十一 、Java 面向?qū)ο蟮乃拇筇攸c二十二 、 public,private,protected ,default 訪問權(quán)限 (可見性 ) 答:public : 全局可見protected : 繼承體系結(jié)構(gòu)之間可見default (或不寫 ): 同包可見private : 本類可見 。二十三 、 名詞解釋CRMCustomer Relationship Management,客戶關(guān)系管理 ERPEnterprise Resource Planning,企業(yè)資源

38、規(guī)劃 OSSOperation Support System, 運營支撐系統(tǒng) BSSBusiness Support System, 數(shù)據(jù)定義語言 BOSSBusiness Operation Support System, 數(shù)據(jù)定義語言 OAOffice Automatization,辦公自動化 HTTPOOPSOAGUIDDLData Definition Language, 數(shù)據(jù)定義語言 DMLData Manipulation Language, 數(shù)據(jù)操作語言 WYSIWYG所見即所得 What You See is What You GetCMPCMTB2BC2CB2CIDEDOMC

39、lient/ServerCMMORMMISMVCMVC 是 Model ViewController 的簡寫 。 Model 代表的是應(yīng)用的業(yè)務(wù)邏輯 (通過JavaBean , EJB組件實現(xiàn)),View是應(yīng)用的表示面(由JSP頁面產(chǎn)生),Controller是提供應(yīng)用的處理過程控制 (一般是一個 Servlet ), 通過這種設(shè)計模型把應(yīng)用邏輯 , 處理 過程和顯示邏輯分成不同的組件實現(xiàn) 。這些組件可以進行交互和重用 。OLECORBACORBA 標準是公共對象請求代理結(jié)構(gòu) (Common Object Request BrokerArchitecture) ,由對象管理組織 (Object

40、 Management Group, 縮寫為 OMG) 標準化 。 它的組成是接口定義語言 (IDL), 語言綁定 (binding: 也譯為聯(lián)編 )和允許應(yīng)用程序間互操作的協(xié) 議。 其目的為 :用不同的程序設(shè)計語言書寫 在不同的進程中運行 為不同的操作系統(tǒng)開發(fā) 。UMLUML ,標準建模語言 ,包含用例圖 ,靜態(tài)圖(包括類圖 、對象圖和包圖 ),行為圖,交互圖(順 序圖,合作圖),實現(xiàn)圖等 。XMLCMMIJREJ2EEJ2EE 是 Sun 公司提出的多層 (multi-diered), 分布式 (distributed), 基于組件(component-base) 的企業(yè)級應(yīng)用模型 (en

41、terpriese application model). 在這樣的一個應(yīng)用系 統(tǒng)中 ,可按照功能劃分為不同的組件 ,這些組件又可在不同計算機上 ,并且處于相應(yīng)的層 次(tier)中。所屬層次包括客戶層(clietn tier)組件,web層和組件,Bus in ess層和組件,企業(yè)信息 系統(tǒng)(EIS)層。JDKAOPOOContainerW3CJMSDomainPOJOJVMJNDIJTASOAPSimple Object Access Protocol, 簡單對象訪問協(xié)議 WSDLJDOJDO 是 Java 對象持久化的新的規(guī)范 ,為 Java Data Object 的簡稱 ,也是一個用

42、于存取某種 數(shù)據(jù)倉庫中的對象的標準化 API。 JDO 提供了透明的對象存儲 ,因此對開發(fā)人員來說 , 存 儲數(shù)據(jù)對象完全不需要額外的代碼(如JDBC API的使用)。這些繁瑣的例行工作已經(jīng)轉(zhuǎn)移到 JDO 產(chǎn)品提供商身上 ,使開發(fā)人員解脫出來 ,從而集中時間和精力在業(yè)務(wù)邏輯上 。 另 外,JDO很靈活,因為它可以在任何數(shù)據(jù)底層上運行。JDBC只是面向關(guān)系數(shù)據(jù)庫(RDBMS)JDO 更通用 ,提供到任何數(shù)據(jù)底層的存儲功能 , 比如關(guān)系數(shù)據(jù)庫 、文件 、XML 以及對象數(shù)據(jù)庫 ( ODBMS ) 等等 ,使得應(yīng)用可移植性更強 。TDDDAOIoCInversion of Control, 控制反轉(zhuǎn)

43、 RMIDNSInternet Domain Name System, 因特網(wǎng)域名系統(tǒng) URLURI二十四 、 數(shù)據(jù)庫連接池的工作機制二十五 、 互聯(lián)網(wǎng)提供哪些服務(wù) ?答:JSP中隱含內(nèi)置對象名稱類型requestjavax.servlet.http.HttpServletRequestresponsejavax.servlet.http.HttpServletResponsepageExceptionpageContextsessionjavax.servlet.http.HttpSessionapplicationoutconfig二十六、請寫出JSP的幾個隱含內(nèi)置對象注釋和范圍reque

44、stresponsepagepagepagesessionServletContextOutputStreamServletConfigJSP共有以下9種基本內(nèi)置組件 (可與ASP的6種內(nèi)部組件相對應(yīng))request 用戶端請求 , 此請求會包含來自 GET/POST 請求的參數(shù)response 網(wǎng)頁傳回用戶端的回應(yīng)page JSP網(wǎng)頁本身exception 針對錯誤網(wǎng)頁 , 未捕捉的例外pageContext 網(wǎng)頁的屬性是在這里管理session 與請求有關(guān)的會話期application servlet 正在執(zhí)行的內(nèi)容out 用來傳送回應(yīng)的輸出config Servlet 的構(gòu)架部件二十七

45、、請你談?wù)?SSH 整合答: SSH:Struts (表示層 ) +Spring ( 業(yè)務(wù)層 ) +Hibernate (持久層 )Struts :Struts 是一個表示層框架 , 主要作用是界面展示 ,接收請求 , 分發(fā)請求 。在 MVC 框架中 ,Struts 屬于 VC 層次 , 負責界面表現(xiàn) , 負責 MVC 關(guān)系的分發(fā) 。(View :沿用 JSP,HTTP,F(xiàn)orm , Tag , Resourse ; Controller : ActionServlet , struts-config.xml , Action )Hibernate :Hibernate 是一個持久層框架 ,

46、它只負責與關(guān)系數(shù)據(jù)庫的操作 。Spring :Spring 是一個業(yè)務(wù)層框架 , 是一個整合的框架 ,能夠很好地黏合表示層與持久層 二十八 、 應(yīng)用服務(wù)器與 Web Server 的區(qū)別 二十九 、 Java Servlet API 中 forward() 與 redirect() 的區(qū)別 答:前者僅是容器中控制權(quán)的轉(zhuǎn)向 , 在客戶端瀏覽器地址欄中不會顯示出轉(zhuǎn)向后的地址 ; 后者則是完全的跳轉(zhuǎn) ,瀏覽器將會得到跳轉(zhuǎn)的地址 ,并重新發(fā)送請求鏈接 。這樣 , 從瀏覽 器的地址欄中可以看到跳轉(zhuǎn)后的鏈接地址。所以 ,前者更加高效 ,在前者可以滿足需要時, 盡量使用 forward() 方法 , 并且 ,這樣也有助于隱藏實際的鏈接 。在有些情況下 ,比 如,需要跳轉(zhuǎn)到一個其它服務(wù)器上的資源,則必須使用 send

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論