計(jì)算機(jī)基礎(chǔ)題庫3_第1頁
計(jì)算機(jī)基礎(chǔ)題庫3_第2頁
計(jì)算機(jī)基礎(chǔ)題庫3_第3頁
計(jì)算機(jī)基礎(chǔ)題庫3_第4頁
計(jì)算機(jī)基礎(chǔ)題庫3_第5頁
已閱讀5頁,還剩53頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

EJB

1:EJB:

答:EnterpriseJavaBean相當(dāng)于DCOM,即分布式組件。它是基于Java的遠(yuǎn)程方法調(diào)用(RMI)技術(shù)的,

所以EJB可以被遠(yuǎn)程訪問(跨進(jìn)程、跨計(jì)算機(jī))。但EJB必須被布署在諸如Webspere、WebLogic這樣的容器

中,EJB客戶從不直接訪問真正的EJB組件,而是通過其容器訪問。EJB容器是EJB組件的代理,EJB組件由容

器所創(chuàng)建和管理??蛻敉ㄟ^容器來訪問真正的EJB組件。

答:Enterprisejavabean容器。更具有行業(yè)領(lǐng)域特色。他提供給運(yùn)行在其中的組件EJB各種管理功能。只要

滿足J2EE規(guī)范的EJB放入該容器,馬上就會(huì)被容器進(jìn)行高效率的管理。并且可以通過現(xiàn)成的接口來獲得系統(tǒng)級(jí)

別的服務(wù)。例如郵件服務(wù)、事務(wù)管理。

RMI:(RemoteMethodInvocation)遠(yuǎn)程方法調(diào)用

答:RMI(RemoteMethodInvocation,遠(yuǎn)程方法調(diào)用)是用Java在JDK1.1中實(shí)現(xiàn)的,它大大增強(qiáng)了Java開發(fā)分

布式應(yīng)用的能力。Java作為一種風(fēng)靡一時(shí)的網(wǎng)絡(luò)開發(fā)語言,其巨大的威力就體現(xiàn)在它強(qiáng)大的開發(fā)分布式網(wǎng)絡(luò)應(yīng)

用的能力上,而RMI就是開發(fā)百分之百純Java的網(wǎng)絡(luò)分布式應(yīng)用系統(tǒng)的核心解決方案之一。其實(shí)它可以被看作

是RPC的Java版本。但是傳統(tǒng)RPC并不能很好地應(yīng)用于分布式對(duì)象系統(tǒng)。而JavaRMI則支持存儲(chǔ)于不同地址空

間的程序級(jí)對(duì)象之間彼此進(jìn)行通信,實(shí)現(xiàn)遠(yuǎn)程對(duì)象之間的無縫遠(yuǎn)程調(diào)用。

2:EJB種類、作用

答:EntityBean用于描述一個(gè)永久的對(duì)象。

SessionBean——描述任務(wù)或者工作流的模型,并且協(xié)調(diào)Bean之間的交互。

Message-DriverBean用在基于J2EE應(yīng)用程序中處理異步JMS消息。

3:實(shí)體bean,CMP,BMP寫法區(qū)別?

答:CMPentitybean不需要在bean中編寫數(shù)據(jù)庫操作的代碼;可以讓容器做這件事。

BMPentitybean在bean類中直接編寫數(shù)據(jù)庫調(diào)用,以及對(duì)固定存儲(chǔ)的任意類型的訪問,來管理bean

的持久性。

4:Find與Select方法的區(qū)別?

答:

FinderSelect

返回單對(duì)象或者集合,是該bean類單個(gè)或者多個(gè)(集合或集)對(duì)象.是該

值型的bean類型或CMR相關(guān)類型EJBObject(s)

EJBObject(s),EJBLocaIObject(s).或EJBLocalObject(s)也可能是

CMP(域),CMP的集合或一個(gè)CMR域.

聲明在遠(yuǎn)程和/或本地home接口中Bean類中的抽象方法

位置

方法FindXxx()EjbSelectXxx—bean類

可見公開給客戶端面向entitybean類內(nèi)部,供其他bean

度方法使用

實(shí)例Bean池任意隨機(jī)bean實(shí)例當(dāng)前實(shí)例,但若調(diào)用來自home方法,

則為任意隨機(jī)實(shí)例.

5:主接口方法的定義與寫法?

答:生命周期方法建方法-該方法的返回值是bean的組件接口,寫法為creatXxx

無狀態(tài)sessionbean必須個(gè)且僅有一個(gè)無參的創(chuàng)建方法.

有狀態(tài)sessionbean必須含有至少一個(gè)創(chuàng)建方法.Entitybean可以有0至多個(gè)創(chuàng)建方法.

Finder方法-Finder方法對(duì)于entitybean有效,通過它可以在數(shù)據(jù)庫中查找到entitybean對(duì)應(yīng)的持久性數(shù)據(jù).每一個(gè)

entitybean的home接口必須有一個(gè)findByPrimaryKey方法,并以實(shí)體的主鍵為參數(shù).可以定制Finder方法.Home

方法-Home方法也僅對(duì)entitybean有效.Home方法能夠返回任意類型的序列化對(duì)象,但并不實(shí)際生成bean的實(shí)例.

6:主接口與組件接口的區(qū)別?

答:主接口提供EJB客戶端對(duì)bean的訪問.定義了bean的生命周期方法,并提供了bean的基本生命周期管理功能,

如創(chuàng)建刪除渣找.messagedrivernbean不含有home接口.組件接口是由enterprisebean的客戶端用來取得bean的

訪問能力.它定義了對(duì)于客戶端可見的業(yè)務(wù)方法.組件接口中的業(yè)務(wù)方法必須符合bean類中的實(shí)現(xiàn).

7、JMS消息傳遞的方式?

答:點(diǎn)到點(diǎn)(point-to-point)消息通過隊(duì)列進(jìn)行發(fā)送.發(fā)布與訂閱(publish-and-subscribe,pub/sub)消息通過標(biāo)題傳遞.

8、EJB客戶端訪問后臺(tái)EJB的代碼?

答:pl92,pl93

9、有狀態(tài)sessionbean與無狀態(tài)sessionbean的區(qū)別?

答:statefulsessionbean維護(hù)客戶端會(huì)話狀態(tài).它們必須屬于一個(gè)且只屬于一個(gè)客戶端.激活序li化,開銷大.stateless

session不維護(hù)一個(gè)客戶端的會(huì)話狀態(tài)它們被放入實(shí)例池中,因此可被多個(gè)用戶共用,開銷小,效率高。

10、本地視圖與遠(yuǎn)程視圖的區(qū)別?

