16應(yīng)用服務(wù)器有那些?
17你所知道的集合類都有哪些?主要方法?
18給你一個(gè):驅(qū)動(dòng)程序A,數(shù)據(jù)源名稱為B,用戶名稱為C,密碼為D,數(shù)據(jù)庫(kù)表為T,請(qǐng)用JDBC檢索出表T的所有數(shù)據(jù)。
?
19.說出在JSP頁面里是怎么分頁的?
頁面需要保存以下參數(shù):
總行數(shù):根據(jù)sql語句得到總行數(shù)
每頁顯示行數(shù):設(shè)定值
當(dāng)前頁數(shù):請(qǐng)求參數(shù)
頁面根據(jù)當(dāng)前頁數(shù)和每頁行數(shù)計(jì)算出當(dāng)前頁第一行行數(shù),定位結(jié)果集到此行,對(duì)結(jié)果集取出每頁顯示行數(shù)的行即可。
?
?
數(shù)據(jù)庫(kù)方面:
?
1. 存儲(chǔ)過程和函數(shù)的區(qū)別
存儲(chǔ)過程是用戶定義的一系列sql語句的集合,涉及特定表或其它對(duì)象的任務(wù),用戶可以調(diào)用存儲(chǔ)過程,而函數(shù)通常是數(shù)據(jù)庫(kù)已定義的方法,它接收參數(shù)并返回某種類型的值并且不涉及特定用戶表。
2. 事務(wù)是什么?
事務(wù)是作為一個(gè)邏輯單元執(zhí)行的一系列操作,一個(gè)邏輯工作單元必須有四個(gè)屬性,稱為 ACID(原子性、一致性、隔離性和持久性)屬性,只有這樣才能成為一個(gè)事務(wù):
原子性
事務(wù)必須是原子工作單元;對(duì)于其數(shù)據(jù)修改,要么全都執(zhí)行,要么全都不執(zhí)行。
一致性
事務(wù)在完成時(shí),必須使所有的數(shù)據(jù)都保持一致狀態(tài)。在相關(guān)數(shù)據(jù)庫(kù)中,所有規(guī)則都必須應(yīng)用于事務(wù)的修改,以保持所有數(shù)據(jù)的完整性。事務(wù)結(jié)束時(shí),所有的內(nèi)部數(shù)據(jù)結(jié)構(gòu)(如 B 樹索引或雙向鏈表)都必須是正確的。
隔離性
由并發(fā)事務(wù)所作的修改必須與任何其它并發(fā)事務(wù)所作的修改隔離。事務(wù)查看數(shù)據(jù)時(shí)數(shù)據(jù)所處的狀態(tài),要么是另一并發(fā)事務(wù)修改它之前的狀態(tài),要么是另一事務(wù)修改它之后的狀態(tài),事務(wù)不會(huì)查看中間狀態(tài)的數(shù)據(jù)。這稱為可串行性,因?yàn)樗軌蛑匦卵b載起始數(shù)據(jù),并且重播一系列事務(wù),以使數(shù)據(jù)結(jié)束時(shí)的狀態(tài)與原始事務(wù)執(zhí)行的狀態(tài)相同。
持久性
事務(wù)完成之后,它對(duì)于系統(tǒng)的影響是永久性的。該修改即使出現(xiàn)系統(tǒng)故障也將一直保持。
?
3. 游標(biāo)的作用?如何知道游標(biāo)已經(jīng)到了最后?
游標(biāo)用于定位結(jié)果集的行,通過判斷全局變量@@FETCH_STATUS可以判斷是否到了最后,通常此變量不等于0表示出錯(cuò)或到了最后。
4. 觸發(fā)器分為事前觸發(fā)和事后觸發(fā),這兩種觸發(fā)有和區(qū)別。語句級(jí)觸發(fā)和行級(jí)觸發(fā)有何區(qū)別。
事前觸發(fā)器運(yùn)行于觸發(fā)事件發(fā)生之前,而事后觸發(fā)器運(yùn)行于觸發(fā)事件發(fā)生之后。通常事前觸發(fā)器可以獲取事件之前和新的字段值。
語句級(jí)觸發(fā)器可以在語句執(zhí)行前或后執(zhí)行,而行級(jí)觸發(fā)在觸發(fā)器所影響的每一行觸發(fā)一次。
?
?
中遠(yuǎn)面試題
1、面向?qū)ο蟮娜齻€(gè)基本特征
2、方法重載和方法重寫的概念和區(qū)別
3、接口和內(nèi)部類、抽象類的特性
4、文件讀寫的基本類
**5、串行化的注意事項(xiàng)以及如何實(shí)現(xiàn)串行化
6、線程的基本概念、線程的基本狀態(tài)以及狀態(tài)之間的關(guān)系
7、線程的同步、如何實(shí)現(xiàn)線程的同步
8、幾種常用的數(shù)據(jù)結(jié)構(gòu)及內(nèi)部實(shí)現(xiàn)原理。
9、Socket通信(TCP、UDP區(qū)別及Java實(shí)現(xiàn)方式)
**10、Java的事件委托機(jī)制和垃圾回收機(jī)制
11、JDBC調(diào)用數(shù)據(jù)庫(kù)的基本步驟
**12、解析XML文件的幾種方式和區(qū)別
13、Java四種基本權(quán)限的定義
14、Java的國(guó)際化
二、JSP
1、至少要能說出7個(gè)隱含對(duì)象以及他們的區(qū)別
** 2、forward 和redirect的區(qū)別
3、JSP的常用指令
三、servlet
1、什么情況下調(diào)用doGet()和doPost()?
2、servlet的init()方法和service()方法的區(qū)別
3、servlet的生命周期
4、如何現(xiàn)實(shí)servlet的單線程模式
5、servlet的配置
6、四種會(huì)話跟蹤技術(shù)
四、EJB
**1、EJB容器提供的服務(wù)
主要提供聲明周期管理、代碼產(chǎn)生、持續(xù)性管理、安全、事務(wù)管理、鎖和并發(fā)行管理等服務(wù)。
2、EJB的角色和三個(gè)對(duì)象
EJB角色主要包括Bean開發(fā)者 應(yīng)用組裝者 部署者 系統(tǒng)管理員 EJB容器提供者 EJB服務(wù)器提供者
三個(gè)對(duì)象是Remote(Local)接口、Home(LocalHome)接口,Bean類
2、EJB的幾種類型
會(huì)話(Session)Bean ,實(shí)體(Entity)Bean 消息驅(qū)動(dòng)的(Message Driven)Bean
會(huì)話Bean又可分為有狀態(tài)(Stateful)和無狀態(tài)(Stateless)兩種
實(shí)體Bean可分為Bean管理的持續(xù)性(BMP)和容器管理的持續(xù)性(CMP)兩種
3、bean 實(shí)例的生命周期
對(duì)于Stateless Session Bean、Entity Bean、Message Driven Bean一般存在緩沖池管理,而對(duì)于Entity Bean和Statefull Session Bean存在Cache管理,通常包含創(chuàng)建實(shí)例,設(shè)置上下文、創(chuàng)建EJB Object(create)、業(yè)務(wù)方法調(diào)用、remove等過程,對(duì)于存在緩沖池管理的Bean,在create之后實(shí)例并不從內(nèi)存清除,而是采用緩沖池調(diào)度機(jī)制不斷重用實(shí)例,而對(duì)于存在Cache管理的Bean則通過激活和去激活機(jī)制保持Bean的狀態(tài)并限制內(nèi)存中實(shí)例數(shù)量。
4、激活機(jī)制
以Statefull Session Bean 為例:其Cache大小決定了內(nèi)存中可以同時(shí)存在的Bean實(shí)例的數(shù)量,根據(jù)MRU或NRU算法,實(shí)例在激活和去激活狀態(tài)之間遷移,激活機(jī)制是當(dāng)客戶端調(diào)用某個(gè)EJB實(shí)例業(yè)務(wù)方法時(shí),如果對(duì)應(yīng)EJB Object發(fā)現(xiàn)自己沒有綁定對(duì)應(yīng)的Bean實(shí)例則從其去激活Bean存儲(chǔ)中(通過序列化機(jī)制存儲(chǔ)實(shí)例)回復(fù)(激活)此實(shí)例。狀態(tài)變遷前會(huì)調(diào)用對(duì)應(yīng)的ejbActive和ejbPassivate方法。
5、remote接口和home接口主要作用
remote接口定義了業(yè)務(wù)方法,用于EJB客戶端調(diào)用業(yè)務(wù)方法
home接口是EJB工廠用于創(chuàng)建和移除查找EJB實(shí)例
6、客服端調(diào)用EJB對(duì)象的幾個(gè)基本步驟
一、 設(shè)置JNDI服務(wù)工廠以及JNDI服務(wù)地址系統(tǒng)屬性
二、 查找Home接口
三、 從Home接口調(diào)用Create方法創(chuàng)建Remote接口
四、 通過Remote接口調(diào)用其業(yè)務(wù)方法
五、數(shù)據(jù)庫(kù)
1、存儲(chǔ)過程的編寫
2、基本的SQL語句
六、weblogic
1、 如何給weblogic指定大小的內(nèi)存?
在啟動(dòng)Weblogic的腳本中(位于所在Domian對(duì)應(yīng)服務(wù)器目錄下的startServerName),增加set MEM_ARGS=-Xms32m -Xmx200m,可以調(diào)整最小內(nèi)存為32M,最大200M
2、 如何設(shè)定的weblogic的熱啟動(dòng)模式(開發(fā)模式)與產(chǎn)品發(fā)布模式?
可以在管理控制臺(tái)中修改對(duì)應(yīng)服務(wù)器的啟動(dòng)模式為開發(fā)或產(chǎn)品模式之一。或者修改服務(wù)的啟動(dòng)文件或者commenv文件,增加set PRODUCTION_MODE=true。
3、 如何啟動(dòng)時(shí)不需輸入用戶名與密碼?
修改服務(wù)啟動(dòng)文件,增加 WLS_USER和WLS_PW項(xiàng)。也可以在boot.properties文件中增加加密過的用戶名和密碼.
4、 在weblogic管理制臺(tái)中對(duì)一個(gè)應(yīng)用域(或者說是一個(gè)網(wǎng)站,Domain)進(jìn)行jms及ejb或連接池等相關(guān)信息進(jìn)行配置后,實(shí)際保存在什么文件中?
保存在此Domain的config.xml文件中,它是服務(wù)器的核心配置文件。
5、 說說weblogic中一個(gè)Domain的缺省目錄結(jié)構(gòu)?比如要將一個(gè)簡(jiǎn)單的helloWorld.jsp放入何目錄下,然的在瀏覽器上就可打入http://主機(jī):端口號(hào)//helloword.jsp就可以看到運(yùn)行結(jié)果了? 又比如這其中用到了一個(gè)自己寫的javaBean該如何辦?
Domain目錄\服務(wù)器目錄\applications,將應(yīng)用目錄放在此目錄下將可以作為應(yīng)用訪問,如果是Web應(yīng)用,應(yīng)用目錄需要滿足Web應(yīng)用目錄要求,jsp文件可以直接放在應(yīng)用目錄中,Javabean需要放在應(yīng)用目錄的WEB-INF目錄的classes目錄中,設(shè)置服務(wù)器的缺省應(yīng)用將可以實(shí)現(xiàn)在瀏覽器上無需輸入應(yīng)用名。
6、 如何查看在weblogic中已經(jīng)發(fā)布的EJB?
可以使用管理控制臺(tái),在它的Deployment中可以查看所有已發(fā)布的EJB
7、 如何在weblogic中進(jìn)行ssl配置與客戶端的認(rèn)證配置或說說j2ee(標(biāo)準(zhǔn))進(jìn)行ssl的配置
缺省安裝中使用DemoIdentity.jks和DemoTrust.jks KeyStore實(shí)現(xiàn)SSL,需要配置服務(wù)器使用Enable SSL,配置其端口,在產(chǎn)品模式下需要從CA獲取私有密鑰和數(shù)字證書,創(chuàng)建identity和trust keystore,裝載獲得的密鑰和數(shù)字證書。可以配置此SSL連接是單向還是雙向的。
8、在weblogic中發(fā)布ejb需涉及到哪些配置文件
不同類型的EJB涉及的配置文件不同,都涉及到的配置文件包括ejb-jar.xml,weblogic-ejb-jar.xmlCMP實(shí)體Bean一般還需要weblogic-cmp-rdbms-jar.xml
9、EJB需直接實(shí)現(xiàn)它的業(yè)務(wù)接口或Home接口嗎,請(qǐng)簡(jiǎn)述理由.
遠(yuǎn)程接口和Home接口不需要直接實(shí)現(xiàn),他們的實(shí)現(xiàn)代碼是由服務(wù)器產(chǎn)生的,程序運(yùn)行中對(duì)應(yīng)實(shí)現(xiàn)類會(huì)作為對(duì)應(yīng)接口類型的實(shí)例被使用。
10、說說在weblogic中開發(fā)消息Bean時(shí)的persistent與non-persisten的差別
persistent方式的MDB可以保證消息傳遞的可靠性,也就是如果EJB容器出現(xiàn)問題而JMS服務(wù)器依然會(huì)將消息在此MDB可用的時(shí)候發(fā)送過來,而non-persistent方式的消息將被丟棄。
11、說說你所熟悉或聽說過的j2ee中的幾種常用模式?及對(duì)設(shè)計(jì)模式的一些看法
Session Facade Pattern:使用SessionBean訪問EntityBean
Message Facade Pattern:實(shí)現(xiàn)異步調(diào)用
EJB Command Pattern:使用Command JavaBeans取代SessionBean,實(shí)現(xiàn)輕量級(jí)訪問
Data Transfer Object Factory:通過DTO Factory簡(jiǎn)化EntityBean數(shù)據(jù)提供特性
Generic Attribute Access:通過AttibuteAccess接口簡(jiǎn)化EntityBean數(shù)據(jù)提供特性
Business Interface:通過遠(yuǎn)程(本地)接口和Bean類實(shí)現(xiàn)相同接口規(guī)范業(yè)務(wù)邏輯一致性
EJB架構(gòu)的設(shè)計(jì)好壞將直接影響系統(tǒng)的性能、可擴(kuò)展性、可維護(hù)性、組件可重用性及開發(fā)效率。項(xiàng)目越復(fù)雜,項(xiàng)目隊(duì)伍越龐大則越能體現(xiàn)良好設(shè)計(jì)的重要性
posted on 2006-11-29 01:08
EricWong 閱讀(222)
評(píng)論(0) 編輯 收藏 所屬分類:
Java