亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

EJB 3.0的三大類型詳解

2019-11-18 12:33:48
字體:
來源:轉載
供稿:網友

  無論你創建bean會話是為了執行特定任務,還是把表映射到實體bean以更新數據,都可以使用普通的java對象和接口來完成這些工作,并且可以通過在業務方法中使用注釋,把方法提供給客戶端。

  EnterPRise JavaBean (EJB) 是可重用的、可移植的 J2EE 組件。EJB 由封裝業務邏輯的方法組成。譬如說,EJB 可能有這樣的業務邏輯:包含了更新數據庫中客戶數據的方法。眾多遠程和本地客戶端可以調用該方法。另外,EJB 在容器里面運行,這樣開發人員只要關注bean里面的業務邏輯,不必擔心復雜、輕易出錯的問題,譬如事務支持、安全性和遠程對象訪問等。EJB 作為普通Java對象(POJO)的形式來開發,開發人員可以使用元數據注釋(metadata annotations)來指定容器如何治理這些bean。

  EJB 包括三種主要類型:會話 bean、實體 bean和消息驅動的bean。會話bean執行獨立的、解除耦合的任務,譬如檢查客戶的信用記錄。實體bean是一個復雜的業務實體,它代表數據庫中存在的業務對象。消息驅動的bean用于接收異步JMS 消息。下面,讓我們進一步研究EJB 3.0規范中的這些類型。

  一、會話bean

  會話bean通常代表業務流程里面的操作,譬如“處理訂單”。可根據對話狀態的保持性,即有狀態和無狀態對會話bean進行分類。

  無狀態的會話 bean沒有內部狀態。它們不跟蹤記錄從一個方法調用傳遞到另一個方法調用的信息。因此,每次調用無狀態的業務方法都獨立于前一次調用,譬如計算稅款或者運費。用某個應稅值調用計算稅款的方法時,對稅款值進行計算并返回給調用方法,而不必保存調用者的內部狀態供以后調用。因為這些bean并不保持狀態,所以容器對它們進行治理就很簡單??蛻舳苏埱鬅o狀態的bean實例時,可以從容器保持的無狀態的會話bean 實例池當中接收一個實例。另外,因為無狀態的會話 bean可以共享,所以容器可保持數量較少的實例為許多客戶端提供服務。想指定Java Bean作為無狀態的會話bean加以部署及治理,只需要為該bean添加注釋@Stateless。

  有狀態的會話 bean在方法調用時可保持對話狀態,譬如客戶的網上購物車。客戶開始網上購物時,可以從數據庫中檢索客戶的具體信息。客戶往購物車里面添加商品或者從里面刪除商品、下訂單等時調用的其他方法也可以使用這些具體信息。不過,有狀態的會話bean是暫時性的,因為出現會話終止、系統崩潰或者網絡故障后,狀態不復存在??蛻舳苏埱笥袪顟B的會話bean實例時,就為該客戶端分配一個有狀態的實例,并為該客戶端保持該組件的狀態。要指定容器在某個方法完成后刪除有狀態的會話bean實例,只要為該方法添加注釋@Remove。

  會話 bean示例如下:

import javax.ejb.Stateless.*;

/*A simple stateless session bean implementing the incrementValue() method of the * CalculateEJB interface.*/

@Stateless(name="CalculateEJB")

public class CalculateEJBBean

implements CalculateEJB

{

int value = 0;

public String incrementValue()

{

value++;

return "value incremented by 1";

}

}

  二、實體bean

  實體bean是治理持久性數據的一個對象,有可能使用幾個相關的Java對象,并可以通過主鍵實現惟一性。通過添加@Entity注釋,可以把某類指定為實體bean。實體bean代表數據庫中的持久性數據,如客戶表中的一行或者員工表中的一條員工記錄。實體bean還可以在多個客戶端之間共享。譬如說,某個員工實體bean可以由多個客戶端用于計算某員工的年薪或者更新員工地址。實體bean對象的特定字段可以成為持久性字段。實體bean中沒有被@Transient注釋標記的所有字段都被視為持久性字段。EJB 3.0的一個主要特性就是,能夠使用元數據注釋來創建包含對象/關系映射的實體bean。譬如說,想指定把實體bean的empId字段映射到 Employees表中的EMPNO屬性,就要使用@Table(name="Employees") 來注釋表名,使用 @Column(name="EMPNO") 來注釋字段,如下面的例子所示。另外,EJB 3.0 的一個特性是,在開發期間可以方便地測試實體bean,因為現在使用 Oracle 應用服務器實體測試工具,就可以在容器外面運行實體bean。

  實體 bean示例如下:

import javax.persistence.*;

import java.util.ArrayList;

import java.util.Collection;

@Entity

@Table(name = "EMPLOYEES")

public class Employee implements java.io.Serializable

{

 private int empId;

 private String eName;

 private double sal;

 @Id