答:遠(yuǎn)程視圖-它的想法就是遠(yuǎn)程調(diào)用將在兩臺(tái)不同JVM之間執(zhí)行.遠(yuǎn)程調(diào)用這些操作使得相關(guān)網(wǎng)絡(luò)開銷會(huì)更高

與對(duì)象的位置無關(guān).也不會(huì)在乎是否在一個(gè)JVM.

本地視圖-它的想法就是本地調(diào)用將在相同的JVM中執(zhí)行.沒有網(wǎng)絡(luò)開銷.操作效率更高,因?yàn)榭蛻舳耸褂帽镜貙?duì)象

調(diào)用bean上的服務(wù),限制在本地實(shí)現(xiàn)中,而且不需要做到與位置無關(guān).

11:CMT事物屬性

Transaction

Client'sTransactionAssociatedwithEJB

Method

Mandatory-Exception

AA

Never--

AException

Required*B

AA

RequiresNew-A

AB

Supports--

AA

NotSupported??

A-

Mandatory-當(dāng)使用這個(gè)值時(shí),bean方法被調(diào)用時(shí)必須有一個(gè)事務(wù)己經(jīng)處在運(yùn)行中.

Never-如果在現(xiàn)有事務(wù)中調(diào)用此bean,容器將拋出java.rmi.RemotException.

Required-bean方法必須總是在事務(wù)上下文中執(zhí)行.

RequiresNew-當(dāng)方法被調(diào)用的時(shí)候,bean總會(huì)需要啟動(dòng)一個(gè)新的事務(wù)

Supports可以參與到正在運(yùn)行的事務(wù)中,但這個(gè)事務(wù)并不是必須的.

NotSupported-該值意味著在事務(wù)中bean或者方法根本不能被調(diào)用.

12:事務(wù)屬性ACID

答:原子性——一個(gè)事務(wù)要么完全執(zhí)行,要么根本不執(zhí)行。

一致性——一個(gè)事務(wù)在它完成后不能留下系統(tǒng)的不一致性。

隔離性——所有的事務(wù)不許允許在執(zhí)行的時(shí)候不受其他進(jìn)程或者事務(wù)的干涉。

持久性——在事務(wù)期間,所有提交的變更數(shù)據(jù)必須寫入持久的數(shù)據(jù)存儲(chǔ)器,并且應(yīng)該能在硬件和軟件

失效中保存下來。

13:實(shí)體Bean的三個(gè)狀態(tài):

答:no-stateBean實(shí)例還沒有創(chuàng)建。

pooledBean實(shí)例被創(chuàng)建,但還沒有和一個(gè)EJBObject關(guān)聯(lián)。

ready與EJBObject相關(guān)聯(lián)。若斷開關(guān)聯(lián)則回到pooled。

14:JMS、JMS消息模型

答:JavaMessageService(JMS)是一個(gè)JAVAAPI,用來訪問面向消息中間件(MOM)服務(wù)。JMS為Java程序生

成、發(fā)送、接收和讀取異步消息提供通用的方法。

JMS模型:點(diǎn)到點(diǎn)和發(fā)布與訂閱

point-to-point一消息通過隊(duì)列進(jìn)行發(fā)送。消息由消息生產(chǎn)者(客戶端)放入隊(duì)列中。消息消費(fèi)者有責(zé)

任從隊(duì)列中取出消息。當(dāng)給定的消息只能被給定的消費(fèi)者接收時(shí),使用P2P。這種情況下,該給定

信息只有一個(gè)消費(fèi)者。

Publish-and-subscribe(簡稱pub/sub)消息通過標(biāo)題傳遞。由生產(chǎn)者將消息發(fā)布為標(biāo)題。消息可以

被任何訂閱該標(biāo)題的消費(fèi)者收到。通過這種方法,一個(gè)消息可以被多個(gè)消費(fèi)者接收或處理。

15:EJB客戶端類型

答:①Sessionbean②servlet③java應(yīng)用④JavaApplet⑤非Java客戶端

16:ORM

答:ORM對(duì)象-關(guān)系映射(Object-RelationMapping)模式是指在單個(gè)組件中負(fù)責(zé)所有實(shí)體域?qū)ο蟮某志没?,封裝數(shù)

據(jù)訪問細(xì)節(jié)

17:EJB是基于哪些技術(shù)實(shí)現(xiàn)的?

EJB包括SessionBean、EntityBean、MessageDrivenBean,基于JNDI、RMI、JAT等技術(shù)實(shí)現(xiàn)。

18:說出SessionBean和EntityBean的區(qū)別

SessionBean在J2EE應(yīng)用程序中被用來完成一些服務(wù)器端的業(yè)務(wù)操作,例如訪問數(shù)據(jù)庫、調(diào)用其他EJB組

件。EntityBean被用來代表應(yīng)用系統(tǒng)中用到的數(shù)據(jù)。

對(duì)于客戶機(jī),SessionBean是一種非持久性對(duì)象,它實(shí)現(xiàn)某些在服務(wù)器上運(yùn)行的業(yè)務(wù)邏輯。

對(duì)于客戶機(jī),EntityBean是一種持久性對(duì)象,它代表一個(gè)存儲(chǔ)在持久性存儲(chǔ)器中的實(shí)體的對(duì)象視圖,或是一個(gè)由

現(xiàn)有企業(yè)應(yīng)用程序?qū)崿F(xiàn)的實(shí)體。

19:StatefulBean和StatelessBean的區(qū)別。

SessionBean還可以再細(xì)分為StatefulSessionBean與StatelessSessionBean,這兩種的SessionBean都可

以將系統(tǒng)邏輯放在method之中執(zhí)行,不同的是StatefulSessionBean可以記錄呼叫者的狀態(tài),因此通常來說,

一個(gè)使用者會(huì)有一個(gè)相對(duì)應(yīng)的StatefulSessionBean的實(shí)體。StatelessSessionBean雖然也是邏輯組件,但是他

卻不負(fù)責(zé)記錄使用者狀態(tài),也就是說當(dāng)使用者呼叫StatelessSessionBean的時(shí)候,EJBContainer并不會(huì)找尋特

定的StatelessSessionBean的實(shí)體來執(zhí)行這個(gè)method。換言之,很可能數(shù)個(gè)使用者在執(zhí)行某個(gè)StatelessSession

Bean的methods時(shí),會(huì)是同一個(gè)Bean的Instance在執(zhí)行。從內(nèi)存方面來看,StatefulSessionBean與Stateless

SessionBean比較,StatefulSessionBean會(huì)消耗J2EEServer較多的內(nèi)存,然而StatefulSessionBean的優(yōu)勢(shì)

