版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1.離線查詢?nèi)コ貜?fù)項(xiàng)怎么加條件?
dc.selRmullTransformer(Crileria.DISTINCT_ROOT_ENTITY);
2.http協(xié)議及端口,smtp協(xié)議及端口
超文本傳輸協(xié)議端口80
簡單郵件傳輸協(xié)議端口25
3.編寫程序,完成文件復(fù)制功能錯(cuò)誤?
InputStreamis=newInputStream();
OutputStrcamos=newFileOutputStream(newFile("寫入的文件的路徑"));byte[]
buff=newbyte[8192];intlength=0;
while((length=is.read(buff))!=-l){
os.write(buff,0,length);
}然后try...catch。..finally{關(guān)閉流}
4.Servlel創(chuàng)建過程及生命周期Servle1在容器中運(yùn)行時(shí),其實(shí)例的創(chuàng)建及銷毀等是由容器進(jìn)
行控制。
Servlet的創(chuàng)建有兩種方法。
1、客戶端請求對應(yīng)的Senlet時(shí),創(chuàng)建Servlet實(shí)例;大部分Servlet都是這種Servleto
2^通過在web.xml中設(shè)置load-on-starlup來創(chuàng)建servlet實(shí)例,這種實(shí)例在Web應(yīng)用啟動(dòng)
時(shí),立即創(chuàng)建Servlet實(shí)例
Servlet的運(yùn)行都遵循如下生命周期:
1、創(chuàng)建Servlet實(shí)例。
2、Web容器調(diào)用Servlet的init方法,對Servlet進(jìn)行初始化。
3、Servlet初始化后,將一直存在于容器中,用于響應(yīng)客戶端請求。。如果客戶端有g(shù)et請
求,容器調(diào)用Se凹let的doGet方法處理并響應(yīng)請求。對于不同的請求,有不同的處理方
法,或者統(tǒng)一使用service方法處理來響應(yīng)用戶請求。
4、Web容器角色銷毀Servlet時(shí),調(diào)用Servlet的destroy方法,通常在關(guān)閉Web容器之
時(shí)銷毀Servleto
5.用sql語句分頁:list.map.set的存儲(chǔ)特點(diǎn)?
List以特定次序來持有元素,可有重復(fù)元素.Set無法擁有重亞元素,內(nèi)部排序.Map保存
key-value值,value可多值
6.final,finally,finaliz的區(qū)別
final一修飾符(關(guān)鍵字)如果一個(gè)類被聲明為final,意味著它不能再派生出新的子類,
不能作為父類被繼承。因比一個(gè)類不能既被聲明為abstract的,又被聲明為final的。將
變量或方法聲明為final,可以保證它們在使用中不被改變。被聲明為final的變量必須在聲
明時(shí)給定初值,而在以后的引用中只能讀取,不可修改被聲明為final的方法也同樣只能
使用,不能重載。
finally一再異常處理時(shí)提供finally塊來執(zhí)行任何清除操作。如果拋出一個(gè)異常,那么相
匹配的catch子句就會(huì)執(zhí)行,然后控制就會(huì)進(jìn)入finally塊(如果有的話)。
finalize一方法名。Java技術(shù)允許使用finalize。方法在垃圾收集器將對象從內(nèi)存中清除
出去之前做必要的清理工作。這個(gè)方法是由垃圾收集器在確定這個(gè)對象沒有被引用時(shí)對這個(gè)
對象調(diào)用的。它是在Objeci類中定義的,因此所有的類都繼承了它。子類覆蓋;finalize。
方法以整理系統(tǒng)資源或者執(zhí)行其他清理工作finalizeO方法是在垃圾收集器刪除對象之前
對這個(gè)對象調(diào)用的。
7.arraylist和vector的區(qū)別?
ArrayList作為一個(gè)常規(guī)用途的對象容器使用,用于替換原先的Vector。允許我們快速訪問
元素,但在從列表中部插入和刪除元素時(shí),速度卻嫌稍慢。
一般只應(yīng)該用Listiterator對一個(gè)ArrayList進(jìn)行向前和向后遍歷,不要用它刪除和插入元素;
與LinkedList相比,它的效率要低許多
8.Arraylistlinkedlist區(qū)別?
ArrayList采用的是數(shù)組形式來保存對象的,這種方式將對象放在連續(xù)的位置中,所以最大
的缺點(diǎn)就是插入刪除時(shí)非常麻煩LinkedList采用的將對象存放在獨(dú)立的空間中,而旦在每
個(gè)空間中還保存下一個(gè)鏈接的索引但是缺點(diǎn)就是查找非常麻煩要叢第一個(gè)索引開始
9.haSHMAP,HASHTABLE區(qū)另I」
1.Hashtable是Dictionary的子類,HashMap是Map接口的一個(gè)實(shí)現(xiàn)類:
2.Hashtable中的方法是同步的,而HashMap中的方法在缺省情況下是非同步的。
3.在HashM叩中,null可以作為鍵,這樣的鍵只有一個(gè);可以有一個(gè)或多個(gè)鍵所對應(yīng)的值為
nulL
10.描述Cookie和Session的作用,區(qū)別和各自的應(yīng)用范圍,Session工作原理
Cookie是在客戶端開辟的一塊可長期存儲(chǔ)用戶信息的地方;Session是在服務(wù)器內(nèi)存中開辟
的一塊存儲(chǔ)用戶信息的地方;當(dāng)客戶第一次訪問服務(wù)據(jù)時(shí),服務(wù)相在內(nèi)存創(chuàng)建對應(yīng)的Session
給訪問客戶,當(dāng)客戶離開或時(shí)間過期時(shí):服務(wù)器自動(dòng)銷毀Session;Session是由容器管理
的
1l.set,map,set接口的區(qū)別
list以特定次序來持有元素,可有重復(fù)元素,查找效率高,插入效率低化,
set無法擁有重更元素,內(nèi)部排序,檢索元素效率低,刪除和插入效率高,因?yàn)椴迦牒?/p>
刪除不會(huì)引起位置上的變化,
12.String和stringbuffer進(jìn)行字符串連接時(shí)的區(qū)別?
String對項(xiàng)內(nèi)容是不可改變的,StringBuffer是可以改變的,別且高效;
13.什么叫項(xiàng)目?
用有限的資源、有限的時(shí)間為特定客戶完成特定目標(biāo)的一次性工作
14.J2EEJ是什么意思?2是什么意思EE是什么意思?Slruls的攔截器你是怎么做的,是
獨(dú)立開發(fā)的,能夠獨(dú)立開發(fā)的到。然后問有哪幾種攔截?
Java2Platform?EnterpriseEdition
繼承Abstract]nterceptor類,覆蓋intercept。方法
有struts0己的攔截器如timer,i18n,scop,servlelconfig,tcken
還有自定義攔截器
15.簡單介紹Fjava?Spring的AOP,1OC的講述對struts2的了解,1,2的比較xml
的了解J2ee的webserviced的協(xié)議?
SpringAOP:代理機(jī)制Spring提供的自動(dòng)代理機(jī)制
Spring的IoC來實(shí)組件之間的依賴關(guān)系注入,使控制層與業(yè)務(wù)實(shí)現(xiàn)分離,即客戶通過
調(diào)用業(yè)務(wù)委托接口來調(diào)用具體的業(yè)務(wù)組件的實(shí)例,避免控制層與業(yè)務(wù)層的藕合帶來的維護(hù)
或升級(jí)困難。由Spring為DAO生成代理對象來為DAO添加事務(wù)服務(wù),由IoC容器DAO的代理實(shí)例注
入到業(yè)務(wù)組件中,業(yè)務(wù)組件通過DAO的委托接口調(diào)用DAO對象,使得上層組件不直接依賴于DAO的實(shí)現(xiàn)
類,使得持久層更換或修改不影響上層組件。
16.Collections,collection的區(qū)別
Collection是個(gè)java.uiil卜的接口,它是各種集合結(jié)構(gòu)的父接口。Collections是個(gè)java.util
下的普通類,它包含有各種有關(guān)集合操作的靜態(tài)方法。Collections是針對集合類的一個(gè)幫
助類,它提供一系列的郛態(tài)方法實(shí)現(xiàn)對各種集合的搜索,排序,線程安全化等操作
17.如何釋放過度使用的undo表空間
釋放undo表空間1.啟動(dòng)SQLPLUS,并用sys登陸到數(shù)據(jù)庫。2.查找數(shù)據(jù)庫的UNDO
表空間名3.確認(rèn)UNDO表空間;SQL>selectnamefromvStablespace;NAME
4.檢查數(shù)據(jù)庫UNDO表空間占用空間情況以及數(shù)據(jù)文件存放位置;5.查看回滾段的使
用情況,哪個(gè)用戶正在使用回滾段的資源,如果有用戶最好更換時(shí)間6.檢查UNDO
Segment狀態(tài)
18.數(shù)據(jù)庫里面游標(biāo),索引是怎么用的?在oracle數(shù)據(jù)庫中,用get和load方法這2個(gè)方
法來查沒有的數(shù)據(jù)那么分別會(huì)反饋什么樣的結(jié)果?
declarecurcursorkeysetfor
gel返回null,loadclassnotfoundException
19.在Oracle中數(shù)據(jù)庫中的一個(gè)表中,這個(gè)表沒有主鍵id也沒有特定標(biāo)示來查數(shù)據(jù),怎么查?
rowid
20.簡述privale、proleced、public、internal修飾符的訪問權(quán)限2.概述反射和序列化
請裂舉session、cookie、viewstatedn的應(yīng)用范圍4、簡述WebService和Remoting的特點(diǎn)
和運(yùn)用場景
同一個(gè)類同一個(gè)包不同包的子類不同包非子類
private*
default**
protected***
public****
Reflection是Java被視為動(dòng)態(tài)(或準(zhǔn)動(dòng)態(tài))語言的一個(gè)關(guān)鍵性質(zhì)。這個(gè)機(jī)制允許程序在運(yùn)行時(shí)透過Refl
ectiunAPIs取得任何一,卜己知名稱的class的內(nèi)部信息,包括其modifiers(public,static第等)、
superclass(例如Object)、實(shí)現(xiàn)之interfaces(例如Cloneable),也包括fields和methods的所
有信息,并可于運(yùn)行時(shí)改變佗Ids內(nèi)容或喚起methods。本文信由實(shí)例,大面積示范ReflectionAPIs。
序列化就是一種用來處理對象流的機(jī)制,所謂對象流也就是將對象的內(nèi)容進(jìn)行流化??梢詫α骰蟮膶ο?/p>
進(jìn)行讀寫操作,也可將流化后的對象傳輸于網(wǎng)絡(luò)之間。序列化是為了解決在對?對象流進(jìn)行讀寫操作時(shí)所引
發(fā)的問題。
序列化的實(shí)現(xiàn):將需要被序列化的類實(shí)現(xiàn)Serializable接口,該接口沒有需要實(shí)現(xiàn)的方法,
implementsSerializable只是為了標(biāo)注該對象是可被序列化的,然后使用一個(gè)輸出流(如:
Fileoutputstream)來構(gòu)域一個(gè)ObjectOutputStreamf對象流)對象,接著,使用
ObjectOutputStream對象的writeObject(Objectobj)方法就可以將參數(shù)為obj的對象寫出(即保存其
狀態(tài)),要恢復(fù)的話則用輸入流
21.ORACLE中not和and和or優(yōu)先級(jí)由高到低?
notandor
22.java是如何進(jìn)行異常處理的
調(diào)用這個(gè)對象的方法可以捕獲到這個(gè)異常并進(jìn)行處理。Java的異常處理是通過5個(gè)關(guān)鍵
詞來實(shí)現(xiàn)的:try、catch、throw、ihrows和finally。一般情況下是用try來執(zhí)行一段程序
23.struts2必備包
coninions-filcupload-1.2.1.jar
commons-io-1.3.2.jar
commons-logging-api-1.1.jar
freemarker-2.3.13.jar
ognl-2.6.11.jar
struts2-core-2.1.6.jar
xwork-2.1.2.jar
Dao是數(shù)據(jù)訪問對象DAO負(fù)責(zé)管理與數(shù)據(jù)源的連接來獲取和儲(chǔ)存其中的數(shù)據(jù)
ibtis中的#與$的區(qū)別
1、客戶端初始化一個(gè)指向Servlet容器(例如Tomcat)的請求
2、這個(gè)請求經(jīng)過一系列的過濾器(Filler)(這些過濾器中有一個(gè)叫做AclionConlexlQeanUp
的可選過濾器,這個(gè)過濾器對于Struts2和其他框架的集成很有幫助,例如:SitcMcsh
Plugin);
3、接著FiltcrDispatchcr被調(diào)用,F(xiàn)iltcrDispatchcr詢問ActionMappcr來決定這個(gè)請求是否
需要調(diào)用某個(gè)Action;
4、如果ActionMapper決定需要調(diào)用某個(gè)Action,FilterDispatcher把請求的處理交給
ActionProxy;
5、ActionProxy通過ConfigurationManager詢問框架的配置文件,找到需要調(diào)用的Action
類;
6、ActionProxy創(chuàng)建一個(gè)Actioninvocation的實(shí)例。
7、Actioninvocation實(shí)例使用命名模式來調(diào)用,在調(diào)用Action的過程前后,涉及到相關(guān)攔
械器(Intercepter)的調(diào)用。
8、一旦Action執(zhí)行完畢,Actioninvocation負(fù)責(zé)根據(jù)struts.xnil中的配置找到對應(yīng)的返回
結(jié)果。返回結(jié)果通常是(但不總是,也可能是另外的一個(gè)Action鏈)一個(gè)需要被表示的
JSP或者FreeMarker的模版。在表示的過程中可以使用Slruts2框架中繼承的標(biāo)簽。在這
個(gè)過程中需要涉及到ActionMappcr
簡述spring的事務(wù)傳播行為和隔離級(jí)別
25.寫一段把本地文件formfile拷貝到本地文件(oiile的程序
publicclassChangeJtdToJava{
publicstaticvoidmain(String[]args){
Filedir=newFile("f:/jld");
//得到d:/jtd下的所有文件對象
File[]files=dir.listFiles();
for(Filefile:files){
StringfileName=file.getName();//得到文件名
intindex=fileName.indexOf(".");〃.的索引位置
StringfileName?=fileName.substring(O,index);//不帶后綴名的文件名
StringhouZui=fileName.substrinxg(index);
if(houZui.equals(".jtd")){
//"f:/java/"+fileName2+".java"
//要移到的地方
file.renameTo(newFile("f:/java/"+fileName2+".java"));
I
)
}
26.寫出刪除表中重復(fù)記錄的語句oracle
deletefrompeople
wherepeopleldin(selectpeopleldfrompeoplegroupbypeopleldhaving
count(peopleld)>1)androwidnotin(selectmin(rowid)frompeoplegroupby
27.用java實(shí)現(xiàn)一種排序,java類實(shí)現(xiàn)序列化的方法(二種)?如在collection框架中,要實(shí)現(xiàn)什么樣
的接口
java.io.Serializable接口Collection框架中實(shí)現(xiàn)比較要實(shí)現(xiàn)Comparable接口和
Comparator接口
28.Struts2是如何實(shí)現(xiàn)攔截器的?
Struts2攔截器是在訪問某個(gè)Action或Action的某個(gè)方法,字段之前或之后實(shí)施攔截,
并且Struts2攔截器是可插拔的,攔截器是A0P的一種實(shí)現(xiàn)。實(shí)現(xiàn)原理:當(dāng)請求siruts2
的action時(shí),Slnils2會(huì)查找配置文件,并根據(jù)其配置實(shí)例化相對的攔截器對象,
然后串成一個(gè)列表,最后一個(gè)一個(gè)地調(diào)用列表中的攔截器
29.sleep。和wait。區(qū)別
sleep是線程類(Thread)的方法,導(dǎo)致此線程暫停執(zhí)行指定時(shí)間,給執(zhí)行機(jī)會(huì)給其他
線程,但是監(jiān)控狀態(tài)依然保持,到時(shí)后會(huì)自動(dòng)恢復(fù)。調(diào)用sleep不會(huì)釋放對象鎖。wait。.
會(huì)釋放鎖
3O.Servlet的生命周期分為5個(gè)階段:?和CGI的區(qū)別?
實(shí)例化:Servlet容器創(chuàng)建Servlet類的實(shí)例。
初始化:該容器調(diào)用iMt()方法,通常會(huì)申請資源。
服務(wù):由容器調(diào)用service。方法,(也就是doGet()和doPost())。
破壞:在釋放Servlet實(shí)例之前調(diào)用destroy。方法,通常會(huì)釋放資源。
31.foward和redirect區(qū)另。
redirect就是服務(wù)端根據(jù)邏輯,發(fā)送一個(gè)狀態(tài)碼,告訴瀏覽器重新去請求那個(gè)地址,一般來
說瀏覽器會(huì)用剛才請求的所有參數(shù)重新請求,所以session,requesl參數(shù)都可以獲取。web
應(yīng)用程序會(huì)要求客戶端瀏覽器重新發(fā)出請求地址,客戶端會(huì)重新連接至所指定的地址,
因此瀏覽器的地址會(huì)出現(xiàn)重新導(dǎo)向的信息,重新導(dǎo)向后的請求由瀏覽器發(fā)出,所以不能
訪問Web應(yīng)用程序中的隱
32.多線程、同步實(shí)現(xiàn)方法?
實(shí)現(xiàn)線程有兩種繼承Thread類或者實(shí)現(xiàn)Runnable接口…實(shí)現(xiàn)同步也有兩種,一種是用
同步方法,一種是用同步塊..同步方法就是在方法返回類型后面加.上synchronized,比
如:
publicvoidsynchronizedadd(){...}
同步塊就是直接寫:synchronized(這里寫需要同步的對象){...}
33.集合類有哪些?有哪些方法?
集合類ArrayLislLinkedListHashSetHashMap方法:
add(),remove(),put(),addAll(),removeAll()
34.java中實(shí)現(xiàn)多態(tài)的機(jī)制是什么
重寫,重載
35.靜態(tài)的多態(tài)和動(dòng)態(tài)的多態(tài)的區(qū)別
靜態(tài)的多態(tài):方法名相同,參數(shù)個(gè)數(shù)或類型不相同。(overloading)
動(dòng)態(tài)的多態(tài):子類覆蓋父類的方法,將子類的實(shí)例傳與父類的引用調(diào)用的是子類的方法
實(shí)現(xiàn)接口的實(shí)例傳與接口的引用調(diào)用的實(shí)現(xiàn)類的方法。
36.作用域Public,private,protected似及不寫時(shí)的區(qū)別
public整個(gè)java程序中郛可以訪問
protected在其他包中不可以詢問
friendly只有當(dāng)前包或當(dāng)前內(nèi)可以訪問,其他都不行
private只有當(dāng)前內(nèi)可以訪問
不寫的話默認(rèn)是protected
37.extends和implement的彳、同
extends是繼承父類,只要那個(gè)類不是聲明為final或者那個(gè)類定義為abstract的就能繼
承,JAVA中不支持多重繼承,但是可以用接口來實(shí)現(xiàn),這樣就要用到implements,繼
承只能繼承一個(gè)類,但implements可以實(shí)現(xiàn)多個(gè)接口,用逗號(hào)分開就行了比如class
AextendsBimplementsC,D,E
38.常用的設(shè)計(jì)模式?定義一個(gè)變量,Varv=ncwObject.用js編寫的簡便寫法是什么?join
與leftjoin的區(qū)另I]
DAO設(shè)計(jì)模式與DELEGATE模式
適配器模式與橋梁模式的區(qū)別
工廠模式
innerjoin:內(nèi)連接查詢操作列出與連接條件匹配的數(shù)據(jù)行,它使用比較運(yùn)算符比較被連接列
的列值
leftjoin:內(nèi)連接時(shí),返回查詢結(jié)果集合中的僅是符合查詢條件(WHERE搜索條件
或HAVING條件)和連接條件的行。而采用外連接時(shí),它返回到查詢結(jié)果集合中的不僅包含
符合連接條件的行,而且還包括左表(左外連接時(shí))、右表(右外連接時(shí))或兩個(gè)邊接表(全外連
接)中的所有數(shù)據(jù)行
39.Hibernale中離線查詢與在線查詢的區(qū)別
Criteria和DetachedCriteria的主要區(qū)別在于創(chuàng)建的形式不一樣,Criteria是在線的,
所以它是由HibernateSession進(jìn)行創(chuàng)建的;而DetachedCriteria是離線的,創(chuàng)建時(shí)無
需Session,DetachedCriteria提供了2個(gè)靜態(tài)方法forClass(Class)或
forEntityName(Narne)進(jìn)行DetachedCriteria實(shí)例的創(chuàng)建。
40.C#數(shù)據(jù)類型有哪些?
int整型double雙精度型string字符串型char字符型bool布爾型
41.抽象類能否被實(shí)例化
抽象類通常不是由程序員定義的,而是由項(xiàng)目經(jīng)理或模塊設(shè)計(jì)人設(shè)計(jì)抽象類的原因通
常是為了規(guī)范方法名抽象類必須要繼承,不然沒法用,作為模塊設(shè)計(jì)者,可以把讓底
層程序員直接用得方法直接調(diào)用,而一些需要讓程序員覆蓋后自己做得方法則定義稱抽
象方法
42.ASP.NET頁面?zhèn)鬟f值的方式有哪些
1通過URL鏈接地址傳遞2通過post方式。
send.aspx3通過session4通過Application
5通過Server.Transfersend.aspx:
43.如何定義一個(gè)窗口為MDI窗口?
MDI窗口就是說一個(gè)窗體做為容器,里面還可以添加其他窗體
44.WCF是什么?
WCF是微軟用以應(yīng)對SOA解決方案的開發(fā)需求而專門推出的是專門用丁?服務(wù)定制、
發(fā)布與運(yùn)行以及消息傳遞和處理的一組專門類的集合,也就是所謂的“類庫
45.常用的包,類,接口,各舉5個(gè)。
類StringIntegerLongFileDate包java.lang.*;java.io.*;java.util.*;java.swt.*;
java.malh.*;接口:Comparable,Connection,Map,List,Runable,
46.
1,網(wǎng)上購物系統(tǒng)的類圖,用例圖。
2,給你一個(gè)整數(shù)類型的數(shù)組,按從小到大的順序進(jìn)行排列!
publicstaticvoidfun(int[]a,intc)
(
for(in(i=O;i<a.lenglh-l;i++)
for(intj=i;j<a.length-l;j++)
if(ali]<a|j])
(
t=a[i];
a[i]=a[jl;
1
)
Syslem.oul.prinl(a[i]+"");
}
}
食詢出M頁的N行數(shù)據(jù)。
SelecttopNfromtablewhereidnotin(selecttop(M-1)*Nidfromtable)
l.linkedlistarraylist內(nèi)部是如何實(shí)現(xiàn)的newArrayLisl(lO)含義
47.面向?qū)ο笾饕獌?nèi)容?有什么作用?
就分析設(shè)計(jì)層面來說,面向?qū)ο蠹夹g(shù)提供了更高級(jí)的抽象能力以及更多的方法和工具,
如設(shè)計(jì)模式;就實(shí)現(xiàn)維護(hù)層面來說,面向?qū)ο蠹夹g(shù)使代碼重用更容易,且使代碼具有
可擴(kuò)展性,便于軟件的維護(hù)和升級(jí)更新。
49.如何移動(dòng)一個(gè)數(shù)是62-63=1成立
62-63=1如何移動(dòng)2的6次方等于642的6次方-63=1把2移動(dòng)到6的左下方
5O.JavaSQL2005導(dǎo)入importdata數(shù)據(jù)源例如有Oracle中的blob字段是否要用ole驅(qū)動(dòng)、遞
歸實(shí)現(xiàn)1,123,5,8,….第30個(gè)數(shù)是多少?
publicstaticintFoo(inti)
(
if(i<=0)
return0;
elseif(i>0&&i<=2)
return1;
elsereturnFoo(i-1)+Foo(i-2);
I
inti=Foo(30);
System.out.println(i);
51.JAVA實(shí)現(xiàn)向數(shù)據(jù)庫添加一列
Connectioncon=null;
ResultSetrs=null;
Class.forName("coin.microsoft.jdbc.sqlserver.SQLServerDriver");
Siringurl="jdbc:inicrosof(:sqlserver://localhost:1433;DaiabaseName=db_name";
Connectioncon=DriverManager.getConnection(url,
StaleManagersm=con.creaieStateMent();
Stringsql="insertableintovalues("aa","bb")";
rs=sm.excute(sql);
52.寫出刪除表中重復(fù)記錄的語句oracle
deletefrompeople
wherepeopleldin(selectpeopleldfrompeoplegroupbypeopleldhaving
count(peopleld)>1)androwidnotin(selectmin(rowid)frompeoplegroup
1:用什么方法使服務(wù)器關(guān)閉之后,session所保存的信息不會(huì)丟失?
使用cookie
2:如果頁面沒有標(biāo)簽,會(huì)出現(xiàn)什么錯(cuò)誤代碼?
沒有什么變化
3:抽象類是否可以沒有拍象方法?為什么?
可以在java中用abstract關(guān)鍵字來修飾一個(gè)類時(shí),這個(gè)類叫做抽象類。
抽象類中不一定要包含abstract方法,但一個(gè)類中包含了abstract方法,則這個(gè)類必須
聲明為abstract類。
4:servlet中的init方法什么時(shí)候被調(diào)用?
容器首次創(chuàng)建實(shí)例的時(shí)候
53.用4個(gè)0,用你所知道的數(shù)學(xué)方法計(jì)算出24
。的階乘等于1即0!=1那么4個(gè)。就是4了
又4的階乘為244!=24
54.1inux中進(jìn)程的杳看和調(diào)度分別用什么命令?
ps-A查看renicetop
55.sleep()和wait區(qū)別
sleep是線程類(Thread)的方法,導(dǎo)致此線程暫停執(zhí)行指定時(shí)間,給執(zhí)行機(jī)會(huì)給其他線程,
但是監(jiān)控狀態(tài)依然保持,到時(shí)后
56.集合類有哪些?有哪些方法?
集合類ArrayListLinkedListHashSetHashM叩方法:
add(),remove(),pul(),addAll(),removeAII()
57.OSI七層模型tep四層模型是什么樣的
OSI七層參考模型:物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層、應(yīng)用層、會(huì)話層、表示層
TCP/IP:第一層網(wǎng)絡(luò)接口層第二層第二層??網(wǎng)間層第三層??傳輸層第四層??應(yīng)用層
58.JAVA測試模式(ZZ):
模式(一)Main模式
模式(二)toString模式
模式(三)Equal模式
模式(四)InternalTesterClass模式
模式(五)ExternTesterCiass模式
60.一學(xué)生表!有班及id,學(xué)號(hào)!成績!一求平均成績!二求比平均成績高的學(xué)生的所有信
selectid,avg(成績)fromtablegroupbyid
select*fromtablewhere成績>(select成績from(selectid,avg(成績)成績fromtable
groupbyid)asa)
61.jdk的新特性
“JDK1.5”的一個(gè)重要主題就是通過新增一些特性來簡化開發(fā),這些特性包括泛型,for-each
循環(huán),自動(dòng)裝包/拆包,枚舉,可變參數(shù),靜態(tài)導(dǎo)入。使用這些特性有助于我們編寫更加
清晰,精悍,安全的代碼,
62.j2cc的規(guī)范?
SUN公司定義的一個(gè)開發(fā)分布式企業(yè)級(jí)應(yīng)用的規(guī)范。它提供了一個(gè)多層次的分布式應(yīng)用模
型和?系列開發(fā)技術(shù)規(guī)范,多層次分布式應(yīng)用模型是指根據(jù)功能把應(yīng)用邏輯分成多個(gè)層次,
每個(gè)層次支持相應(yīng)的服務(wù)器和組件,組件在分布式服務(wù)器的組件容器中運(yùn)行(如Servlet組
件在Servlet容器上運(yùn)行,EJB組件在EJB容器上運(yùn)行),容器間通過相關(guān)的協(xié)議進(jìn)行通訊,
實(shí)現(xiàn)組件間的相互調(diào)用J2EE規(guī)范定義了以下四個(gè)層次。I.客戶端層(ClientTier)2.W?b層
3.業(yè)務(wù)層(BusinessTier)4.企業(yè)信息系統(tǒng)層
63.ajax的工作原理?
Ajax基本上就是把JavaScript技術(shù)和XMLHttpRequest對象放在Web表單和服務(wù)器之間。當(dāng)用戶
填寫表單時(shí),數(shù)據(jù)發(fā)送給一些JavaScript代碼而不是直接發(fā)送給服務(wù)器。相反,JavaScript代碼捕獲
表單數(shù)據(jù)并向服務(wù)器發(fā)送請求。同時(shí)用戶醉幕上的表單也不會(huì)閃爍、消失或延遲。換句話說,JavaScript
代碼在幕后發(fā)送請求,用戶甚至不知道請求的發(fā)出。更好的是,請求是異步發(fā)送的,就是說JavaScript
代碼(和用戶)不用等待服務(wù)器的響應(yīng)。因此用戶可以繼續(xù)輸入數(shù)據(jù)、滾動(dòng)屏幕和使用應(yīng)用程序。
然后,服務(wù)器將數(shù)據(jù)返回JavaScript代碼(仍然在Web表單中),后者決定如何處理這些數(shù)據(jù)。它
可以迅速更新表單數(shù)據(jù),讓人感覺應(yīng)用程序是立即完成的,表單沒有提交或刷新而用戶得到了新數(shù)據(jù)。
JavaScript代碼甚至可以對收到的數(shù)據(jù)執(zhí)行某種計(jì)算,再發(fā)送另一個(gè)請求,完全不需要用戶干預(yù)!這就是
XMLHttpRequest的強(qiáng)大之處。它可以根據(jù)需要自行與服務(wù)器進(jìn)行交互,用戶甚至可以完全不知道幕后
發(fā)生的?切。結(jié)果就是類似于桌面應(yīng)用程序的動(dòng)態(tài)、快速響應(yīng)、高交互性的體驗(yàn),但是背后又擁有互聯(lián)網(wǎng)
的全部強(qiáng)大力量。
64.Xml特點(diǎn)?
65.oracle中除了數(shù)據(jù)庫備份,還有什么方法備份?
66.j2ee的常用設(shè)計(jì)模式
Factory(工廠模式),Builder(建造模式)fFacloryMethod(工廠方法模式),Prototype(原
始模型模式),Singleton(單例模式),Facade(門面模式),Adapter(適配器模式),Bridge
(橋梁模式)
67.由aaa字符串得到1000個(gè)a寫個(gè)程序
StringBuildersBuilder=newStringBuilder();
for(inti=O;i<333;i++){
sBuilder.Append("aaa");
)
sBuilder.Append("aaa".subS(ring(0.1));
68.servlet與cgi的區(qū)別
CGI應(yīng)用開發(fā)比較困難,因?yàn)樗蟪绦騿T有處理參數(shù)傳遞的知識(shí),這不是一種通用的技能。
CGI不可移植,為某一特定平臺(tái)編寫的CGI應(yīng)用只能運(yùn)行于這一環(huán)境中。每一個(gè)CGI應(yīng)用
存在于一個(gè)由客戶端請求激活的進(jìn)程中,并且在請求被服務(wù)后被卸載。這種模式將引起很高
的內(nèi)存、CPU開銷,而且在同一進(jìn)程中不能服務(wù)多個(gè)客戶。
Servlet提供了Java應(yīng)用程序的所有優(yōu)勢一一可移植、穩(wěn)健、易開發(fā)。使用ServlelTag技術(shù),
Servlet能夠生成嵌于靜態(tài)HTML頁面中的動(dòng)態(tài)內(nèi)容
Servlet對CGI的最主要優(yōu)勢在于一個(gè)Servlet被客戶端發(fā)送的第一個(gè)請求激活,然后它將繼
續(xù)運(yùn)行于后臺(tái),等待以后的請求。每個(gè)請求將生成?個(gè)新的線程,而不是一個(gè)完整的進(jìn)程。
多個(gè)客戶能夠在同一個(gè)進(jìn)程中同時(shí)得到服務(wù)。一般來說,Servlel進(jìn)程只是在WebServer卸
載時(shí)被卸載
69.SOCKET中有幾中連接方式,區(qū)別?
Sockets有兩種主要的操作方式:面向連接的和無連接的。無連接的操作使用數(shù)據(jù)報(bào)協(xié)議,無
連接的操作是快速的和高效的,但是數(shù)據(jù)安全性不佳.面向連接的操作使用TCP協(xié)議.面向連
接的操作比無連接的操作效率更低,但是數(shù)據(jù)的安全性更高
70.Socket如何獲取本地ip地址?
publicInetAddressgctLocal/\ddrcss()
71.truncate與delete的區(qū)別?
truncate是DDL^言.delete是DML言吾言DDL言吾言是白勤提交的.命令完成就不可回
海truncate的速度也比delete要快得多.
72.xml有哪些解析技術(shù),及區(qū)別?
有DOM,SAX,STAX等
DOM:處理大型文件時(shí)其性能下降的非常厲害。這個(gè)問題是由D0M的樹結(jié)構(gòu)所造成的,這
種結(jié)構(gòu)占用的內(nèi)存較多,而且DOM必須在解析文件之前把整個(gè)文檔裝入內(nèi)存,適合對XML
的隨機(jī)訪問SAX:不現(xiàn)于DOM,SAX是事件驅(qū)動(dòng)型的XML解析方式。它順序讀取XML文
件,不需要一次全部裝載整個(gè)文件。當(dāng)遇到像文件開頭,文檔結(jié)束,或者標(biāo)簽開頭與標(biāo)簽結(jié)
束時(shí),它會(huì)觸發(fā)一個(gè)事件,用戶通過在其回調(diào)事件中寫入處理代碼來處理XML文件,適
合對XML的順序訪問
73.文件和目錄(i/。)操作,怎么列出某目錄下所有文件?某目錄下所有子目錄,怎么判斷文件
或目錄是否存在?如何讀寫文件?
列出某目錄下所有文件:調(diào)用listFileO,然后判斷每個(gè)File對象是isFile還是isAbstracte(),
判斷文件或目錄是否存在:調(diào)用exist方法,讀寫文件使用FileReader和FileWritcr兩個(gè)類
即可
74.deletefromtablea和truncatetabletablea的區(qū)別!
這里說的delete是指不帶where子句的delete語句
相同點(diǎn):truncate和不帶where子句的delete,以及drop都會(huì)刪除表內(nèi)的數(shù)據(jù)
不同點(diǎn):
1.truncate和delete只刪除數(shù)據(jù)不刪除表的結(jié)構(gòu)(定義)
drop語句將刪除表的結(jié)構(gòu)被依賴的約束(constrain],觸發(fā)器(trigger),索引(index);依賴
于該表的存儲(chǔ)過程/函數(shù)將保留,但是變?yōu)閕nvalid狀態(tài).
2.delete語句足dml,這個(gè)碟作會(huì)放到rollbacksegement中,事務(wù)提交之后才生效;如果芍相
應(yīng)的trigger,執(zhí)行的時(shí)候?qū)⒈挥|發(fā).
truncate,drop是ddl,操作立即生效,原數(shù)據(jù)不放到rollbacksegment中,不能回滾.操作
不觸發(fā)trigger.
3.delete語句不影響表所占用的extent,高水線(highwatermark)保持原位置不動(dòng)
顯然drop語句將表所占用的空間全部釋放
truncate語句缺省情況下見空間釋放到minextents個(gè)extent,除非使用reusestorage;
truncate會(huì)將高水線復(fù)位(回到最開始).
4.速度,一般來說:drop>truncate>delete
5.安全性:小心使用drop和truncate,尤其沒有備份的時(shí)候.否則哭都來不及
使用上,想刪除部分?jǐn)?shù)據(jù)行用delete,注意帶上where子句.回滾段要足夠大.
想刪除表,當(dāng)然用drop
想保留表而將所有數(shù)據(jù)刪除.如果和事務(wù)無關(guān),用truncate即可.如果和事務(wù)有關(guān),或者想觸
發(fā)trigger,還是用delete.
75.怎么用java反射得到一個(gè)類的私有方法?
PrivateTesi1=Class.forName(ncoin.test.PrivateTest").newInstance();
Methodmethod2=Class.forNanie("com.test.PrivateTest").getDeclaredMetliod("method",new
Class[]]});
method2.setAccessible(true);
mcthod2.invoke(t,newObject[]{));
76.寫一個(gè)單例模式?描述工廠模式和單例優(yōu)缺點(diǎn)舉例在什么情況下用
簡單工廠模式能夠根據(jù)外界給定的信息,決定究竟應(yīng)該創(chuàng)建哪個(gè)具體類的對象。通
過它,外界可以從直接創(chuàng)建具體產(chǎn)品對象的尷尬局面中擺脫出來。
外界與具體類隔離開來,偶合性低。
?明確區(qū)分了各自的職責(zé)和權(quán)力,有利于整個(gè)軟件體系結(jié)構(gòu)的優(yōu)化。
缺點(diǎn):工廠類集中了所有實(shí)例的創(chuàng)建邏輯,容易違反GRASPR的高內(nèi)聚的責(zé)任分配原則
雖然簡單工廠模式能夠適應(yīng)一定的變化,但是它所能解決的問題是遠(yuǎn)遠(yuǎn)有限的。它所能
創(chuàng)建的類只能是事先教考慮到的,如果需要添加新的類,則就需要改變工廠類了。(這
個(gè)問題在工廠方法模式將得到很好的解決)
應(yīng)用情景工廠類負(fù)責(zé)創(chuàng)建的對象比較少客戶只知道傳入了工廠類的參數(shù),對于始何
創(chuàng)建對象(邏輯)不關(guān)心
77.JVM加載class文件原理?
JVM中類的裝載是由ClassLoader和它的子類來實(shí)現(xiàn)的JavaClassLoader是一個(gè)重要的Java
運(yùn)行時(shí)系統(tǒng)組件。它負(fù)責(zé)在運(yùn)行時(shí)查找和裝入類文件的類ClassLoader其實(shí)就是讀取文
件,按照CLASSPATH配置的順序。然后解析后轉(zhuǎn)化為類
78.Tomcat的class加載的優(yōu)先順序一覽
1.最先HOME/jre/lib/ext/下的jar文件。2.環(huán)境變量CLASSPATH中的jar和class文
3.$CATALINA_HOME/common/classes下的class文件。
4,$CATALINA_HOME/cominons/endorsed下的jar文件《
5.$CATALINA_HOME/commons/i18n下的jar文件。6.SCATALINA_HOME/common/lib下的
jar文件。
(JDBC驅(qū)動(dòng)之類的jar文件可以放在這里,這樣就可以避免在server.xml配置好數(shù)據(jù)源卻出
現(xiàn)找不到JDBCDriver的情況。)
7.SCATALINA_H0ME/server/classes下的class文件。
8.SCATALINA_HOME/server/lib/T的jar文件。
9.$CATALINA_BASE/shared/classes下的class文件。
10.$CATALINA_BASE/shared/lib下的jar文件。
11.各自具體的webapp/WEB-INF/classes下的class文件。
12各自具體的webapp/WEB-INF/lib下的jar文件。
79.CS與BS聯(lián)系區(qū)別
java適合開發(fā)bs結(jié)構(gòu),cs不是它的強(qiáng)項(xiàng)C/S服務(wù)器通常采用高性能的PC、工作站或小型
機(jī),并采用大型數(shù)據(jù)庫系統(tǒng),如Oracle、Sybase、Infonnix或SQLServero客戶端需要安裝
專用的客戶端軟件。B/S客戶機(jī)上只要安裝一個(gè)瀏覽器(Browser),$riInternetExplorer,服
務(wù)器安裝Oracle、Sybase、Infonnix或SQLServer等數(shù)據(jù)庫。在這種結(jié)構(gòu)卜,用戶界面完全
通過WWW瀏覽器實(shí)現(xiàn),一部分事務(wù)邏輯在前端實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實(shí)現(xiàn)。
瀏覽器通過WebServer同數(shù)據(jù)庫進(jìn)行數(shù)據(jù)交互1.硬件環(huán)境不同:C/S一般建立在專用的
網(wǎng)絡(luò)上,小范圍里的網(wǎng)絡(luò)環(huán)境,局域網(wǎng)之間再通過專門服務(wù)器提供連接和數(shù)據(jù)交換服務(wù).
B/S建立在廣域網(wǎng)之上的
2.對安全要求不同C/S一般面向相對固定的用戶群,對信息安全的控制能力很強(qiáng).一般高
度機(jī)密的信息系統(tǒng)采用C/S結(jié)構(gòu)適宜.可以通過B/S發(fā)布部分可公開信息.B/S建立在廣
域網(wǎng)之上,對安全的控制能力相對弱,可能面向不可知的用戶
3.對程序架構(gòu)不同C/S程序可以更加注重流程,可以對權(quán)限多層次校驗(yàn)B/S對安全以
及訪問速度的多重的考慮.建立在需要更加優(yōu)化的基礎(chǔ)之上
8().Error和exception的區(qū)別與聯(lián)系
error表示恢復(fù)不是不可能,但很困難的情況下的一種嚴(yán)重問題。比如說內(nèi)存溢,網(wǎng)絡(luò)故障等。
不可能指望程序能處理的情況。
exception表示一種設(shè)計(jì)或?qū)崿F(xiàn)問題。也就是說,它表示如果程序運(yùn)行正常,就不會(huì)發(fā)生的
情況。程序可以捕獲到這些異常,并進(jìn)行處理。
81.在編寫頁面的會(huì)用到哪些技術(shù)??
手寫個(gè)程序在本頁面中心彈出一個(gè)窗體,里面有學(xué)生的成績,可以修改學(xué)生的成績,并
且可以關(guān)閉窗口,把每個(gè)要用的jsp頁面顯示出來。(用JavaScript)
82.用main涵數(shù)輸出一到一百的和。
#include<stdio.h>
intmain(){
printf("sum:%d\n",sum());
return0;
intsum(){
inti;
intsum=0;
for(i=1;i<=100;i++)
sum+=i;
returnsum;
83.查一下每門課程都大于80的學(xué)生姓名
學(xué)生表student分?jǐn)?shù)表grade
selectfromstudentswheres.idnoin(selectg.studenridfromgradegwhereg.marks<=80)
select*fromstudentwherenamein(selectnamefromstudent
wherenamelike'張%'groupbynamehavingavg(score)>75)
84.LIUNIX如何查看CPUJP,內(nèi)存?
Isattr-EImemo查看內(nèi)存的
/sbin/ifeong查看IP的
85J2EE系統(tǒng)訪問速度慢.從哪些方面可以優(yōu)化
J2EE性能的優(yōu)化包括很多方面的,要達(dá)到一個(gè)性能優(yōu)良的系統(tǒng),除了關(guān)注代碼之外,還應(yīng)該根
據(jù)系統(tǒng)實(shí)際的運(yùn)行情況,從服務(wù)器軟硬件環(huán)境、集群技術(shù)、系統(tǒng)構(gòu)架設(shè)計(jì)、系統(tǒng)部署環(huán)境、數(shù)
據(jù)結(jié)構(gòu)、算法設(shè)計(jì)等方面綜合考慮
86.J2EE訪問速度慢,怎么樣優(yōu)化
I使用緩沖標(biāo)記對于代碼邏輯復(fù)雜的頁面,利用緩沖標(biāo)記提高性能的效果比較明顯;反之,效
果可能略遜一籌。2始終通過會(huì)話Bean訪問實(shí)體Bean
一些時(shí)候,使用實(shí)體Bean會(huì)導(dǎo)致程序性能不佳。如果實(shí)體Bean的惟一用途就是提取和更新數(shù)據(jù),
改成在會(huì)話Bean之內(nèi)利用JDBC訪問數(shù)據(jù)庫可以得到更好的性能3選擇合適的引用機(jī)制
4在部署描述器中設(shè)置只讀屬性實(shí)體Bean的部署描述器允許把所有g(shù)et方法設(shè)置成“只讀”。
當(dāng)某個(gè)事務(wù)單元的工作只包含執(zhí)行讀取操作的方法時(shí),設(shè)置只讀屬性有利于提高性能,因?yàn)?/p>
容器不必再執(zhí)行存儲(chǔ)操作5緩沖對EJBHome的訪問
87.haShtable的原理
原理:通過節(jié)點(diǎn)的關(guān)鍵碼確定節(jié)點(diǎn)的存儲(chǔ)位置,即給定節(jié)點(diǎn)的關(guān)健碼k,通過一定的函數(shù)關(guān)系H(散
列函數(shù)),得到函數(shù)值H(k),將此值解釋為該節(jié)點(diǎn)的存儲(chǔ)地址
88.siruls中的prepare怎么用?
prepare是在validate攔截器之前執(zhí)行
<s:checkboxlistlis(="users"listKey="id"lislValue="name"name="userid"x/s:checkboxlist>
在使用struts?checkboxlist,select綁定list時(shí),有時(shí)候會(huì)出現(xiàn)以下異常
Therequestedlistkey'users'couldnotberesolvedasacollection/array/rnap/enumeration/iteratortype.
Example:peopleorpeople.{name}-[unknownlocation]這樣的錯(cuò)誤。是因?yàn)閘ist的值為空
3.解決辦法是把初始化list的工作放到prepare攔截器中
publicclassRoleActionextendsActionSupportimplementsPreparable{
@Overridc
publicvoidprepare()throwsException{
〃初始化list
89.C#題目conetextmenu控件如何使用..listview
ConiexlMenu組件提供與選定對象相關(guān)的常用命令的菜單。可以通過向Menuitems集合中
添加Menultem對象來向快捷菜單中添加項(xiàng)??梢詮目旖莶藛沃杏谰玫匾瞥敚旱窃谶\(yùn)
行時(shí)隱藏或禁用項(xiàng)可能更為妥當(dāng)。
90.寫一條SQL語句,查詢姓張學(xué)生中平均成績大于75的學(xué)生信息
select*fromstudentwherenamein(selectnamefromstudent
wherenamelike'張%'groupbynamehavingavg(score)>75)
91.從以下方面比較slnHl和siru⑵線程模式、依賴、可測性、表達(dá)式語言、捕獲輸入、綁釘
值到頁面、類型轉(zhuǎn)換
線程模式:Struts1Action是單例模式并且必須是線程安全的,因?yàn)閮H有Action的一個(gè)實(shí)例
來處理所有的請求。單例策略限制了StnitslAction能作的事,并且要在開發(fā)時(shí)特別小心。
Action資源必須是線程安全的或同步的。
?Stnits2Action對象為每一個(gè)請求產(chǎn)生一個(gè)實(shí)例,因此沒有線程安全問題。(實(shí)際上,servlel
容器給每個(gè)請求產(chǎn)生許多可丟棄的對象,并且不會(huì)導(dǎo)致性能和垃圾回收問題)
Servlel依賴:
?Struts1Action依賴于ServletAPI,因?yàn)楫?dāng)?個(gè)Action被調(diào)用時(shí)HttpServletRequest和
HttpServleiResponse被傳潴給execule方法。
,Struts2Action不依賴于容器,允許Action脫離容器單獨(dú)被測試。如果需要,Struts2Action
仍然可以訪問初始的request和response,,但是,其他的元素減少或者消除了直接訪問
HttpServetRequest和HttpSenletResponse的必要性。
可測性:
?測試Struts1Action的一個(gè)主:要問題是execute方法暴露\servletAPI(這使得測試要依賴
于容器)。一個(gè)第三方擴(kuò)展StrutsTestCase提供了一套Strutsl的模擬對象(來進(jìn)行測
試)。
?Struts2Action可以通過初始化、設(shè)置屬性、調(diào)用方法來測試,“依賴注入”支持也使測試
更容易。
捕獲輸入:
?StrutsI使用ActionForm對象捕獲輸入。所有的ActionForm必須繼承一個(gè)基類。因?yàn)槠?/p>
他JavaBean不能用作ActionForm,開發(fā)者經(jīng)常創(chuàng)建多余的類捕獲輸入。動(dòng)態(tài)Bean
(DynaBcans)可以作為創(chuàng)建傳統(tǒng)ActionForm的選擇,但是,開發(fā)者可能是在重新描述(創(chuàng)
建)己經(jīng)存在的JavaBean(仍然會(huì)導(dǎo)致有冗余的javabean)。
?Struts2直接使用Action屬性作為輸入屬性,消除了對第二個(gè)輸入對象的需求。輸入屬性
可能是有自己(子)屬性的rich對象類型。Action屬性能夠通過web頁面上的(aglibs訪問。
Struts2也支持ActionFomi模式。rich對象類型,包括業(yè)務(wù)對象,能夠用作輸入/輸出對象。
這種ModelDriven特性簡化了taglib對POJO輸入對象的引用。
表達(dá)式語言:
?Struts1整合了JSTL,因此使用JSTLEL。這種EL有基本對象圖遍歷,但是對集合和索
引屬性的支持很弱。
?Struts2可以使用JSTL,但是也支持一個(gè)更強(qiáng)大和靈活的表達(dá)式語言一一"ObjectGraph
NotationLanguage"(OGNL).
綁定值到頁面(view):
?StrutsI使用標(biāo)準(zhǔn)JSP機(jī)制把對象綁定到頁面中來訪問。
,Struts2使用"ValueSttck"技術(shù),使taglib能夠訪問值而不需要把你的頁面(view)和對
象綁定起來。ValueStack策略允許通過一系列名稱相同但類型不同的屬性重用頁面(view)。
類型轉(zhuǎn)換:
,Struts1ActionForm屬性通常都是String類型。Struts1使用Commons-Beanutils進(jìn)行類型
轉(zhuǎn)換。每個(gè)類一個(gè)轉(zhuǎn)換器,對每一個(gè)實(shí)例來說是不可配置的。
?Struts2使用OGNL進(jìn)行類型轉(zhuǎn)換。提供基本和常用對象的轉(zhuǎn)換器。
92.struts的工作原理可分為如下8步。
1.讀取配置(初始化ModuleConfig對象)
Struts框架總控制器(ActionServlet)是一個(gè)Servlet,在web.xml中被配置成一個(gè)自
動(dòng)啟動(dòng)的Servlel。讀取配置文件sl「uls-cor】ng.xml的配置信息,為不問的SUuls模塊
初始化相應(yīng)的ModuleConfig對象。
2.用戶請求
用戶提交表單或調(diào)用URL向WEB應(yīng)用程序服務(wù)器提交一個(gè)請求,請求的數(shù)據(jù)用HTTP協(xié)
議上傳給WEB服務(wù)器。
3.填充FormBean
(*.do請求)從ActionConfig中找出對應(yīng)該請求的Action子類,如有對應(yīng)的Action且
這個(gè)Action又個(gè)相應(yīng)的ActionForm,ActionForm被實(shí)例化并用HTTP請求的數(shù)據(jù)填
充其屬性,并保存在ServletContext中,這樣他們就可以被其它Action對象或JSP調(diào)用。
如果沒有對應(yīng)的Action,控制器則直接轉(zhuǎn)發(fā)給JSP或靜態(tài)頁面。
4.派發(fā)請求
控制器根據(jù)配置信息A
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)校體育教研室計(jì)劃
- 中學(xué)安全工作計(jì)劃范文
- 2025年行政人事部年度工作計(jì)劃目標(biāo)
- 2025年教師個(gè)人提高工作計(jì)劃范文
- 地產(chǎn)公司專題計(jì)劃代理部組織管理新規(guī)制度
- 2025年集采工作計(jì)劃
- “訪民情、惠民生、聚民心”活動(dòng)對口幫扶計(jì)劃
- 《血液科護(hù)理查房》課件
- 《fxhx絡(luò)合滴定法》課件
- 跳繩合同書家庭
- 主播競業(yè)限制協(xié)議
- 四川省瀘州市高2023級(jí)高一學(xué)年末統(tǒng)一考試+語文
- 2024-2030年中國無人機(jī)(UAV)行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報(bào)告
- (高立牌)SC型施工升降機(jī)說明書
- 母嬰購貨合同范本
- 茶葉風(fēng)味科學(xué)-制茶與評(píng)茶智慧樹知到期末考試答案章節(jié)答案2024年浙江大學(xué)
- 光的偏振課件
- 2024年江蘇鹽城高中物理學(xué)業(yè)水平合格考試卷試題(含答案詳解)
- 上海財(cái)經(jīng)大學(xué)碩士論文封面模板(含論文標(biāo)準(zhǔn)格式)
- 體育專業(yè)學(xué)生學(xué)情分析總結(jié)報(bào)告
- 城鄉(xiāng)居民醫(yī)療保險(xiǎn)
評(píng)論
0/150
提交評(píng)論