中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      Java工程師面試常考試題及答案

      時(shí)間:2024-10-29 09:03:45 曉鳳 J2EE培訓(xùn) 我要投稿
      • 相關(guān)推薦

      Java工程師面試常考試題及答案

        在日常學(xué)習(xí)、工作生活中,只要有考核要求,就會(huì)有試題,借助試題可以更好地對(duì)被考核者的知識(shí)才能進(jìn)行考察測(cè)驗(yàn)。大家知道什么樣的試題才是好試題嗎?下面是小編為大家整理的Java工程師面試常考試題及答案,僅供參考,希望能夠幫助到大家。

      Java工程師面試常考試題及答案

        Java工程師面試常考試題及答案 1

        1.Hibernate工作原理及為什么要用?

        原理: 1.讀取并解析配置文件 2.讀取并解析映射信息,創(chuàng)建SessionFactory 3.打開Session 4.創(chuàng)建事務(wù)Transation 5.持久化操作 6.提交事務(wù) 7.關(guān)閉Session 8.關(guān)閉SesstionFactory

        為什么要用: 1. 對(duì)JDBC訪問數(shù)據(jù)庫(kù)的代碼做了封裝,大大簡(jiǎn)化了數(shù)據(jù)訪問層繁瑣的重復(fù)性代碼。 2. Hibernate是一個(gè)基于JDBC的主流持久化框架,是一個(gè)優(yōu)秀的ORM實(shí)現(xiàn)。他很大程度的簡(jiǎn)化DAO層的編碼工作 3. hibernate使用Java反射機(jī)制,而不是字節(jié)碼增強(qiáng)程序來實(shí)現(xiàn)透明性。 4. hibernate的性能非常好,因?yàn)樗莻(gè)輕量級(jí)框架。映射的靈活性很出色。它支持各種關(guān)系數(shù)據(jù)庫(kù),從一對(duì)一到多對(duì)多的各種復(fù)雜關(guān)系。

        2.Hibernate是如何延遲加載?

        1. Hibernate2延遲加載實(shí)現(xiàn):a)實(shí)體對(duì)象 b)集合(Collection)

        2. Hibernate3 提供了屬性的延遲加載功能 當(dāng)Hibernate在查詢數(shù)據(jù)的時(shí)候,數(shù)據(jù)并沒有存在與內(nèi)存中,當(dāng)程序真正對(duì)數(shù)據(jù)的操作時(shí),對(duì)象才存在與內(nèi)存中,就實(shí)現(xiàn)了延遲加載,他節(jié)省了服務(wù)器的內(nèi)存開銷,從而提高了服務(wù)器的性能。

        3.Hibernate中怎樣實(shí)現(xiàn)類之間的'關(guān)系?(如:一對(duì)多、多對(duì)多的關(guān)系)

        類與類之間的關(guān)系主要體現(xiàn)在表與表之間的關(guān)系進(jìn)行操作,它們都是對(duì)對(duì)象進(jìn)行操作,我們程序中把所有的表與類都映射在一起,它們通過配置文件中的many-to-one、one-to-many、many-to-many

        4.Struts1流程:

        1、客戶端瀏覽器發(fā)出HTTP請(qǐng)求。2、根據(jù)web.xml配置,該請(qǐng)求被ActionServlet接收。3、根據(jù)struts-config.xml配置, ActionServlet先將請(qǐng)求中的參數(shù)填充到ActionForm中,然后ActionServlet再將請(qǐng)求發(fā)送到Action 進(jìn)行處理。4、是否驗(yàn)證,需要驗(yàn)證則調(diào)用ActionForm的validate方法,驗(yàn)證失敗則跳轉(zhuǎn)到input,成功則繼續(xù)。5、Action從ActionForm獲得數(shù)據(jù),調(diào)用javabean 中的業(yè)務(wù)方法處理數(shù)據(jù)。6、Action返回ActionForward對(duì)象,跳轉(zhuǎn)到相應(yīng)JSP頁(yè)面或Action。7、返回HTTP響應(yīng)到客戶端瀏覽器。

        MVC設(shè)計(jì)模式:modal:“模型” 也稱業(yè)務(wù)邏輯,是正真完成任務(wù)的代碼,相當(dāng)與JavaBeanview:視圖,其實(shí)就是顯示界面,相當(dāng)于JSPcontroller:控制器,他控制模型和視圖的交互過程,相當(dāng)于servletstruts1是基于MVC設(shè)計(jì)模式hibernate是基于ORM對(duì)象關(guān)系映射

        5.struts是什么?

        struts1是基于JSP和servlet的一個(gè)開源的Web應(yīng)用框架,使用的是MVC的設(shè)計(jì)模式struts2是基于webwork技術(shù)的框架,是sun和webwork公司聯(lián)手開發(fā)的一個(gè)功能非常齊全的框架,struts2和struts1沒有任何關(guān)系,是一個(gè)全新的框架

        6.spring是什么?

        spring是一個(gè)集成了許多第三方框架的大雜燴,其核心技術(shù)是IOC(控制反轉(zhuǎn),也稱依賴注入)和AOP(面向切面編程)

        7.hibernate是什么?

        hibernate是基于ORM對(duì)象關(guān)系映射(完成對(duì)象數(shù)據(jù)到關(guān)系數(shù)據(jù)映射的機(jī)制)實(shí)現(xiàn)的,做數(shù)據(jù)持久化的工具

        8.JSF是什么?

        JavaServer Face是基于組件的web開發(fā)框架,跟sturts差不多的框架

        9.數(shù)據(jù)庫(kù)里面的索引和約束是什么?

        索引是為了提高數(shù)據(jù)的檢索速度,索引是建立在數(shù)據(jù)表上,根據(jù)一個(gè)或多個(gè)字段建立的約束是為了保持?jǐn)?shù)據(jù)的完整性,約束有非空約束,主鍵約束,外鍵約束等等。

        10.spring是什么

        這個(gè)問題,往往可以通過我們?yōu)槭裁匆褂胹pring這個(gè)問題來切入:AOP 讓開發(fā)人員可以創(chuàng)建非行為性的關(guān)注點(diǎn),稱為橫切關(guān)注點(diǎn),并將它們插入到應(yīng)用程序代碼中。使用 AOP 后,公共服務(wù) (比 如日志、持久性、事務(wù)等)就可以分解成方面并應(yīng)用到域?qū)ο笊希瑫r(shí)不會(huì)增加域?qū)ο蟮膶?duì)象模型的復(fù)雜性。 IOC 允許創(chuàng)建一個(gè)可以構(gòu)造對(duì)象的應(yīng)用環(huán)境,然后向這些對(duì)象傳遞它們的協(xié)作對(duì)象。正如單詞 倒置 所表明的,IOC 就像反 過來的 JNDI。沒有使用一堆抽象工廠、服務(wù)定位器、單元素(singleton)和直接構(gòu)造(straight construction),每一個(gè)對(duì)象都是用其協(xié)作對(duì)象構(gòu)造的。因此是由容器管理協(xié)作對(duì)象(collaborator)。 Spring即使一個(gè)AOP框架,也是一IOC容器。 Spring 最好的地方是它有助于您替換對(duì)象。有了 Spring,只要用 JavaBean 屬性和配置文件加入依賴性(協(xié)作對(duì)象)。然后可以很容易地在需要時(shí)替換具有類似接口的協(xié)作對(duì)象。

        11.用自己的話簡(jiǎn)要闡述struts2的執(zhí)行流程。

        Struts 2框架本身大致可以分為3個(gè)部分:核心控制器FilterDispatcher、業(yè)務(wù)控制器Action和用戶實(shí)現(xiàn)的企業(yè)業(yè)務(wù)邏輯組件。核心控制器FilterDispatcher是Struts 2框架的基礎(chǔ),包含了框架內(nèi)部的控制流程和處理機(jī)制。業(yè)務(wù)控制器Action和業(yè)務(wù)邏輯組件是需要用戶來自己實(shí)現(xiàn)的。用戶在開發(fā)Action和業(yè)務(wù)邏輯組件的同時(shí),還需要編寫相關(guān)的配置文件,供核心控制器FilterDispatcher來使用。

        Struts 2的工作流程相對(duì)于Struts 1要簡(jiǎn)單,與WebWork框架基本相同,所以說Struts 2是WebWork的升級(jí)版本。基本簡(jiǎn)要流程如下:1、客戶端瀏覽器發(fā)出HTTP請(qǐng)求。2、根據(jù)web.xml配置,該請(qǐng)求被FilterDispatcher接收。3、根據(jù)struts.xml配置,找到需要調(diào)用的Action類和方法, 并通過IoC方式,將值注入給Aciton。4、Action調(diào)用業(yè)務(wù)邏輯組件處理業(yè)務(wù)邏輯,這一步包含表單驗(yàn)證。5、Action執(zhí)行完畢,根據(jù)struts.xml中的配置找到對(duì)應(yīng)的返回結(jié)果result,并跳轉(zhuǎn)到相應(yīng)頁(yè)面。6、返回HTTP響應(yīng)到客戶端瀏覽器。

        Java工程師面試常考試題及答案 2

        一.選擇題(30分)

        1.下列哪些情況可以終止當(dāng)前線程的運(yùn)行?

        a. 拋出一個(gè)異常時(shí)。

        b. 當(dāng)該線程調(diào)用sleep()方法時(shí)。

        c. 當(dāng)創(chuàng)建一個(gè)新線程時(shí)。(與當(dāng)前進(jìn)程無關(guān))

        d. 當(dāng)一個(gè)優(yōu)先級(jí)高的線程進(jìn)入就緒狀態(tài)時(shí)。

        2. 下面哪些為構(gòu)造函數(shù)的特性定義

        a. 在類中聲明構(gòu)造函數(shù)時(shí),名稱應(yīng)該與類名相同

        b. 具有重載特性,可以建立多個(gè)相同的名稱

        c. 使用類建立新對(duì)象時(shí),會(huì)自動(dòng)執(zhí)行構(gòu)造函數(shù),因此在構(gòu)造函

        數(shù)內(nèi)設(shè)定變量的初值或進(jìn)行內(nèi)存分配

        d. 以上都是

        3. 關(guān)于異常處理機(jī)制的敘述哪些正確

        a. catch部分捕捉到異常情況時(shí),才會(huì)執(zhí)行finally部分(無論是否有毛病,都執(zhí)行)

        b. 當(dāng)try區(qū)段的程序發(fā)生異常時(shí),才會(huì)執(zhí)行catch區(qū)段的程序

        c. 不論程序是否發(fā)生錯(cuò)誤及捕捉到異常情況,都會(huì)執(zhí)行finally部分

        d. 以上都是

        4. 下列關(guān)于接口的敘述中哪些是正確的

        a. 接口中的數(shù)據(jù)必須設(shè)定初值(就是接口中的常量)

        b. 接口中的方法都是抽象方法

        c. 接口可以聲明引用

        d. 以上都正確

        5.Java語言中,方法的重寫(Overriding)和重載(Overloading)是多態(tài)性的不同表現(xiàn)。下邊哪些說法是對(duì)的?

        A. 重寫是父類與子類之間多態(tài)性的一種表現(xiàn)。

        B. 重寫是一個(gè)類中多態(tài)性的一種表現(xiàn)。

        C. 重載是一個(gè)類中多態(tài)性的一種表現(xiàn)。

        D. 重載是父類與子類之間多態(tài)性的一種表現(xiàn)。

        6.在Struts應(yīng)用的視圖中包含哪些組件?

        A. JSP

        B. Servlet

        C. ActionServlet

        D. Action

        E. 代表業(yè)務(wù)邏輯或業(yè)務(wù)數(shù)據(jù)的JavaBean

        F. EJB

        G. 客戶化標(biāo)簽

        7. struts框架中,關(guān)于FormBean,下列哪些說法是正確的:

        A FormBean是一種數(shù)據(jù)bean,主要用來封裝表單提交上來的數(shù)據(jù),并把這些數(shù)據(jù)傳遞給Action

        B 在FormBean中可以對(duì)頁(yè)面上傳遞來的參數(shù)進(jìn)行一下格式上的驗(yàn)證,這種驗(yàn)證是一種客戶端的驗(yàn)證

        C 用戶每次提交表單,都會(huì)產(chǎn)生一個(gè)新的FormBean實(shí)例

        D 動(dòng)態(tài)FormBean不能進(jìn)行驗(yàn)證操作

        8哪些方法可以進(jìn)行servlet的調(diào)試?()

        A、使用打印語句; 在桌面計(jì)算機(jī)上運(yùn)行服務(wù)器

        B、使用Apache Log4J

        C、使用IDE集成的調(diào)試器

        D、直接查看HTML源碼 ????

        E、返回錯(cuò)誤頁(yè)面給客戶

        9、下面關(guān)于servlet的功用說法正確的有哪些?()

        A、讀取客戶程序發(fā)送來的顯式數(shù)據(jù)

        B、讀取客戶程序發(fā)送來的隱式數(shù)據(jù)

        C、生成相應(yīng)的結(jié)果

        D、發(fā)送顯式的數(shù)據(jù)給客戶程序

        E、發(fā)送隱式的數(shù)據(jù)給客戶程序

        10、下面關(guān)于session的用法哪些是錯(cuò)誤的?(

        A、HttpSession session = new HttpSession();

        request.getSession();

        B、String haha =(String) session.getParameter(Attribute)(“haha”);

        C、session.removeAttribute(“haha”);

        D、session. setAttribute(“haha”,值);

        11、關(guān)于說法正確的有哪些?()

        A、URL的輸出在請(qǐng)求時(shí)入到JSP頁(yè)面中

        B、不能含有影響整個(gè)頁(yè)面的JSP內(nèi)容

        C、被包含文件改變后不需更改使用它的頁(yè)面

        D、被包含文件更改后,需要手動(dòng)地更新使用它的頁(yè)面(不需要手動(dòng)更新)

        12、關(guān)于bean的`說法正確的有哪些?()

        A、具備一個(gè)零參數(shù)(空)的構(gòu)造函數(shù)(不是必須的)

        B、不應(yīng)該有公開的實(shí)例變量(字段)

        C、所有的屬性都必須通過getXxx和setXxx方法來訪問

        D、布爾型的屬性使用isXxx,而非getXxx

        13、下面關(guān)于MVC說法錯(cuò)誤的有哪些?()

        A、必須使用復(fù)雜的框架

        B、使用內(nèi)建的RequestDispatcher能夠很好地實(shí)現(xiàn)MVC

        C、當(dāng)其中一個(gè)組件發(fā)生變化的時(shí)候,MVC影響整個(gè)系統(tǒng)的設(shè)計(jì)

        D、我們可以用MVC來處理單個(gè)請(qǐng)求

        14、下面的標(biāo)簽中哪些是JSTL標(biāo)簽?()

        15、struts框架,錯(cuò)誤的是,下面那些說法正確?

        A Struts中無法完成上傳功能

        B Struts框架基于MVC模式

        C Struts框架容易引起流程復(fù)雜、結(jié)構(gòu)不清晰等問題(清晰)

        D Struts可以有效地降低項(xiàng)目的類文件數(shù)目

        二、填空題( 5分)

        1、調(diào)用函數(shù)MOD(123,10)返回值為___。

        2、select round (123.67,1) from dual;這語句輸出值為______。

        3、創(chuàng)建一個(gè)臨時(shí)替代變量使用的字符是_____。

        4、若v_comm = 2800, X := NVL (V_comm,0) ,則X的值為____。

        5、調(diào)用函數(shù)INSTR(‘Here you are’,’er’)返回值為___。

        三、判斷題(10分)

        1、WHERE子句限制行記錄,也可以指定限制分組結(jié)果的條件。 ()

        2、具有UNIQUE約束的列不能包含多個(gè)空值。 ()

        3、DATE型數(shù)據(jù)中包含著時(shí)間值。 ()

        4、具有外鍵約束的列可以包含空值。 ()

        5、如果在類型為4)的列中輸入“hello”,則只能存儲(chǔ)hell。 ()

        6、含有Group by子句的查詢,其結(jié)果是排好序的。 ()

        7、定義游標(biāo)時(shí),其中的select語句不能使用order by子句。(子查詢

        不能用) ()

        9、觸發(fā)器一定會(huì)被激發(fā)。 、過程可以有返回值。 ()

        10、instead

        of觸發(fā)器只是基于視圖的。

        四、寫出相應(yīng)的SQL語句(括號(hào)內(nèi)為列名)(10分)

        1、查詢從事各工作(JOB)的員工人數(shù)。

        2、查詢與員工SMITH在同一部門(DEPTNO)的員工的姓名(ENAME),工資(SAL)和部門。

        3、查詢所有員工的姓名(ENAME),工資(SAL)和工資等級(jí)(GRADE)。

        4、查詢獲得工資(SAL)最高的3個(gè)員工信息。

        5、查詢所有員工的姓名(ENAME)及其主管姓名(ENAME)。

        五、簡(jiǎn)答題(15分)

        1. 在PL/SQL程序中,進(jìn)行用戶自定義異常處理的3個(gè)步驟是

        什么?

        2. 面向?qū)ο蟮奶卣饔心男┓矫?并簡(jiǎn)要介紹

        3. List、Map、Set三個(gè)接口,存取元素時(shí),各有什么特點(diǎn)?

        List 以特定次序來持有元素,可有重復(fù)元素。Set 無法擁有重復(fù)元素,內(nèi)部排序。Map 保存key-value值,value可多值。

        4 .struts1.0和struts2.0的區(qū)別?如何控制兩種框架中的單例模式?

        5. 描述一下如何在struts1.0實(shí)現(xiàn)國(guó)際化,以兩國(guó)語言(中文,英文)為例:

        6.struts中怎么配置form-bean、action

        7. Hibernate自帶的分頁(yè)機(jī)制是什么?如果不使用Hibernate自帶的分頁(yè),則采用什么方式分頁(yè)?

        8. hibernate中一對(duì)多配置文件返回的是什么?

        9.什么樣的數(shù)據(jù)適合存放到第二級(jí)緩存中?

        10你一般用spring做什么?

        11項(xiàng)目中如何體現(xiàn)Spring中的切面編程,具體說明。

        12 觸發(fā)觸發(fā)器的數(shù)據(jù)操作有哪些?

        13 解釋視圖的含義以及使用視圖的好處。

        14 簡(jiǎn)述ORACLE中5種約束及其作用。

        15 ORACLE中過程和函數(shù)的異同點(diǎn)。

        六、編程題(30分)

        1、創(chuàng)建一個(gè)PL/SQL塊,根據(jù)用戶輸入的編號(hào),在emp表中查詢出該編號(hào)的員工姓名、部門號(hào)及其主管編號(hào),要有異常處理。

        2、創(chuàng)建一個(gè)PL/SQL塊,根據(jù)用戶輸入的工作,從emp表中逐條輸出從事這一工作的每位員工的編號(hào)、姓名和受雇如期,每條信息格式如下:(用游標(biāo)實(shí)現(xiàn))

        編號(hào) 姓名 受雇日期

        7751 JOHN 95-12-31

        3、編寫一個(gè)函數(shù),用于判斷EMP表中某一工作(JOB)是否存在,若EMP表存在此工作名稱,則返回TRUE,否則返回FALSE。

        4、編寫一觸發(fā)器,在EMP表執(zhí)行插入或修改前被激發(fā),此觸發(fā)器將對(duì)員工的工資(SAL)超過5000進(jìn)行報(bào)錯(cuò),不能插入或修改,不超

        過5000的才將員工編號(hào)、工作及當(dāng)時(shí)的日期(SYSDATE)插入U(xiǎn)P_EMP表

        (注:此表已建好,表結(jié)構(gòu)為UP_EMP(EMPNO NUMBER(4),SAL NUMBER(7,2),UDETE DATE))

        5下面程序的輸出結(jié)果是多少?

        importjava.util.Date;

        public class Test extends Date{

        public static void main(String[] args) {

        new Test().test();}

        public void test(){

        System.out.println(super.getClass().getName());}}

        6下面的程序代碼輸出的結(jié)果是多少? public class smallT

        {}

        public static void main(String args[]) { } public int get() { } try { } finally { } return 2 ; return 1 ; smallT t = new smallT(); int b = t.get(); System.out.println(b);

        7子線程循環(huán)10次,接著主線程循環(huán)100,接著又回到子線程循環(huán)10次,接著再回到主線程又循環(huán)100,如此循環(huán)50次,請(qǐng)寫出程序。

        8去掉一個(gè)Vector集合中重復(fù)的元素

        9有一個(gè)字符串,其中包含中文字符、英文字符和數(shù)字字符,請(qǐng)統(tǒng)計(jì)和打印出各個(gè)字符的個(gè)數(shù)

        10. xxx公司的sql面試

        Table EMPLOYEES Structure:

        EMPLOYEE_ID NUMBER Primary Key,

        FIRST_NAME VARCHAR2(25),

        LAST_NAME VARCHAR2(25),

        Salary number(8,2),

        HiredDate DATE,

        Departmentid number(2)

        Table Departments Structure:

        Departmentid number(2) Primary Key,

        DepartmentName VARCHAR2(25).

        (1)基于上述EMPLOYEES表寫出查詢:寫出雇用日期在今年的,或者工資在[1000,2000]之間的,或者員工姓名(last_name)以’Obama’打頭的所有員工,列出這些員工的全部個(gè)人信息。

        (2) 基于上述EMPLOYEES表寫出查詢:查出部門平均工資大于1800

        元的部門的所有員工,列出這些員工的全部個(gè)人信息。()

        (3) 基于上述EMPLOYEES表寫出查詢:查出個(gè)人工資高于其所在部門平均工資的員工,列出這些員工的全部個(gè)人信息及該員工工資高出部門平均工資百分比。

        參考答案

        1答案:ABD

        2答案: D

        3答案:BC

        4答案:AB

        5答案AC

        6答案:A,G

        7答案:A

        8A B C D E

        9A B C D E

        10A B D

        11A B C

        12B D

        13A C

        14A B C

        15A B C

        16答案:C

        二 填空

        3 123.7 & 2800 2

        三判斷

        × ×√√√√×√×√

        四寫出相應(yīng)的SQL語句

        1Select job,count(*) from emp group by job;

        2Select ename,sal,deptno from emp where deptno=(select deptno from emp where ename=’SMITH’);

        3Select ename,sal,grade from emp,salgrade where sal between losal and hisal;

        4Select * from (select * from emp order by sal desc) where rownum<=3;

        5Select e1.ename empname,e2.ename mgrname from emp e1,emp e2 where e1.mgr=e2.empno;

        五簡(jiǎn)答

        可以通過聲明和發(fā)布來截獲自定義異常。

        一、在聲明部分為聲明自定義異常名。

        二、在執(zhí)行部分使用 RAISE 語句顯式地發(fā)布異常。

        三、在相應(yīng)的異常處理例程中引用已聲明的異常。

        2(1).抽象:

        抽象就是忽略一個(gè)主題中與當(dāng)前目標(biāo)無關(guān)的那些方面,以便更充分地注意與當(dāng)前目標(biāo)有關(guān)的方面。抽象并不打算了解全部問題,而只是選擇其中的一部分,暫時(shí)不用部分細(xì)節(jié)。抽象包括兩個(gè)方面,一是過程抽象,二是數(shù)據(jù)抽象。

        (2).繼承:

        繼承是一種聯(lián)結(jié)類的層次模型,并且允許和鼓勵(lì)類的重用,它提供了一種明確表述共性的方法。對(duì)象的一個(gè)新類可以從現(xiàn)有的類中派生,這個(gè)過程稱為類繼承。新類繼承了原始類的特性, 新類稱為原始類的派生類(子類),而原始類稱為新類的基類(父類)。派生類可以從它的基類那里繼承方法和實(shí)例變量,并且類可以修改或增加新的方法使之更適合特殊的需要。

        (3).封裝:

        封裝是把過程和數(shù)據(jù)包圍起來,對(duì)數(shù)據(jù)的訪問只能通過已定義的界面。面向?qū)ο笥?jì)算始于這個(gè)基本概念,即現(xiàn)實(shí)世界可以被描繪成一系列完全自治、封裝的對(duì)象,這些對(duì)象通過一個(gè)受保護(hù)的接口訪問其他對(duì)象。

        (4). 多態(tài)性:

        多態(tài)性是指允許不同類的對(duì)象對(duì)同一消息作出響應(yīng)。多態(tài)性包括參數(shù)化多態(tài)性和包含多態(tài)性。多態(tài)性語言具有靈活、抽象、行為共享、代碼共享的優(yōu)勢(shì),很好的解決了應(yīng)用程序函數(shù)同名問題。

        List 以特定次序來持有元素,可有重復(fù)元素。Set 無法擁有重復(fù)元素,內(nèi)部排序。Map 保存key-value值,value可多值。

        3List 以特定次序來持有元素,可有重復(fù)元素。Set 無法擁有重復(fù)元素,內(nèi)部排序。Map 保存key-value值,value可多值

        4a、Action類:

        struts1.2要求Action類繼承一個(gè)基類。struts2.0 Action要求繼承ActionSupport基類 b、線程模式

        struts1.2 Action是單例模式的并且必須是線程安全的,因?yàn)閮H有一個(gè)Action的實(shí)例來處理所有的請(qǐng)求。

        單例策略限制了Struts1.2 Action能做的事情,并且開發(fā)時(shí)特別小心。Action資源必須是線程安全的或同步的。

        struts2.0 Action為每一個(gè)請(qǐng)求產(chǎn)生一個(gè)實(shí)例,因此沒有線程安全問題。

        c、Servlet依賴

        struts1.2 Action依賴于Servlet API,因?yàn)楫?dāng)一個(gè)Action被調(diào)用時(shí)HttpServletRequest和HttpServletResponse被傳遞給execut方法。

        struts2.0 Action不依賴于容器,允許Action脫離容器單獨(dú)測(cè)試。如果需要,Struts2 Action仍

        然可以訪問初始的Request和Response。

        但是,其他的元素減少或者消除了直接訪問HttpServletRequest和HttpServletResponse的必要性。

        d、可測(cè)性

        測(cè)試struts1.2 Action的一個(gè)主要問題是execute方法暴露了Servlet API(這使得測(cè)試要依賴于容器)。一個(gè)第三方擴(kuò)展:struts TestCase

        提供了一套struts1.2的模擬對(duì)象來進(jìn)行測(cè)試。

        Struts2.0 Action可以通過初始化、設(shè)置屬性、調(diào)用方法來測(cè)試,“依賴注入”也使得測(cè)試更容易。

        Java工程師面試常考試題及答案 3

        java面試題目1

        1.談?wù)剬?duì)XML的理解?說明Web應(yīng)用中Web.xml文件的作用?

        解答:XML(Extensible Markup Language)即可擴(kuò)展標(biāo)記語言,它與HTML一樣,都是SGML(Standard Generalized Markup Language,標(biāo)準(zhǔn)通用標(biāo)記語言)。Xml是Internet環(huán)境中跨平臺(tái)的,依賴于內(nèi)容的技術(shù),是當(dāng)前處理結(jié)構(gòu)化文檔信息的有力工具。擴(kuò)展標(biāo)記語言XML是一種簡(jiǎn)單的數(shù)據(jù)存儲(chǔ)語言,使用一系列簡(jiǎn)單的標(biāo)記描述數(shù)據(jù),而這些標(biāo)記可以用方便的方式建立,雖然XML占用的空間比二進(jìn)制數(shù)據(jù)要占用更多的空間,但XML極其簡(jiǎn)單易于掌握和使用。

        web.xml的作用是配置歡迎頁(yè),servlet,filter,listener等的。

        2.jsp有哪些內(nèi)置對(duì)象?作用分別是什么?(至少三個(gè))

        解答:

        1)request表示HttpServletRequest對(duì)象。它包含了有關(guān)瀏覽器請(qǐng)求的信息,并且提供了幾個(gè)用于獲取cookie, header和session數(shù)據(jù)的有用的方法。

        2)response表示HttpServletResponse對(duì)象,并提供了幾個(gè)用于設(shè)置送回 瀏覽器的響應(yīng)的方法(如cookies,頭信息等)。

        3)out對(duì)象是javax.jsp.JspWriter的一個(gè)實(shí)例,并提供了幾個(gè)方法使你能用于向?yàn)g覽器回送輸出結(jié)果。

        4)pageContext表示一個(gè)javax.servlet.jsp.PageContext對(duì)象。它是用于方便存取各種范圍的名字空間、servlet相關(guān)的對(duì)象的API,并且包裝了通用的servlet相關(guān)功能的方法。

        5)session表示一個(gè)請(qǐng)求的javax.servlet.http.HttpSession對(duì)象。Session可以存貯用戶的狀態(tài)信息。

        6)application 表示一個(gè)javax.servle.ServletContext對(duì)象。這有助于查找有關(guān)servlet引擎和servlet環(huán)境的信息。

        7)config表示一個(gè)javax.servlet.ServletConfig對(duì)象。該對(duì)象用于存取servlet實(shí)例的初始化參數(shù)。

        8)page表示從該頁(yè)面產(chǎn)生的`一個(gè)servlet實(shí)例。

        9)exception 針對(duì)錯(cuò)誤網(wǎng)頁(yè),未捕捉的例外

        3.事務(wù)是什么?有哪些屬性,并簡(jiǎn)要說明這些屬性的含義。

        解答:事務(wù)(Transaction)是訪問并可能更新數(shù)據(jù)庫(kù)中各種數(shù)據(jù)項(xiàng)的一個(gè)程序執(zhí)行單元(unit)。

        事務(wù)通常由高級(jí)數(shù)據(jù)庫(kù)操縱語言或編程語言(如SQL,C++或Java)書寫的用戶程序的執(zhí)行所引起,并用形如begin transaction和end transaction語句(或函數(shù)調(diào)用)來界定。事務(wù)由事務(wù)開始(begin transaction)和事務(wù)結(jié)束(end transaction)之間執(zhí)行的全體操作組成。

        事務(wù)應(yīng)該具有4個(gè)屬性:原子性、一致性、隔離性、持續(xù)性。這四個(gè)屬性通常稱為ACID特性。

        原子性(atomicity)。一個(gè)事務(wù)是一個(gè)不可分割的工作單位,事務(wù)中包括的諸操作要么都做,要么都不做。

        一致性(consistency)。事務(wù)必須是使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致性狀態(tài)。一致性與原子性是密切相關(guān)的。

        隔離性(isolation)。一個(gè)事務(wù)的執(zhí)行不能被其他事務(wù)干擾。即一個(gè)事務(wù)內(nèi)部的操作及使用的數(shù)據(jù)對(duì)并發(fā)的其他事務(wù)是隔離的,并發(fā)執(zhí)行的各個(gè)事務(wù)之間不能互相干擾。

        持久性(durability)。持續(xù)性也稱永久性(permanence),指一個(gè)事務(wù)一旦提交,它對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的改變就應(yīng)該是永久性的。接下來的其他操作或故障不應(yīng)該對(duì)其有任何影響。

        4、Collection 和 Collections的區(qū)別?

        解答:Collection是java.util下的接口,它是各種集合的父接口,繼承于它的接口主要有Set 和List;Collections是個(gè)java.util下的類,是針對(duì)集合的幫助類,提供一系列靜態(tài)方法實(shí)現(xiàn)對(duì)各種集合的搜索、排序、線程安全化等操作。

        5、HashMap與TreeMap的區(qū)別?

        解答:HashMap通過hashcode對(duì)其內(nèi)容進(jìn)行快速查找,而TreeMap中所有的元素都保持著某種固定的順序,如果你需要得到一個(gè)有序的結(jié)果你就應(yīng)該使用TreeMap(HashMap中元素的排列順序是不固定的)。

        6、ArrayList和Vector的區(qū)別?

        解答:同步性:Vector是線程安全的,也就是說是同步的,而ArrayList是線程不安全的,不是同步的;數(shù)據(jù)增長(zhǎng):當(dāng)需要增長(zhǎng)時(shí),Vector默認(rèn)增長(zhǎng)為原來一培,而ArrayList卻是原來的一半。

      【Java工程師面試常考試題及答案】相關(guān)文章:

      Java工程師面試題及答案10-25

      java程序員面試考試題及答案03-10

      Java高級(jí)工程師面試題及答案03-24

      2016最新java考試題庫(kù)及答案03-09

      java面試題2017及答案03-06

      Java工程師面試題03-29

      Java main方法面試題及答案03-14

      NIIT認(rèn)證Java面試題及答案03-30

      高級(jí)Java面試題及答案201602-26

      主站蜘蛛池模板: 日本不卡一区二区高清中文| 亚洲国产精品美女久久久| 中文字幕国产精品中文字幕| 精品少妇人妻成人一区二区| 中国国内新视频在线不卡免费看| 欧美1区二区三区公司| 久久国产高潮流白浆免费观看 | 果冻国产一区二区三区| 在线免费观看视频一区二区| 日本一区二区三深夜不卡| 庆元县| 欧美日本视频一区| 亚洲中文字幕精品久久久久久直播| yy111111少妇影院| 国产一区二区三区免费在线视频| AV无码专区亚洲AVL在线观看| 博兴县| 文山县| 墨脱县| 中文字幕亚洲乱亚洲乱妇| 欧美熟妇与小伙性欧美交| 伊人久久婷婷综合五月97色| 午夜精品亚洲一区二区| 婷婷开心五月综合基地| 亚洲乱码一区AV春药高潮| 久久免费精品视频老逼| 久久精品国产88久久综合| 国产高潮自拍视频在线观看| 国产一区二区三区av免费观看| 华安县| 天镇县| 日本韩国黄色三级三级| 初尝人妻少妇中文字幕在线| 亚洲女同系列高清在线观看| 霞浦县| 国产在线h视频| 亚洲AV无码成人精品区日韩密殿| 免费一级欧美大片久久网| 日韩人妻无码精品系列专区无遮 | 国产视频不卡在线| 国产在线欧美日韩精品一区二区|