卻在于他可以維持使用者的狀態(tài)。

20:EJB與JAVABEAN的區(qū)別?

JavaBean是可復(fù)用的組件,對(duì)JavaBean并沒有嚴(yán)格的規(guī)范,理論上講,任何一個(gè)Java類都可以是一個(gè)Bean。

但通常情況下,由于JavaBean是被容器所創(chuàng)建(如Tomcat)的,所以JavaBean應(yīng)具有一個(gè)無參的構(gòu)造器,另

外,通常JavaBean還要實(shí)現(xiàn)Serializable接口用于實(shí)現(xiàn)Bean的持久性。JavaBean實(shí)際上相當(dāng)于微軟COM模型

中的本地進(jìn)程內(nèi)COM組件,它是不能被跨進(jìn)程訪問的。EnterpriseJavaBean相當(dāng)于DCOM,即分布式組件。它

是基于Java的遠(yuǎn)程方法調(diào)用(RMI)技術(shù)的,所以EJB可以被遠(yuǎn)程訪問(跨進(jìn)程、跨計(jì)算機(jī))。但EJB必須被布

署在諸如Webspere、WebLogic這樣的容器中,EJB客戶從不直接訪問真正的EJB組件,而是通過其容器訪問。

EJB容器是EJB組件的代理,EJB組件由容器所創(chuàng)建和管理??蛻敉ㄟ^容器來訪問真正的EJB組件。

21:EJB包括(SessionBean,EntityBean)說出他們的生命周期,及如何管理事務(wù)的?

SessionBean:StatelessSessionBean的生命周期是由容器決定的,當(dāng)客戶機(jī)發(fā)出請(qǐng)求要建立一個(gè)Bean的實(shí)例時(shí),

EJB容器不一定要?jiǎng)?chuàng)建一個(gè)新的Bean的實(shí)例供客戶機(jī)調(diào)用,而是隨便找一個(gè)現(xiàn)有的實(shí)例提供給客戶機(jī)。當(dāng)客戶

機(jī)第一次調(diào)用一個(gè)StatefulSessionBean時(shí),容器必須立即在服務(wù)器中創(chuàng)建一個(gè)新的Bean實(shí)例,并關(guān)聯(lián)到客戶機(jī)

上,以后此客戶機(jī)調(diào)用StatefulSessionBean的方法時(shí)容器會(huì)把調(diào)用分派到與此客戶機(jī)相關(guān)聯(lián)的Bean實(shí)例。

EnlityBean:EntityBeans能存活相對(duì)較長的時(shí)間,并且狀態(tài)是持續(xù)的。只要數(shù)據(jù)庫中的數(shù)據(jù)存在,Entitybeans

就一直存活。而不是按照應(yīng)用程序或者服務(wù)進(jìn)程來說的。即使EJB容器崩潰了,Entitybeans也是存活的。Entity

Beans生命周期能夠被容器或者Beans自己管理。

EJB通過以下技術(shù)管理實(shí)務(wù):對(duì)象管理組織(OMG)的對(duì)象實(shí)務(wù)服務(wù)(OTS),SunMicrosystems的Transaction

Service(JTS),JavaTransactionAPI(JTA),開發(fā)組(X/Open)的XA接口。

22.EJB有哪些角色和對(duì)象

一個(gè)完整的基于EJB的分布式計(jì)算結(jié)構(gòu)由六個(gè)角色組成,這六個(gè)角色可以由不同的開發(fā)商提供,每個(gè)角色

所作的工作必須遵循Sun公司提供的EJB規(guī)范,以保證彼此之間的兼容性。這六個(gè)角色分別是EJB組件開發(fā)者

(EnterpriseBeanProvider)、應(yīng)用組合者(ApplicationAssembler),部署者(Deployer)>EJB服務(wù)器提供者(EJB

ServerProvider)^EJB容器提供者(EJBContainerProvider)、系統(tǒng)管理員(SystemAdministrator)

三個(gè)對(duì)象是Remote(Local)接口、Home(LocalHome)接口,Bean類

23.EJB容器提供的服務(wù)有哪些?

主要提供聲明周期管理、代碼產(chǎn)生、持續(xù)性管理、安全、事務(wù)管理、鎖和并發(fā)行管理等服務(wù)。

24.EJB的幾種類型

會(huì)話(Session)Bean,實(shí)體(Entity)Bean消息驅(qū)動(dòng)的(MessageDriven)Bean

會(huì)話Bean又可分為有狀態(tài)(Stateful)和無狀態(tài)(Stateless)兩種

實(shí)體Bean可分為Bean管理的持續(xù)性(BMP)和容器管理的持續(xù)性(CMP)兩種

25.EJB需直接實(shí)現(xiàn)它的業(yè)務(wù)接口或Home接口嗎,請(qǐng)簡述理由。

遠(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í)例被使用。

26.在J2EE內(nèi),WAR和EAR文件分別代表什么。

WAR:Web歸檔;包含一個(gè)web工程所有組件的壓縮文件。

EAR:企業(yè)歸檔;包含一個(gè)企業(yè)應(yīng)用所有組件的壓縮文件。

Hibernate

1.Hibernate的檢索方式

答:①導(dǎo)航對(duì)象圖檢索②OID檢索③HQL檢索④QBC檢索⑤本地SQL檢索

2.Forward與Global-Forward的區(qū)別

答:Forward是根據(jù)Actionreturn的值找到對(duì)應(yīng)的JSP頁。當(dāng)多個(gè)Action共同return同一個(gè)值時(shí),可將這個(gè)

Forward元素寫在Global-Forward中。

3.持久化對(duì)象的三種狀態(tài),代表含義。

答:臨時(shí)狀態(tài)——?jiǎng)傆胣ew語句創(chuàng)建,未被持久化,不處于session的緩存中。

持久化狀態(tài)——已經(jīng)被持久化,處于session的緩存中。

游離態(tài)——已經(jīng)被持久化,但不處于session的緩存中。

4、三種檢索策略是什么,分別適用于哪種場合?

答:立即檢索——

優(yōu)點(diǎn):對(duì)應(yīng)用程序完全透明,缺點(diǎn):select語句數(shù)目多。適用:類級(jí)別。

延遲檢索——

優(yōu)點(diǎn):由應(yīng)用程序決定加載哪些對(duì)象,可以避免執(zhí)行多余的select語句以及避免加載不需要訪問的對(duì)象,節(jié)省

內(nèi)存空間,提高檢索效率。

缺點(diǎn):應(yīng)用程序如果要訪問游離態(tài)的代理類實(shí)例,必須保證它在持久化時(shí)已經(jīng)被初始化。

