您好,登錄后才能下訂單哦!
這篇文章主要介紹了JSP與EJB相互作用的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
以下是一個snippet代碼,演示了JSP與EJB session bean進(jìn)行相互作用。
<%@ page import="javax.naming.*, javax.rmi.PortableRemoteObject,
foo.AccountHome, foo.Account" %>
<%!
//declare a "global" reference to an instance of the home
interface of the session beanAccountHome accHome=null;
public void jspInit() ...{
//obtain an instance of the home interface
InitialContext cntxt = new InitialContext( );
Object ref= cntxt.lookup("java:comp/env/ejb/AccountEJB");
accHome = (AccountHome)PortableRemoteObject.narrow
(ref,AccountHome.class);}
%>
<%
//instantiate the session bean
Account acct = accHome.create();
//invoke the remote methods
acct.doWhatever(...);
// etc etc...
%>
在JSP中Java代碼應(yīng)該越少越好。
在以上例子中,JSP設(shè)計者不得不處理和理解存取EJB的機理。 代替 在一個Mediator中對EJB機制的壓縮以及將EJB方法作為Mediator的方法,可以在JSP中使用 Mediator。Mediator通常由EJB設(shè)計者編寫。Mediator可以提供附加的值如attribute caching等.
JSP scriptlet代碼必須最小化。如果要在JSP中直接請求EJB可能要在JSP 中寫許多代碼,包括try...catch等函數(shù)塊來進(jìn)行操作。
使用一個標(biāo)準(zhǔn)的JavaBean作為一個JSP與EJB服務(wù)器的中介可以減少在JSP中的Java代碼的數(shù)量,并可提高可重用性。這個 JavaBean必須是一個你所存取的EJB的覆蓋(wrapper)。
如果你使用標(biāo)準(zhǔn)的JavaBean,你可以使用 JSP:useBean標(biāo)記來初始化EJB參數(shù),如服務(wù)器URL和服務(wù)器
安全參數(shù)等。
自定義標(biāo)記也可以是一種選擇。但是,這要求比一個簡單JavaBean wrapper更多的編碼。
該處必須被重新寫為盡可能小的代碼并保證JSP腳本內(nèi)容盡可能輕(light)。
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“JSP與EJB相互作用的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。