 @Column(name="EMPNO", primaryKey=true)



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美尺度大的性做爰视频| 日韩中文字幕免费| 欧美理论在线观看| 国产精品久久一区主播| 亚洲国产第一页| 国产91精品久久久| 亚洲乱码国产乱码精品精天堂| 亚洲精品成人久久电影| 美女国内精品自产拍在线播放| 日韩欧美一区二区三区久久| 久久久精品国产亚洲| 中文字幕日韩在线播放| 91精品国产高清久久久久久| 欧美日韩亚洲天堂| 欧美成人午夜剧场免费观看| 精品性高朝久久久久久久| 91亚洲精品久久久| 久久天天躁狠狠躁夜夜躁| 日本久久久久亚洲中字幕| 精品丝袜一区二区三区| 亚洲国产精品系列| 欧美精品一二区| 亚洲黄页视频免费观看| 久久免费视频在线观看| 国产精品极品美女粉嫩高清在线| 欧日韩在线观看| 欧美激情一区二区三区高清视频| 亚洲国产精品电影| 一区二区三区国产在线观看| 欧美精品国产精品日韩精品| 亚洲精品999| 欧美国产日韩一区二区| 中文日韩在线观看| 亚洲欧美在线看| 色哟哟亚洲精品一区二区| 欧美成人精品激情在线观看| 国产精品亚洲第一区| 国产欧美久久一区二区| 亚洲自拍中文字幕| 国产成一区二区| 欧美大尺度激情区在线播放| 欧美性猛交xxxx乱大交极品| 国产成人精品免高潮费视频| 久久久91精品| 青青草国产精品一区二区| 国产精品在线看| 亚洲xxxx18| 中文字幕av一区| 日韩av中文字幕在线免费观看| 欧洲美女免费图片一区| 国产免费一区二区三区在线观看| 亚洲天堂第一页| 欧美亚洲国产视频| 国产精品影片在线观看| 成人免费在线网址| 欧美亚洲成人免费| 精品香蕉一区二区三区| 精品久久久国产| 91网站免费看| xxx成人少妇69| 国产免费一区二区三区在线能观看| 亚洲激情在线视频| 91免费看片网站| 欧美激情一级精品国产| 国产z一区二区三区| 热久久免费国产视频| 久久99青青精品免费观看| 精品久久久久人成| 亚洲精品国产拍免费91在线| 成人中心免费视频| 最近日韩中文字幕中文| 久久久久久久久久久成人| 成人有码在线视频| 91精品综合视频| 国产精品久久久久久久久久久久久久| 欧美国产极速在线| 国产一区二区视频在线观看| 日韩a**站在线观看| 欧美激情va永久在线播放| 国产91|九色| 国产精品国产三级国产aⅴ浪潮| 久久亚洲综合国产精品99麻豆精品福利| 欧美视频裸体精品| 欧美美女18p| 久久九九精品99国产精品| 久久伊人精品天天| 亚洲免费视频一区二区| 九九热精品视频| 在线亚洲午夜片av大片| 国产99久久精品一区二区| 国产精品香蕉国产| 国产美女久久精品| 国产精品揄拍500视频| 日韩中文字幕国产精品| 亚洲а∨天堂久久精品9966| 久久久av一区| 国产精品自拍网| 中文字幕精品网| 欧美电影免费在线观看| 欧美亚洲在线播放| 日韩欧美在线视频观看| 欧美国产激情18| 亚洲免费视频一区二区| 精品国产999| 日韩欧美亚洲国产一区| 在线播放国产精品| 亚洲第一二三四五区| 97国产精品视频人人做人人爱| 精品综合久久久久久97| 亚洲一区二区三区成人在线视频精品| 日韩免费精品视频| 91精品国产综合久久久久久蜜臀| 欧美激情视频在线观看| 搡老女人一区二区三区视频tv| 国产九九精品视频| 中文字幕欧美视频在线| 日本精品免费观看| 国产亚洲精品久久久久久| 97超级碰在线看视频免费在线看| 亚洲老司机av| 日韩视频在线观看免费| 国产精品极品在线| 国产精品老女人精品视频| 国产精品中文字幕在线| 欧美精品videos性欧美| 国内揄拍国内精品| 欧美在线一区二区视频| 欧美日韩国产一区二区三区| 久久精品99久久久久久久久| 欧美理论在线观看| 亚洲成年人影院在线| 亚洲电影免费观看高清完整版在线| 久久99青青精品免费观看| 国产精品久久久久aaaa九色| 国产精品都在这里| 久久影院模特热| 亚洲欧美日韩第一区| 午夜精品久久久久久久男人的天堂| 黄色成人av网| 亚洲第一综合天堂另类专| 亚洲成人精品视频| 日韩经典中文字幕| 91国产精品视频在线| 日韩电影免费在线观看中文字幕| 日韩中文av在线| 亚洲最大av网站| 亚洲第一网站免费视频| 日日噜噜噜夜夜爽亚洲精品| 成人免费观看网址| 在线观看成人黄色| 精品福利视频导航| 久久亚洲欧美日韩精品专区| 国产精品久久久久久av福利软件| 91精品久久久久久久久不口人| 91av视频在线免费观看| 国产www精品| 日韩女优人人人人射在线视频| 成人国产精品久久久| 中文精品99久久国产香蕉| 国产激情综合五月久久| 国内精品美女av在线播放| yellow中文字幕久久| 日韩女在线观看| 欧美午夜激情在线|