適用:一對(duì)多或多對(duì)多關(guān)聯(lián)。應(yīng)用程序不需要立即訪問或者根本不會(huì)訪問的對(duì)象。

迫切左外連接檢索:

優(yōu)點(diǎn):對(duì)應(yīng)用程序完全透明,不管對(duì)象處于持久化狀態(tài)還是游離狀態(tài),應(yīng)用程序都可以方便的從一個(gè)對(duì)象導(dǎo)航到

另一個(gè)與它相關(guān)聯(lián)的對(duì)象。使用了外連接,select語句數(shù)目少。

缺點(diǎn):可能會(huì)加載程序不許要訪問的對(duì)象。復(fù)雜的數(shù)據(jù)庫表連接形象檢索性能。

適用:一對(duì)一或多對(duì)一關(guān)聯(lián)。應(yīng)用程序需要立即訪問的對(duì)象。數(shù)據(jù)庫系統(tǒng)具有良好的表連接性能。

4、ORM解決的不匹配問題(域模型與關(guān)系模型之間存在的不匹配)

答:域模型是面向?qū)ο蟮?,關(guān)系模型是面向關(guān)系的。

域模型中有繼承關(guān)系,關(guān)系模型中不能直接表示繼承關(guān)系。

域模型中有多對(duì)多關(guān)聯(lián)關(guān)系,關(guān)系模型中通過連接表來表示多對(duì)多關(guān)聯(lián)關(guān)系。

域模型中有雙向關(guān)聯(lián)關(guān)系,關(guān)系模型中只有單向參照關(guān)系,而且總是many參照。ne方。

域模型提倡精粒度模型,關(guān)系模型提倡粗粒度模型。

5、映射繼承關(guān)系的三種方式?P424

答:(1)繼承關(guān)系樹的每個(gè)具體類對(duì)應(yīng)一張表:在具體類對(duì)應(yīng)的表中,不僅包含和具體類屬性對(duì)應(yīng)的字段,還包

括與具體類的父類屬性對(duì)應(yīng)的字段。

(2)繼承關(guān)系樹的根類對(duì)應(yīng)一張表:在根類對(duì)應(yīng)的表中,不僅包括根類屬性對(duì)應(yīng)的字段,

還包括根類的所有子類屬性對(duì)應(yīng)的字段。

(3)繼承關(guān)系樹中的每個(gè)類對(duì)應(yīng)一張表,每個(gè)表中只包括和這個(gè)類本身屬性對(duì)應(yīng)的字段,子類的表參照父類對(duì)

應(yīng)的表。

6、Session的find。方法以及Query接口的區(qū)別。

答案Session類的find。方法以及Query接口都支持HQL檢索方式。這兩者的區(qū)別在于,前者只是執(zhí)行一些

簡單HQL查詢語句的便捷方法,它不具有動(dòng)態(tài)綁定參數(shù)的功能,而且在Hibernate3.x版本中,已經(jīng)淘汰了find。

方法;而Query接口才是真正的HQL查詢接口,它提供了以上列出的各種查詢功能。

7.ibernate的配置文件(perties)中hibernate.show_sql=true/flase

在開發(fā)階和測試段應(yīng)設(shè)置為()在發(fā)布階段應(yīng)設(shè)置為();true'false

8.映射一對(duì)多雙向關(guān)聯(lián)關(guān)系中設(shè)置SET元素:

請(qǐng)寫出級(jí)聯(lián)保存和更新、級(jí)聯(lián)刪除應(yīng)在set元素中需要設(shè)置那些子元素?(標(biāo)明關(guān)系、避面重復(fù)執(zhí)行多余SQL語

句)

Namecascadekeycolumnone-to-manyinverse

9.list要的實(shí)現(xiàn)類有那些?并按照存儲(chǔ)結(jié)構(gòu)、機(jī)制簡單的說一下。

LinkedList>ArryList、Vectoro

LinkedList采用鏈表數(shù)據(jù)結(jié)構(gòu)、ArryList代表大小可變的數(shù)組。

Vector與ArryList功能比較相似,區(qū)別在于Vector采用同步、ArryList沒有采用。

10:以下哪個(gè)不是Hibernate的檢索方式:

A、導(dǎo)航對(duì)象圖檢索B、OID檢索C、ORM檢索

D、QBC檢索E、本地SQL檢索F、HQL檢索

答案:C

1L持久化類的類名是Customer.java,寫出相應(yīng)的映射文件名。

答案:Customer.hbm.xml

12.繼承的三種方式

(1)繼承關(guān)系樹的每個(gè)具體類對(duì)應(yīng)一張表:在具體類對(duì)應(yīng)的表中,不僅包含和具體類屬性對(duì)應(yīng)的字段,還

包括與具體類的父類屬性對(duì)應(yīng)的字段。

(2)繼承關(guān)系樹的根類對(duì)應(yīng)一張表:在根類對(duì)應(yīng)的表中,不僅包括根類屬性對(duì)應(yīng)的字段,還包括根類的所

有子類屬性對(duì)應(yīng)的字段。

(3)繼承關(guān)系樹中的每個(gè)類對(duì)應(yīng)一張表,每個(gè)表中只包括和這個(gè)類本身屬性對(duì)應(yīng)的字段,子類的表參照父

類對(duì)應(yīng)的表。

13.Session接口是Hibernate應(yīng)用使用最廣泛的接口。Session也被稱為持久化管理器,它提供了和持久化相關(guān)

的操作,如添加、更新、刪除、加載和查詢對(duì)象。

14.請(qǐng)簡述Session的特點(diǎn)有哪些?

答案:

(1)不是線程安全的,因此在設(shè)計(jì)軟件架構(gòu)時(shí),應(yīng)該避免多個(gè)線程共享同一個(gè)Session實(shí)例。

(2)Session實(shí)例是輕量級(jí)的,所謂輕量級(jí)是指它的創(chuàng)建和銷毀不需要消耗太多的資源。這意味著在程序中可

以經(jīng)常創(chuàng)建或銷毀Session對(duì)象,例如為每個(gè)客戶請(qǐng)求分配單獨(dú)的Session實(shí)例,或者為每個(gè)工作單元分配單獨(dú)

的Session實(shí)例。

(3)在Session中,每個(gè)數(shù)據(jù)庫操作都是在一個(gè)事務(wù)(transaction)中進(jìn)行的,這樣就可以隔離開不同的操作(甚

至包括只讀操作)。

12、Hibernate中采用XML文件來配置對(duì)象-關(guān)系映射的優(yōu)點(diǎn)有那些?

