javabean 在jsp和serlvle中的傳遞技術要點
一、 初始化javabean
1、 在jsp中
在上一段的代碼中執(zhí)行過程如下:
? 按照scope的參數(shù)尋找相同id的javabean,如果找到了就跳出該;
? 如果沒有找到則在scope參數(shù)的位置上創(chuàng)建一個實例,并且執(zhí)行和中的初始化語句;
也就是說,如果確定你一定要設置現(xiàn)在狀態(tài)下的scope參數(shù)位置上的beanname,則避免使用類似上述代碼,而應該將語句放在之外。
2、 在serlvlet中
package.classname beanname=new package.classname();
然后將beanname放置在不同的位置;
二、 javabean的存在位置以及操作
在這里說javabean的存放位置主要是指針對不同的scopeparameter而言,因此在這里將分別討論之。
jsp servlet 讀寫方式(servlet僅僅列出了取得或者設定reference,略去了具體屬性的setxxx和getxxx)
jsp servlet
scope=”page” request.pagecontext
或者
直接引用
scope=”request” request package.classname beanref=(package.classname)request. getattribute(”beanname”);
或者
request.setattribute(“beanname”,beanref);
scope=” session” httpsession httpsession session= request.getsession(true);
package.classname beanref =( package.classname)session.getattribute(beanname );
或者
session.setattribute(beanname ,beanref);
scope=”applicaton” servletcontext package.classname beanref= getservletcontext().getattribute(“beanname”);
或者
getservletcontext().setattribute(“beanname”,beanref);
三、 具體應用
類型 應用
scope=”page” 在jsp中的缺省設置,類似一種頁面范圍內(nèi)的變量實例。
scope=”request” 在一次request中有效范圍內(nèi)的變量實例。
scope=” session” 在一次客戶端訪問范圍內(nèi)變量實例,每一次訪問均不同。
scope=”applicaton” 在服務器程序范圍內(nèi)的變量實例,類似于static,對于每一次的客戶訪問均有效。
更多信息請查看IT技術專欄