




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
應(yīng)聘Java筆試時可能出現(xiàn)問題及其答案前段時間因為要參加一個筆試,在準備期間在網(wǎng)上找到了兩條關(guān)于筆試題目的文章,其中一篇為<<有感:應(yīng)聘Java筆試時可能出現(xiàn)問題>>,還有一篇忘了名字,讀后深受啟發(fā)。在尋找這些答案的過程中,我將相關(guān)答案記錄下來,就形成了以下這些東西。需要說明的是以下答案肯定有很多不完整甚至錯誤的地方,需要各位來更正與完善它,千萬不要扔我的雞蛋啊。希望本文能夠給即將奔赴筆試考場的同仁些許幫助,更希望更多的人加入到收集整理筆試題與完善答案的這些工作中來,為大家更好的獲得工作機會做一點貢獻。在此感謝前面兩文的作者的對筆試題目的收集與整理。如有任何意見與建議請通過QQ:6045306,Mail:huijunzi@21與我聯(lián)系。Java基礎(chǔ)方面:1、作用域public,private,protected,以及不寫時的區(qū)別答:區(qū)別如下:作用域當前類同一package子孫類其他packagepublic√√√√protected√√√×friendly√√××private√×××不寫時默認為friendly2、ArrayList和Vector的區(qū)別,HashMap和Hashtable的區(qū)別答:就ArrayList與Vector主要從二方面來說.一.同步性:Vector是線程安全的,也就是說是同步的,而ArrayList是線程序不安全的,不是同步的二.數(shù)據(jù)增長:當需要增長時,Vector默認增長為原來一培,而ArrayList卻是原來的一半就HashMap與HashTable主要從三方面來說。一.歷史原因:Hashtable是基于陳舊的Dictionary類的,HashMap是Java1.2引進的Map接口的一個實現(xiàn)二.同步性:Hashtable是線程安全的,也就是說是同步的,而HashMap是線程序不安全的,不是同步的三.值:只有HashMap可以讓你將空值作為一個表的條目的key或value3、char型變量中能不能存貯一個中文漢字?為什么?答:是能夠定義成為一個中文的,因為java中以unicode編碼,一個char占16個字節(jié),所以放一個中文是沒問題的4、多線程有幾種實現(xiàn)方法,都是什么?同步有幾種實現(xiàn)方法,都是什么?答:多線程有兩種實現(xiàn)方法,分別是繼承Thread類與實現(xiàn)Runnable接口同步的實現(xiàn)方面有兩種,分別是synchronized,wait與notify5、繼承時候類的執(zhí)行順序問題,一般都是選擇題,問你將會打印出什么?答:父類:packagetest;publicclassFatherClass{publicFatherClass(){System.out.println("FatherClassCreate");}}子類:packagetest;importtest.FatherClass;publicclassChildClassextendsFatherClass{publicChildClass(){System.out.println("ChildClassCreate");}publicstaticvoidmain(String[]args){FatherClassfc=newFatherClass();ChildClasscc=newChildClass();}}輸出結(jié)果:C:\>javatest.ChildClassFatherClassCreateFatherClassCreateChildClassCreate6、內(nèi)部類的實現(xiàn)方式?答:示例代碼如下:packagetest;publicclassOuterClass{privateclassInterClass{publicInterClass(){System.out.println("InterClassCreate");}}publicOuterClass(){InterClassic=newInterClass();System.out.println("OuterClassCreate");}publicstaticvoidmain(String[]args){OuterClassoc=newOuterClass();}}輸出結(jié)果:C:\>javatest/OuterClassInterClassCreateOuterClassCreate再一個例題:publicclassOuterClass{privatedoubled1=1.0;//insertcodehere}Youneedtoinsertaninnerclassdeclarationatline3.Whichtwoinnerclassdeclarationsarevalid?(Choosetwo.)A.classInnerOne{publicstaticdoublemethoda(){returnd1;}}B.publicclassInnerOne{staticdoublemethoda(){returnd1;}}C.privateclassInnerOne{doublemethoda(){returnd1;}}D.staticclassInnerOne{protecteddoublemethoda(){returnd1;}}E.abstractclassInnerOne{publicabstractdoublemethoda();}說明如下:一.靜態(tài)內(nèi)部類可以有靜態(tài)成員,而非靜態(tài)內(nèi)部類則不能有靜態(tài)成員。故A、B錯二.靜態(tài)內(nèi)部類的非靜態(tài)成員可以訪問外部類的靜態(tài)變量,而不可訪問外部類的非靜態(tài)變量;returnd1出錯。故D錯三.非靜態(tài)內(nèi)部類的非靜態(tài)成員可以訪問外部類的非靜態(tài)變量。故C正確四.答案為C、E7、垃圾回收機制,如何優(yōu)化程序?希望大家補上,謝謝8、float型floatf=3.4是否正確?答:不正確。精度不準確,應(yīng)該用強制類型轉(zhuǎn)換,如下所示:floatf=(float)3.49、介紹JAVA中的CollectionFrameWork(包括如何寫自己的數(shù)據(jù)結(jié)構(gòu))?答:CollectionFrameWork如下:Collection├List│├LinkedList│├ArrayList│└Vector│└Stack└SetMap├Hashtable├HashMap└WeakHashMapCollection是最基本的集合接口,一個Collection代表一組Object,即Collection的元素(Elements)Map提供key到value的映射10、Java中異常處理機制,事件機制?11、JAVA中的多形與繼承?希望大家補上,謝謝12、抽象類與接口?答:抽象類與接口都用于抽象,但是抽象類(JAVA中)可以有自己的部分實現(xiàn),而接口則完全是一個標識(同時有多重繼承的功能)。13、Java的通信編程,編程題(或問答),用JAVASOCKET編程,讀服務(wù)器幾個字符,再寫入本地顯示?答:Server端程序:packagetest;import.*;importjava.io.*;publicclassServer{privateServerSocketss;privateSocketsocket;privateBufferedReaderin;privatePrintWriterout;publicServer(){try{ss=newServerSocket(10000);while(true){socket=ss.accept();StringRemoteIP=socket.getInetAddress().getHostAddress();StringRemotePort=":"+socket.getLocalPort();System.out.println("Aclientcomein!IP:"+RemoteIP+RemotePort);in=newBufferedReader(newInputStreamReader(socket.getInputStream()));Stringline=in.readLine();System.out.println("Cleintsendis:"+line);out=newPrintWriter(socket.getOutputStream(),true);out.println("YourMessageReceived!");out.close();in.close();socket.close();}}catch(IOExceptione){out.println("wrong");}}publicstaticvoidmain(String[]args){newServer();}};Client端程序:packagetest;importjava.io.*;import.*;publicclassClient{Socketsocket;BufferedReaderin;PrintWriterout;publicClient(){try{System.out.println("TrytoConnectto:10000");socket=newSocket("",10000);System.out.println("TheServerConnected!");System.out.println("PleaseentersomeCharacter:");BufferedReaderline=newBufferedReader(newInputStreamReader(System.in));out=newPrintWriter(socket.getOutputStream(),true);out.println(line.readLine());in=newBufferedReader(newInputStreamReader(socket.getInputStream()));System.out.println(in.readLine());out.close();in.close();socket.close();}catch(IOExceptione){out.println("Wrong");}}publicstaticvoidmain(String[]args){newClient();}};14、用JAVA實現(xiàn)一種排序,JAVA類實現(xiàn)序列化的方法(二種)?如在COLLECTION框架中,實現(xiàn)比較要實現(xiàn)什么樣的接口?答:用插入法進行排序代碼如下packagetest;importjava.util.*;classInsertSort{ArrayListal;publicInsertSort(intnum,intmod){al=newArrayList(num);Randomrand=newRandom();System.out.println("TheArrayListSortBefore:");for(inti=0;i<num;i++){al.add(newInteger(Math.abs(rand.nextInt())%mod+1));System.out.println("al["+i+"]="+al.get(i));}}publicvoidSortIt(){IntegertempInt;intMaxSize=1;for(inti=1;i<al.size();i++){tempInt=(Integer)al.remove(i);if(tempIValue()>=((Integer)al.get(MaxSize-1)).intValue()){al.add(MaxSize,tempInt);MaxSize++;System.out.println(al.toString());}else{for(intj=0;j<MaxSize;j++){if(((Integer)al.get(j)).intValue()>=tempIValue()){al.add(j,tempInt);MaxSize++;System.out.println(al.toString());break;}}}}System.out.println("TheArrayListSortAfter:");for(inti=0;i<al.size();i++){System.out.println("al["+i+"]="+al.get(i));}}publicstaticvoidmain(String[]args){InsertSortis=newInsertSort(10,100);is.SortIt();}}JAVA類實現(xiàn)序例化的方法是實現(xiàn)java.io.Serializable接口Collection框架中實現(xiàn)比較要實現(xiàn)Comparable接口和Comparator接口15、編程:編寫一個截取字符串的函數(shù),輸入為一個字符串和字節(jié)數(shù),輸出為按字節(jié)截取的字符串。但是要保證漢字不被截半個,如“我ABC”4,應(yīng)該截為“我AB”,輸入“我ABC漢DEF”,6,應(yīng)該輸出為“我ABC”而不是“我ABC+漢的半個”。答:代碼如下:packagetest;classSplitString{StringSplitStr;intSplitByte;publicSplitString(Stringstr,intbytes){SplitStr=str;SplitByte=bytes;System.out.println("TheStringis:′"+SplitStr+"′;SplitBytes="+SplitByte);}publicvoidSplitIt(){intloopCount;loopCount=(SplitStr.length()%SplitByte==0)?(SplitStr.length()/SplitByte):(SplitStr.length()/SplitByte+1);System.out.println("WillSplitinto"+loopCount);for(inti=1;i<=loopCount;i++){if(i==loopCount){System.out.println(SplitStr.substring((i-1)*SplitByte,SplitStr.length()));}else{System.out.println(SplitStr.substring((i-1)*SplitByte,(i*SplitByte)));}}}publicstaticvoidmain(String[]args){SplitStringss=newSplitString("test中dd文dsaf中男大3443n中國43中國人0ewldfls=103",4);ss.SplitIt();}}16、JAVA多線程編程。用JAVA寫一個多線程程序,如寫四個線程,二個加1,二個對一個變量減一,輸出。希望大家補上,謝謝17、STRING與STRINGBUFFER的區(qū)別。答:STRING的長度是不可變的,STRINGBUFFER的長度是可變的。如果你對字符串中的內(nèi)容經(jīng)常進行操作,特別是內(nèi)容要修改時,那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法Jsp方面1、jsp有哪些內(nèi)置對象?作用分別是什么?答:JSP共有以下9種基本內(nèi)置組件(可與ASP的6種內(nèi)部組件相對應(yīng)):request用戶端請求,此請求會包含來自GET/POST請求的參數(shù)response網(wǎng)頁傳回用戶端的回應(yīng)pageContext網(wǎng)頁的屬性是在這里管理session與請求有關(guān)的會話期applicationservlet正在執(zhí)行的內(nèi)容out用來傳送回應(yīng)的輸出configservlet的構(gòu)架部件pageJSP網(wǎng)頁本身exception針對錯誤網(wǎng)頁,未捕捉的例外2、jsp有哪些動作?作用分別是什么?答:JSP共有以下6種基本動作jsp:include:在頁面被請求的時候引入一個文件。jsp:useBean:尋找或者實例化一個JavaBean。jsp:setProperty:設(shè)置JavaBean的屬性。jsp:getProperty:輸出某個JavaBean的屬性。jsp:forward:把請求轉(zhuǎn)到一個新的頁面。jsp:plugin:根據(jù)瀏覽器類型為Java插件生成OBJECT或EMBED標記3、JSP中動態(tài)INCLUDE與靜態(tài)INCLUDE的區(qū)別?答:動態(tài)INCLUDE用jsp:include動作實現(xiàn)<jsp:includepage="included.jsp"flush="true"/>它總是會檢查所含文件中的變化,適合用于包含動態(tài)頁面,并且可以帶參數(shù)靜態(tài)INCLUDE用include偽碼實現(xiàn),定不會檢查所含文件的變化,適用于包含靜態(tài)頁面<%@includefile="included.htm"%>4、兩種跳轉(zhuǎn)方式分別是什么?有什么區(qū)別?答:有兩種,分別為:<jsp:includepage="included.jsp"flush="true"><jsp:forwardpage="nextpage.jsp"/>前者頁面不會轉(zhuǎn)向include所指的頁面,只是顯示該頁的結(jié)果,主頁面還是原來的頁面。執(zhí)行完后還會回來,相當于函數(shù)調(diào)用。并且可以帶參數(shù).后者完全轉(zhuǎn)向新頁面,不會再回來。相當于goto語句。Servlet方面1、說一說Servlet的生命周期?答:servlet有良好的生存期的定義,包括加載和實例化、初始化、處理請求以及服務(wù)結(jié)束。這個生存期由javax.servlet.Servlet接口的init,service和destroy方法表達。2、Servlet版本間(忘了問的是哪兩個版本了)的不同?希望大家補上,謝謝3、JAVASERVLETAPI中forward()與redirect()的區(qū)別?答:前者僅是容器中控制權(quán)的轉(zhuǎn)向,在客戶端瀏覽器地址欄中不會顯示出轉(zhuǎn)向后的地址;后者則是完全的跳轉(zhuǎn),瀏覽器將會得到跳轉(zhuǎn)的地址,并重新發(fā)送請求鏈接。這樣,從瀏覽器的地址欄中可以看到跳轉(zhuǎn)后的鏈接地址。所以,前者更加高效,在前者可以滿足需要時,盡量使用forward()方法,并且,這樣也有助于隱藏實際的鏈接。在有些情況下,比如,需要跳轉(zhuǎn)到一個其它服務(wù)器上的資源,則必須使用sendRedirect()方法。4、Servlet的基本架構(gòu)publicclassServletNameextendsHttpServlet{publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{}publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{}}Jdbc、Jdo方面1、可能會讓你寫一段Jdbc連Oracle的程序,并實現(xiàn)數(shù)據(jù)查詢.答:程序如下:packagehello.ant;importjava.sql.*;publicclassjdbc{StringdbUrl="jdbc:oracle:thin:@:1521:orcl";StringtheUser="admin";StringthePw="manager";Connectionc=null;Statementconn;ResultSetrs=null;publicjdbc(){try{Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();c=DriverManager.getConnection(dbUrl,theUser,thePw);conn=c.createStatement();}catch(Exceptione){e.printStackTrace();}}publicbooleanexecuteUpdate(Stringsql){try{conn.executeUpdate(sql);returntrue;}catch(SQLExceptione){e.printStackTrace();returnfalse;}}publicResultSetexecuteQuery(Stringsql){rs=null;try{rs=conn.executeQuery(sql);}catch(SQLExceptione){e.printStackTrace();}returnrs;}publicvoidclose(){try{conn.close();c.close();}catch(Exceptione){e.printStackTrace();}}publicstaticvoidmain(String[]args){ResultSetrs;jdbcconn=newjdbc();rs=conn.executeQuery("select*fromtest");try{while(rs.next()){System.out.println(rs.getString("id"));System.out.println(rs.getString("name"));}}catch(Exceptione){e.printStackTrace();}}}2、Class.forName的作用?為什么要用?答:調(diào)用該訪問返回一個以字符串指定類名的類的對象。3、Jdo是什么?答:JDO是Java對象持久化的新的規(guī)范,為javadataobject的簡稱,也是一個用于存取某種數(shù)據(jù)倉庫中的對象的標準化API。JDO提供了透明的對象存儲,因此對開發(fā)人員來說,存儲數(shù)據(jù)對象完全不需要額外的代碼(如JDBCAPI的使用)。這些繁瑣的例行工作已經(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)用可移植性更強。4、在ORACLE大數(shù)據(jù)量下的分頁解決方法。一般用截取ID方法,還有是三層嵌套方法。答:一種分頁方法<%inti=1;intnumPages=14;Stringpages=request.getParameter("page");intcurrentPage=1;currentPage=(pages==null)?(1):{Integer.parseInt(pages)}sql="selectcount(*)fromtables";ResultSetrs=DBLink.executeQuery(sql);while(rs.next())i=rs.getInt(1);intintPageCount=1;intPageCount=(i%numPages==0)?(i/numPages):(i/numPages+1);intnextPage;intupPage;nextPage=currentPage+1;if(nextPage>=intPageCount)nextPage=intPageCount;upPage=current1;if(upPage<=1)upPage=1;rs.close();sql="select*fromtables";rs=DBLink.executeQuery(sql);i=0;while((i<numPages*(current1))&&rs.next()){i++;}%>//輸出內(nèi)容//輸出翻頁連接合計:<%=currentPage%>/<%=intPageCount%><ahref="List.jsp?page=1">第一頁</a><ahref="List.jsp?page=<%=upPage%>">上一頁</a><%for(intj=1;j<=intPageCount;j++){if(currentPage!=j){%><ahref="list.jsp?page=<%=j%>">[<%=j%>]</a><%}else{out.println(j);}}%><ahref="List.jsp?page=<%=nextPage%>">下一頁</a><ahref="List.jsp?page=<%=intPageCount%>">最后頁</a>Xml方面1、xml有哪些解析技術(shù)?區(qū)別是什么?答:有DOM,SAX,STAX等DOM:處理大型文件時其性能下降的非常厲害。這個問題是由DOM的樹結(jié)構(gòu)所造成的,這種結(jié)構(gòu)占用的內(nèi)存較多,而且DOM必須在解析文件之前把整個文檔裝入內(nèi)存,適合對XML的隨機訪問SAX:不現(xiàn)于DOM,SAX是事件驅(qū)動型的XML解析方式。它順序讀取XML文件,不需要一次全部裝載整個文件。當遇到像文件開頭,文檔結(jié)束,或者標簽開頭與標簽結(jié)束時,它會觸發(fā)一個事件,用戶通過在其回調(diào)事件中寫入處理代碼來處理XML文件,適合對XML的順序訪問STAX:StreamingAPIforXML(StAX)2、你在項目中用到了xml技術(shù)的哪些方面?如何實現(xiàn)的?答:用到了數(shù)據(jù)存貯,信息配置兩方面。在做數(shù)據(jù)交換平臺時,將不能數(shù)據(jù)源的數(shù)據(jù)組裝成XML文件,然后將XML文件壓縮打包加密后通過網(wǎng)絡(luò)傳送給接收者,接收解密與解壓縮后再同XML文件中還原相關(guān)信息進行處理。在做軟件配置時,利用XML可以很方便的進行,軟件的各種配置參數(shù)都存貯在XML文件中。3、用jdom解析xml文件時如何解決中文問題?如何解析?答:看如下代碼,用編碼方式加以解決packagetest;importjava.io.*;publicclassDOMTest{privateStringinFile="c:\\people.xml";privateStringoutFile="c:\\people.xml";publicstaticvoidmain(Stringargs[]){newDOMTest();}publicDOMTest(){try{javax.xml.parsers.DocumentBuilderbuilder=javax.xml.parsers.DocumentBuilderFactory.newInstance().newDocumentBuilder();org.w3c.dom.Documentdoc=builder.newDocument();org.w3c.dom.Elementroot=doc.createElement("老師");org.w3c.dom.Elementwang=doc.createElement("王");org.w3c.dom.Elementliu=doc.createElement("劉");wang.appendChild(doc.createTextNode("我是王老師"));root.appendChild(wang);doc.appendChild(root);javax.xml.transform.Transformertransformer=javax.xml.transform.TransformerFactory.newInstance().newTransformer();transformer.setOutputProperty(javax.xml.transform.OutputKeys.ENCODING,"gb2312");transformer.setOutputProperty(javax.xml.transform.OutputKeys.INDENT,"yes");transformer.transform(newjavax.xml.transform.dom.DOMSource(doc),newjavax.xml.transform.stream.StreamResult(outFile));}catch(Exceptione){System.out.println(e.getMessage());}}}4、編程用JAVA解析XML的方式.答:用SAX方式解析XML,XML文件如下:<?xmlversion="1.0"encoding="gb2312"?><person><name>王小明</name><college>信息學院</college><telephone>6258113</telephone><notes>男,1955年生,博士,95年調(diào)入海南大學</notes></person>事件回調(diào)類SAXHandler.javaimportjava.io.*;importjava.util.Hashtable;importorg.xml.sax.*;publicclassSAXHandlerextendsHandlerBase{privateHashtabletable=newHashtable();privateStringcurrentElement=null;privateStringcurrentValue=null;publicvoidsetTable(Hashtabletable){this.table=table;}publicHashtablegetTable(){returntable;}publicvoidstartElement(Stringtag,AttributeListattrs)throwsSAXException{currentElement=tag;}publicvoidcharacters(char[]ch,intstart,intlength)throwsSAXException{currentValue=newString(ch,start,length);}publicvoidendElement(Stringname)throwsSAXException{if(currentElement.equals(name))table.put(currentElement,currentValue);}}JSP內(nèi)容顯示源碼,SaxXml.jsp:<HTML><HEAD><TITLE>剖析XML文件people.xml</TITLE></HEAD><BODY><%@pageerrorPage="ErrPage.jsp"contentType="text/html;charset=GB2312"%><%@pageimport="java.io.*"%><%@pageimport="java.util.Hashtable"%><%@pageimport="org.w3c.dom.*"%><%@pageimport="org.xml.sax.*"%><%@pageimport="javax.xml.parsers.SAXParserFactory"%><%@pageimport="javax.xml.parsers.SAXParser"%><%@pageimport="SAXHandler"%><%Filefile=newFile("c:\\people.xml");FileReaderreader=newFileReader(file);Parserparser;SAXParserFactoryspf=SAXParserFactory.newInstance();SAXParsersp=spf.newSAXParser();SAXHandlerhandler=newSAXHandler();sp.parse(newInputSource(reader),handler);HashtablehashTable=handler.getTable();out.println("<TABLEBORDER=2><CAPTION>教師信息表</CAPTION>");out.println("<TR><TD>姓名</TD>"+"<TD>"+(String)hashTable.get(newString("name"))+"</TD></TR>");out.println("<TR><TD>學院</TD>"+"<TD>"+(String)hashTable.get(newString("college"))+"</TD></TR>");out.println("<TR><TD>電話</TD>"+"<TD>"+(String)hashTable.get(newString("telephone"))+"</TD></TR>");out.println("<TR><TD>備注</TD>"+"<TD>"+(String)hashTable.get(newString("notes"))+"</TD></TR>");out.println("</TABLE>");%></BODY></HTML>EJB方面1、EJB2.0有哪些內(nèi)容?分別用在什么場合?EJB2.0和EJB1.1的區(qū)別?答:規(guī)范內(nèi)容包括Bean提供者,應(yīng)用程序裝配者,EJB容器,EJB配置工具,EJB服務(wù)提供者,系統(tǒng)管理員。這里面,EJB容器是EJB之所以能夠運行的核心。EJB容器管理著EJB的創(chuàng)建,撤消,激活,去活,與數(shù)據(jù)庫的連接等等重要的核心工作。JSP,Servlet,EJB,JNDI,JDBC,JMS2、EJB與JAVABEAN的區(qū)別?答:JavaBean是可復(fù)用的組件,對JavaBean并沒有嚴格的規(guī)范,理論上講,任何一個Java類都可以是一個Bean。但通常情況下,由于JavaBean是被容器所創(chuàng)建(如Tomcat)的,所以JavaBean應(yīng)具有一個無參的構(gòu)造器,另外,通常JavaBean還要實現(xiàn)Serializable接口用于實現(xiàn)Bean的持久性。JavaBean實際上相當于微軟COM模型中的本地進程內(nèi)COM組件,它是不能被跨進程訪問的。EnterpriseJavaBean相當于DCOM,即分布式組件。它是基于Java的遠程方法調(diào)用(RMI)技術(shù)的,所以EJB可以被遠程訪問(跨進程、跨計算機)。但EJB必須被布署在諸如Webspere、WebLogic這樣的容器中,EJB客戶從不直接訪問真正的EJB組件,而是通過其容器訪問。EJB容器是EJB組件的代理,EJB組件由容器所創(chuàng)建和管理??蛻敉ㄟ^容器來訪問真正的EJB組件。3、EJB的基本架構(gòu)答:一個EJB包括三個部分:RemoteInterface接口的代碼packageBeans;importjavax.ejb.EJBObject;importjava.rmi.RemoteException;publicinterfaceAddextendsEJBObject{//somemethoddeclare}HomeInterface接口的代碼packageBeans;importjava.rmi.RemoteException;importjaax.ejb.CreateException;importjavax.ejb.EJBHome;publicinterfaceAddHomeextendsEJBHome{//somemethoddeclare}EJB類的代碼packageBeans;importjava.rmi.RemoteException;importjavax.ejb.SessionBean;importjavx.ejb.SessionContext;publicclassAddBeanImplementsSessionBean{//somemethoddeclare}J2EE,MVC方面1、MVC的各個部分都有那些技術(shù)來實現(xiàn)?如何實現(xiàn)?答:MVC是Model-View-Controller的簡寫。"Model"代表
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 物業(yè)代管項目管理辦法
- 物業(yè)小區(qū)垃圾管理辦法
- 物業(yè)快遞郵政管理辦法
- 物業(yè)特種作業(yè)管理辦法
- 物業(yè)租賃管理辦法職責
- 物業(yè)管理酬金管理辦法
- 供應(yīng)信息收費管理辦法
- 兼職發(fā)單人員管理辦法
- 沈陽異地訂單管理辦法
- 華為外包人員管理辦法
- 2025年貴州省中考語文試卷真題(含答案)
- 2025年山西煙草專賣局考試題庫帶答案分析試卷及答案
- 2025年廣西公需科目答案02
- UPS電源施工方案
- 1000MW機組鍋爐長伸縮式吹灰器檢修規(guī)程
- 清關(guān)發(fā)票裝箱單樣本
- 地下水八大離子-陰陽離子平衡計算公式
- 超臨界蒸汽對鋼表面的氧化作用
- GB 18382-2021 肥料標識 內(nèi)容和要求(高清-現(xiàn)行)
- 廣州人才綠卡申請表
- 氣門搖臂軸支座的機械加工工藝與夾具設(shè)計說明書
評論
0/150
提交評論