答案:Hibernate既不會(huì)滲透到上層域模型中,也不會(huì)滲透到下層數(shù)據(jù)模型中。軟件開發(fā)人員可以獨(dú)立設(shè)計(jì)域模

型,不必強(qiáng)迫遵守任何規(guī)范。數(shù)據(jù)庫設(shè)計(jì)人員可以獨(dú)立設(shè)計(jì)數(shù)據(jù)模型,不必強(qiáng)迫遵守任何規(guī)范。對(duì)象-關(guān)系映射

不依賴于任何程序代碼,如果需要修改對(duì)象-關(guān)系映射,只需修改XML文件,不需要修改任何程序,提高了軟件

的靈活性,并且使維護(hù)更加方便。

13、在Hibernate應(yīng)用中Java對(duì)象的狀態(tài)有哪些?

答案:

1臨時(shí)狀態(tài)(transient):剛剛用new語句創(chuàng)建,還沒有被持久化,不處于Session的緩存中。處于臨時(shí)狀態(tài)的Java

對(duì)象被稱為臨時(shí)對(duì)象。

2持久化狀態(tài)(persistent):已經(jīng)被持久化,加入到Session的緩存中。處于持久化狀態(tài)的Java對(duì)象被稱為持久化

對(duì)象。

3游離狀態(tài)(detached):已經(jīng)被持久化,但不再處于Session的緩存中。處于游離狀態(tài)的Java對(duì)象被稱為游離對(duì)

象。

14、敘述Session的緩存的作用

答案:

(1)減少訪問數(shù)據(jù)庫的頻率。應(yīng)用程序從內(nèi)存中讀取持久化對(duì)象的速度顯然比到數(shù)據(jù)庫中查詢數(shù)據(jù)的速度快多

了,因此Session的緩存可以提高數(shù)據(jù)訪問的性能。

(2)保證緩存中的對(duì)象與數(shù)據(jù)庫中的相關(guān)記錄保持同步。當(dāng)緩存中持久化對(duì)象的狀態(tài)發(fā)生了變換,Session并不

會(huì)立即執(zhí)行相關(guān)的SQL語句,這使得Session能夠把幾條相關(guān)的SQL語句合并為一條SQL語句,以便減少訪問

數(shù)據(jù)庫的次數(shù),從而提高應(yīng)用程序的性能。

15、比較Hibernate的三種檢索策略優(yōu)缺點(diǎn);

答案:

I立即檢索;

優(yōu)點(diǎn):對(duì)應(yīng)用程序完全透明,不管對(duì)象處于持久化狀態(tài),還是游離狀態(tài),應(yīng)用程序都可以方便的從一個(gè)

對(duì)象導(dǎo)航到與它關(guān)聯(lián)的對(duì)象;

缺點(diǎn):Lselect語句太多;2.可能會(huì)加載應(yīng)用程序不需要訪問的對(duì)象白白浪費(fèi)許多內(nèi)存空間;

2延遲檢索:

優(yōu)點(diǎn):

由應(yīng)用程序決定需要加載哪些對(duì)象,可以避免可執(zhí)行多余的select語句,以及避免加載應(yīng)用程序不需要

訪問的對(duì)象。因此能提高檢索性能,并且能節(jié)省內(nèi)存空間;

缺點(diǎn):

應(yīng)用程序如果希望訪問游離狀態(tài)代理類實(shí)例,必須保證他在持久化狀態(tài)時(shí)已經(jīng)被初始化;

3迫切左外連接檢索

優(yōu)點(diǎn):

1對(duì)應(yīng)用程序完全透明,不管對(duì)象處于持久化狀態(tài),還是游離狀態(tài),應(yīng)用程序都可以方便地沖一個(gè)對(duì)象

導(dǎo)航到與它關(guān)聯(lián)的對(duì)象。

2使用了外連接,select語句數(shù)目少;

缺點(diǎn):

1可能會(huì)加載應(yīng)用程序不需要訪問的對(duì)象,白白浪費(fèi)許多內(nèi)存空間;2復(fù)雜的數(shù)據(jù)庫表連接也會(huì)影響檢

索性能;

16、多個(gè)事務(wù)并發(fā)運(yùn)行時(shí)的并發(fā)問題有哪些?

答案第一類丟失更新;臟讀;虛讀;不可重復(fù)讀;第二類丟失更新;

17、ORM解決的不匹配問題(域模型與關(guān)系模型之間存在的不匹配)

答:域模型是面向?qū)ο蟮?,關(guān)系模型是面向關(guān)系的。域模型中有繼承關(guān)系,關(guān)系模型中不能直接表示繼承

關(guān)系。域模型中有多對(duì)多關(guān)聯(lián)關(guān)系,關(guān)系模型中通過連接表來表示多對(duì)多關(guān)聯(lián)關(guān)系。域模型中有雙向關(guān)聯(lián)關(guān)系,

關(guān)系模型中只有單向參照關(guān)系,而且總是many參照。ne方。域模型提倡精粒度模型,關(guān)系模型提倡粗粒度模型。

18、session的清理和清空有什么區(qū)別?

session清理緩存是指按照緩存中對(duì)象的狀態(tài)的變化來同步更新數(shù)據(jù)庫;清空是session關(guān)閉;

19.請(qǐng)簡述Session的特點(diǎn)有哪些?

答案:

(1)不是線程安全的,因此在設(shè)計(jì)軟件架構(gòu)時(shí),應(yīng)該避免多個(gè)線程共享同一個(gè)Session實(shí)例。

(2)Session實(shí)例是輕量級(jí)的,所謂輕量級(jí)是指它的創(chuàng)建和銷毀不需要消耗太多的資源。這意味著在程序中可

以經(jīng)常創(chuàng)建或銷毀Session對(duì)象,例如為每個(gè)客戶請(qǐng)求分配單獨(dú)的Session實(shí)例,或者為每個(gè)工作單元分配單獨(dú)

的Session實(shí)例。

(3)在Session中,每個(gè)數(shù)據(jù)庫操作都是在一個(gè)事務(wù)(transaction)中進(jìn)行的,這樣就可以隔離開不同的操作(甚

至包括只讀操作)。

20.如下圖A、B、C請(qǐng)?zhí)砩献侄?,通過表C建立表A、表B的雙向關(guān)系(要求簡單連線)

表B

表A

表C

Jsp&servlet

1三個(gè)Statment區(qū)別,用法

Statment,基本的;PreparedStatement是可編譯的,提高效率,callableslatmenl,存儲(chǔ)過程

2Cookie

答:臨時(shí)cookie存在于內(nèi)存中,(公話),長時(shí)cookie存在于硬盤上長時(shí)coolkie和臨時(shí)cookie路徑問題

3servlet調(diào)試方式幾種方法

答:使用打印語句,使用TOMCAT日志,返回錯(cuò)誤頁面,使用IDE集成,重起服務(wù)器,直接查看HTML源代碼,

分別處理請(qǐng)求和響應(yīng)數(shù)據(jù)。

4.Cookie與session的區(qū)別是:session為短對(duì)話,Cookie可以設(shè)置任意時(shí)間的有效期。

5.Get請(qǐng)求和Post請(qǐng)求區(qū)別

答:a、Post是通過Http中的Post機(jī)制將表單中的數(shù)據(jù)提交道Action所制定的程序Get方法是通過UH請(qǐng)求來提

交表單數(shù)據(jù)的。

b.Get適用于傳輸數(shù)據(jù)量小于1K數(shù)據(jù),執(zhí)行效率高。Post傳輸數(shù)據(jù)量較大,但也有限量。

6.servlet生命周期

答:Servlet的生命周期始于將它裝入Web服務(wù)器的內(nèi)存時(shí),并在終止或重新裝入Servlet時(shí)結(jié)束。包括加載

和實(shí)例化、初始化、處理請(qǐng)求以及服務(wù)結(jié)束。這個(gè)生存期由javax.servlet.Servlet接口的init,service和destroy

方法表達(dá)。

描述servlet的生命周期,誰來控制servlet的生命周期,servlet生命周期在J2EE規(guī)范中是如何來定義的服務(wù)器實(shí)

例化一個(gè)servlet對(duì)象,容器運(yùn)行其init方法,請(qǐng)求到達(dá)時(shí)運(yùn)行其service方法,service方法根據(jù)請(qǐng)求的類型調(diào)用

(doGet,doPost)方法,當(dāng)服務(wù)器決定將實(shí)例銷毀時(shí)調(diào)用其destory方法

7、Servlet和Jsp的區(qū)別?

答:Servlet是直接執(zhí)行的文件Jsp是要被通過編譯形成Servlet后才執(zhí)行。

8.JSP構(gòu)架模型

Modell:純jsp維護(hù)難,代碼可復(fù)用性差

Model2:jsp+javabean在jsp中使用usebean標(biāo)簽,代碼在jsp中本質(zhì)同Model1

Mvc:jsp+servlet+javabean

9.JSP隱含變量

request用戶端請(qǐng)求,此請(qǐng)求會(huì)包含來自GET/POST請(qǐng)求的參數(shù)

response網(wǎng)頁傳回用戶端的回應(yīng)

pageContext網(wǎng)頁的屬性是在這里管理

session與請(qǐng)求有關(guān)的會(huì)話期

applicationservlet正在執(zhí)行的內(nèi)容

configservlet的構(gòu)架部件

out用來傳送回應(yīng)的輸出(用來向客戶端輸出數(shù)據(jù))

pageJSP網(wǎng)頁本身

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

10.四大共享范圍

答:a、page當(dāng)前頁面。

b、session同一個(gè)網(wǎng)站內(nèi)。

c、request從上一頁到下一個(gè)頁面。

d^application同一個(gè)網(wǎng)站內(nèi)。

11.MVC——如何理解MVC

答:MVC是Model-View-Controller的簡寫。

"Model"代表的是應(yīng)用的業(yè)務(wù)邏輯(通過JavaBean,EJB組件實(shí)現(xiàn)),

"View"是應(yīng)用的表示面(由JSP頁面產(chǎn)生),

"Controller"是提供應(yīng)用的處理過程控制(一般是一個(gè)Servlet),通過這種設(shè)計(jì)模型把應(yīng)用邏輯,處理過程

和顯示邏輯分成不同的組件實(shí)現(xiàn)。這些組件可以進(jìn)行交互和重用。

11.JSP生命周期

請(qǐng)求請(qǐng)求請(qǐng)求請(qǐng)求請(qǐng)求請(qǐng)求

#1#2#3#4#5#6

JSP頁面YesNoNoNoYesNo

轉(zhuǎn)換成servlet

servlet"新YesNoNoNoYesNo

創(chuàng)建servlet實(shí)例YesNoYesNoYesNo

并裁入服務(wù)器

的內(nèi)存

init(或類似的YesNoYesNoYesNo

函數(shù))被調(diào)用

doGet(或類似YesYesYesYesYesYes

的函數(shù))被調(diào)用

12>JSP中動(dòng)態(tài)

INCLUDE與靜態(tài)INCLUDE的區(qū)別?

動(dòng)態(tài)INCLUDE用jsp:include動(dòng)作實(shí)現(xiàn),它總是會(huì)檢查所含文件中的變化,適合用于包含動(dòng)態(tài)頁面,并且可以帶

參數(shù)。

靜態(tài)INCLUDE用include偽碼實(shí)現(xiàn),定不會(huì)檢查所含文件的變化,適用于包含靜態(tài)頁面

13.Forword和SendRedirect區(qū)別

答:前者僅是容器中控制權(quán)的轉(zhuǎn)向,在客戶端瀏覽器地址欄中不會(huì)顯示出轉(zhuǎn)向后的地址;

后者則是完全的跳轉(zhuǎn),瀏覽器將會(huì)得到跳轉(zhuǎn)的地址,并重新發(fā)送請(qǐng)求鏈接。這樣,從瀏覽器的地址欄中可以

看到跳轉(zhuǎn)后的鏈接地址。

所以,前者更加高效,在前者可以滿足需要時(shí),盡量使用forward。方法,并且,這樣也有助于隱藏實(shí)際的鏈

接。但在有些情況下,比如,需要跳轉(zhuǎn)到一個(gè)其它服務(wù)器上的資源,則必須使用sendRedirect。方法。

forward是服務(wù)器請(qǐng)求資源,服務(wù)器直接訪問目標(biāo)地址的URL,把那個(gè)URL的響應(yīng)內(nèi)容讀取過來,然后把這

些內(nèi)容再發(fā)給瀏覽器,瀏覽器根本不知道服務(wù)器發(fā)送的內(nèi)容是從哪兒來的,所以它的地址欄中還是原來的地址。

redirect就是服務(wù)端根據(jù)邏輯,發(fā)送一個(gè)狀態(tài)碼,告訴瀏覽器重新去請(qǐng)求那個(gè)地址,一般來說瀏覽器會(huì)用剛才請(qǐng)

求的所有參數(shù)重新請(qǐng)求,所以session,request參數(shù)都可以獲取。

14.從BeanFactoy或Applicationcontext是通過什么模式取得實(shí)例的?如果要取得多個(gè)實(shí)例在配制文件中要怎

樣做映射

答:是通過單態(tài)模式取得實(shí)例的,在配制文件中可以改,好像是isthread…設(shè)成false

15.jsp有哪些動(dòng)作?作用分別是什么?

答:JSP共有以下6種基本動(dòng)作

jsp:include:在頁面被請(qǐng)求的時(shí)候引入一個(gè)文件。

jsp:useBean:尋找或者實(shí)例化一個(gè)JavaBean-

jsp:setProperty:設(shè)置JavaBean的屬性。

jsp:getProperty:輸出某個(gè)JavaBean的屬性。

jsp:forward:把請(qǐng)求轉(zhuǎn)到一個(gè)新的頁面。

jsp:plugin:根據(jù)瀏覽器類型為Java插件生成OBJECT或EMBED標(biāo)記

16.請(qǐng)簡述Session的特點(diǎn)有哪些?

答案:

(1)不是線程安全的

(2)Session實(shí)例是輕量級(jí)的

(3)在Session中,每個(gè)數(shù)據(jù)庫操作都是在一個(gè)事務(wù)(transaction)中進(jìn)行的

17.敘述Session的緩存的作用

答案:

(1)減少訪問數(shù)據(jù)庫的頻率。

(2)保證緩存中的對(duì)象與數(shù)據(jù)庫中的相關(guān)記錄保持同步。

18、如何設(shè)置/取得Bean中的屬性值?

答:設(shè)置屬性值<jsp:setPropertyname="haha",property="haha的屬性"value二"變量值"/>

<jsp:setPropertyname="haha”,property="*"/〉獲取從上一個(gè)表單中提交過來的,與Bean中變量名字相同的所

有屬性.

取得屬性值:<jsp:getPropertyname="haha''property="bean的屬性”/>

相當(dāng)于:<%=getA()%>

19NJavaBean的使用:<jsp:useBeanid=''name"class二"sist.md5"scope="page''/>或者vjsp:useBeanid="name"

class="sist.md5"scope=,,page,,x/jsp:useBean>

20、實(shí)現(xiàn)頁面跳轉(zhuǎn)的兩種方法:

答:a><jsp:fbrwardpage=''for2.jsp'7>

b、<%response.sendRedirect(ttfor2.jsp,,);%>

21、inchide指令標(biāo)簽:

<%@includefile=,,incl.jsp,,%>簡單的代碼復(fù)制。

include動(dòng)作標(biāo)簽:<jsp:includepage="inc2.jsp”>獲取inc2.jsp的執(zhí)行結(jié)果。

22、頁面之間的值傳遞:

答:a、設(shè)置Session變量:session.setAttribute("<name,,,,,sisf,);

獲取Session變量:session.getAttribute(“name”);

b、地址方式傳遞:show.jsp?id=變量值

23、內(nèi)置對(duì)象的作用域分為4種:

答:a、page當(dāng)前頁面。

b、session同一個(gè)網(wǎng)站內(nèi)。

c、request從上一頁到下一個(gè)頁面。

d、application同一個(gè)網(wǎng)站內(nèi)。

24、獲取sessionID:<%=session.getld()%>;判斷session是否有效:session.isNew();

25、使用Cookie對(duì)象

答:Cookieck=newCookie(<<name,,,,,sisf,);

寫入:response.addCookie(ck);

讀?。篊ookie[]ck=request.getCookies();

If(ck==null)

for(inta=0;a<ck.length;a++)

If("name".equals(ck[a].getName()))

Out.print(ck[a].getValue());

26、什么是servlet:在web容器中運(yùn)行的服務(wù)器端JAVA程序,主要用于響應(yīng)HTTP請(qǐng)求。Servlet一般用于MVC

中的控制器部分。

27、什么是servlet容器:用來管理servlet生命周期的應(yīng)用程序如(tomcat)。

28什么是JSPPage:javaserverpage是servlet的擴(kuò)展,強(qiáng)調(diào)web頁面表達(dá),編譯后是一個(gè)類servleto

29、JSP標(biāo)簽

動(dòng)作標(biāo)簽:jsp:includejsp:forwordjsp:usebeanjsp:set/getProperty

指令標(biāo)簽:<%@page%><%@include%><%@taglib%>

30^servlet中如何

A、從HTML表單中獲得參數(shù)

request.getParameterNames();enumer;

request.getParameter();String

b、如何獲得請(qǐng)求頭部的信息

Enumerationenumer=request.getHeaderNames();

While(enumer.HasMoreElements())

(

Stringheader=enumer.next();

Stringresult=request.getHeader(header);

Out.print(result);

)

C、如何獲得客戶cookie的信息

request.getCookies();array[J

d、如何設(shè)置response的頭部信息

response.setHeader();

e、如何設(shè)置響應(yīng)的contenttype

response.setContentTypeC'text/htmlcharset=utf-8M);

f、如何獲得I/O流、text流、二進(jìn)制流

g、如何從當(dāng)前的servlet重定向到其他的URL

response.sendRedirect(uurr,)

RequstDispatcherrd=request.getRequstDispatcher(uurF,)

Rd.forword(request,response);

h如何向客戶端寫cookie

Cookiecookie=newCookie("object''Jjklj'');

Cookie.setMaxAge(時(shí)間);

Response.addCookie(cookie);

31、描述servlet的生命周期,誰來控制servlet的生命周期,servlet生命周期在J2EE規(guī)范中是如何來定義的

服務(wù)器實(shí)例化一個(gè)servlet對(duì)象,容器運(yùn)行其init方法,請(qǐng)求到達(dá)時(shí)運(yùn)行其service方法,service方法根據(jù)請(qǐng)

求的類型調(diào)用(doGet,doPost)方法,當(dāng)服務(wù)器決定將實(shí)例銷毀時(shí)調(diào)用其destory方法。

32、如何創(chuàng)建RequestDispatcher對(duì)象,如何將請(qǐng)求轉(zhuǎn)發(fā)給其它的web資源(包含其它的web資源),描述如何

利用request來存狀態(tài),以及與其它保存狀態(tài)方法有什么區(qū)別

RequstDispatcherrd=request.getRequstDispatcher(4turF,)

Rd.forword(request,response);

Request.setAttribute(t4object,,,,,rt容");

一旦產(chǎn)生響應(yīng)request的生命周期就結(jié)束了

33、如何在web.xml中配置servlet定義

<servlet>

<servlel-name>name</servlet-name>

<servlet-class>package</servlet-class>

</servlet>

映射

<servlet-mapping>

<servlet-name>name</servlet-name>

<url-patten>/patten</url-patten>

</servlet-mapping>

34、獲得ServletConfig對(duì)象

ServletConfigsc=getServletConfig();

35、如何獲得servletContext對(duì)象

servletContextsc=getservletContext();

36、<html><body>

<ahref=,7servlet/HelloServlet,,>POST</a>

</body></html>

調(diào)用servlet時(shí)采用了doPost、doGet、doForm、doHref中的哪個(gè)方法

doGet方法

37、說明如下的web的資源應(yīng)該放在web容器中的什么目錄下,靜態(tài)頁面JSP、servletclass>web.xml>Tag

libraries、JARFile、javaclass以及需要保護(hù)的資源文件

tomcat容器web.xml,Taglibraries:\webappsVE程名\WEB-INF

servlet,javaclass:\webapps\lO^\WEB-INF\classes\

jar:\webappsVE程名\WEB-INF\lib\

38、描述requestsessionwebapplication的區(qū)別,創(chuàng)建監(jiān)聽器類來監(jiān)聽每個(gè)scope的生命周期

生命周期不同request產(chǎn)生響應(yīng)時(shí)生命周期結(jié)束,session在web.xml中設(shè)置生命周期時(shí)間、手動(dòng)清除web容

器重啟生命周期結(jié)束。Webapplication容器重啟、手動(dòng)清除

39、JSP的內(nèi)置對(duì)象及方法。

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

header,和session數(shù)據(jù)的有用的方法。

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

等)

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

pageContext表示一個(gè)javax.servlet.jsp.PageContext對(duì)象。它是用于方便存取各種范圍的名字空間、servlet相關(guān)

的對(duì)象的API,并且包裝了通用的servlet相關(guān)功能的方法。

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

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

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

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

40、JSP的常用指令

<%@pagelanguage=njava"contenType=',text/html;charset=gb2312Hsession="trueHbuffer="64kbnautoFlush=ntruen

isThreadSafe=ntrueHinfo="text"errorPage=nerror.jsp"isErrorPage="true"isELIgnored=ntruenpageEncoding="gb2312"

import=ujava.sql.*"%>

isErrorPage(是否能使用Exception對(duì)象),isELIgnored(是否忽略表達(dá)式)

<%@includefile="filename"%>

<%(3)taglibprefix="c"uri="http:〃"%>

41、JSP和Servlet有哪些相同點(diǎn)和不同點(diǎn),他們之間的聯(lián)系是什么?

JSP是Servlet技術(shù)的擴(kuò)展,本質(zhì)上是Servlet的簡易方式,更強(qiáng)調(diào)應(yīng)用的外表表達(dá)。JSP編譯后是"類servlet"□Servlet

和JSP最主要的不同點(diǎn)在于,Servlet的應(yīng)用邏輯是在Java文件中,并且完全從表示層中的HTML里分離開來。

而JSP的情況是Java和HTML可以組合成一個(gè)擴(kuò)展名為.jsp的文件。JSP側(cè)重于視圖,Servlet主要用于控制邏

輯。

42、四種會(huì)話跟蹤技術(shù)

會(huì)話作用域ServletsJSP頁面描述

page是代表與一個(gè)頁面相關(guān)的對(duì)象和屬性。一個(gè)頁面由一個(gè)編譯好的Javaservlet類(可以帶有任何的include

指令,但是沒有include動(dòng)作)表示。這既包括servlet又包括被編譯成servlet的JSP頁面

request是代表與Web客戶機(jī)發(fā)出的一個(gè)請(qǐng)求相關(guān)的對(duì)象和屬性。一個(gè)請(qǐng)求可能跨越多個(gè)頁面,涉及多個(gè)Web

組件(由于forward指令和include動(dòng)作的關(guān)系)

session是代表與用于某個(gè)Web客戶機(jī)的一個(gè)用戶體驗(yàn)相關(guān)的對(duì)象和屬性。一個(gè)Web會(huì)話可以也經(jīng)常會(huì)跨越多

個(gè)客戶機(jī)請(qǐng)求

application是代表與整個(gè)Web應(yīng)用程序相關(guān)的對(duì)象和屬性。這實(shí)質(zhì)上是跨越整個(gè)Web應(yīng)用程序,包括多個(gè)頁

面、請(qǐng)求和會(huì)話的一個(gè)全局作用域

43、根據(jù)JSP的生命周期完成下面表格

請(qǐng)求請(qǐng)求請(qǐng)求請(qǐng)求請(qǐng)求請(qǐng)求

#1#2#3#4#5#6

JSP頁面YesNoNoNoYesNo

轉(zhuǎn)換成servlet

servletttvlYesNoNoNoYesNo

創(chuàng)建servlet實(shí)例YesNoYesNoYesNo

并栽入服務(wù)同

的內(nèi)存8

init(域類似的YesNoYesNoYesNo

函數(shù))被調(diào)用

doGet(或類似YesYesYesYesYesYes

的函數(shù))被調(diào)用

jdbc

1JDBC連接數(shù)據(jù)庫6步

1.LoadtheJDBCDriver

2.EstablishtheDatabaseConnection

3.CreateaStatementObject

4.ExecuteaQuery

5.ProcesstheResults

6.ClosetheConnection

2事務(wù)的4大特性

答:原子性A,一致性C,隔離性I,永久性D

3.selectcount(*)fromstudent和selectcount(id)fromstudent之間的區(qū)別。

答案:

selectcount(*)統(tǒng)計(jì)所有學(xué)生的記錄個(gè)數(shù),包括空記錄。

Selectcount(Id)統(tǒng)計(jì)所有學(xué)生的記錄個(gè)數(shù),不包括null記錄。

4假設(shè)現(xiàn)在有表system.tablel,表中有三個(gè)字段:id(數(shù)值型)、name(字符型)、age(數(shù)值型)寫出SQL語句

完成如下功能:在表中查出年齡大于20,且名字以“王”開頭的記錄,并且按照年齡的倒敘排列出來(年齡大的

在前面)。

答案:

Select*fromsystem.table1whereage>20andnamelike'王%'orderbyageDESC;

5.創(chuàng)建CUSTOMERS表,字段為:ID:(非空,主鍵)bigint,NAME:(非空)varchar,AGE:int類型;創(chuàng)

建ORDERS表,字段為:ID:(非空,主鍵,)bigint,ORDER_NUMBER:(非空)varchar,PRICE:double,

CUSTOMERJD:(外鍵)bigint,設(shè)置級(jí)連刪除;

答案:createtableCUSTOMBERS(

IDbigintnotnull,

NAMEvarchar(15),

AGEint,

primarykey(ID)

);

createtableORDERS(

IDbigintnotnull,

ORDER_NUMBERvarchar(15)notnulll,

溫馨提示

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

評(píng)論

0/150

提交評(píng)論