目錄
什麼是會話
為什麼使用會話bean
首頁 Java java教程 什麼是會話?為什麼要用會話bean?

什麼是會話?為什麼要用會話bean?

Jun 21, 2017 am 10:14 AM
bean 會話 基礎知識 系列

本人部落格文章網址

什麼是會話

  有限的時間週期內,客戶端與伺服器之間的連線

為什麼使用會話bean

  因為EJB大部分服務都是專門提供給會話bean的 

  1. 並發和線程安全: 容器利用很多技術來自動確保開發者不必擔心並發或線程安全的問題
  2. 遠端處理與Web服務的服務提供
  3. 事務與安全管理
  4. 攔截器

 

會話bean的規格

  1. 至少有一個業務介面(EJB3.1後可以不需要)
  2. 會話bean必須是具體的, 不能把會話bean定義為final的, 或抽象的
  3. 會話bean中必須有無參的構造者
  4. 可以在會話bean類別或父類別中定義業務方法和生命週期回呼方法
5. 會話bean可以是另一個會話bean或任何其他POJO的子類別, 當是另一個會話bean 的子類別時, 父類別中定義的生命週期回呼方法和依賴注入的註解都會被當前bean類別繼承
6. 會話bean方法不能以"ejb"開頭, 所有業務方法都必須為公開的, 不能是final或者靜態方法, 另外如果該會話bean是remote的話, 所有入參和出參都必須實現序列化接口

 

業務介面

  1. 在本地介面:@Local 相同的容器(JVM)實例中進行協同作業
  2. 遠端介面:@Remote 不同的容器(JVM)實例中進行協同作業 透過RMI進行存取
  3. Web服務端點介面:@WebService 為無狀態bean獨有,可以把無狀態bean暴露為基於SOAP的Web服務

  處理多個業務介面:不能用一種以上的存取類型註解標記同一個介面,可以選擇用父介面,然後子介面繼承來避免程式碼重複

 

無狀態會話bean

  用於建模不維護會話狀態的任務

有兩種創建模式, 一種是池化, 由容器創建會話bean池, 並創建相應數量的會話bean示例, 並對其進行管理; 另一種是單例模式(需要EJB3.1及以後的版本才支持)

  註解:@Stateless 通知容器該類別是無狀態bean,容器會自動為bean提供:並發控制,執行緒安全,池化,事務管理等服務

#  

有狀態會話bean

  用於建模需要維護會話狀態的任務,EJB容器會為我們保持會話的狀態

#   必須有使用@Remove註解的方法

  注意項:適當選擇會話的資料,盡量使用佔有資源小的資料;記得使用鈍化和刪除

  替代方式:如果是Web應用,使用HttpSession來維護狀態

 

會話bean最佳實作

  1. 選擇會話bean類型, 即有狀態bean或無狀態bean

#   2. 分析會話bean介面類型(@Local,@Remote)

  3. 不要把有狀態會話bean注入無狀態會話bean或Servlet中

  4. 分割橫切事務項目(使用攔截器AOP來處理)

  5. 有狀態會話bean中儲存的資料類型(慎重選擇)

  6. 有狀態會話bean必須定義@Remove註解的方法

以上是什麼是會話?為什麼要用會話bean?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1321
25
PHP教程
1269
29
C# 教程
1249
24
SpringBoot怎麼刪除引用jar包中的無用bean SpringBoot怎麼刪除引用jar包中的無用bean May 14, 2023 pm 08:07 PM

前言公司有個項目,時間比較趕,而且項目的部分需求,和之前做的項目部分功能一樣,為了趕速度和直接將之前多模組的maven項目中的部分模組,直接以jar包的形式引入到新專案中了,雖然省去了不少開發時間,但是造成專案需要導入引入專案jar的相關依賴,導致專案臃腫,啟動很慢。有沒有辦法讓專案只載入自己需要的bean呢?當然我們可以直接修改原始碼重新打包引入去解決,但這個辦法太多麻煩。透過百度的手段,查詢可以在springboot啟動類別上用@ComponentScan註解去實現程式碼範例@Componen

小米 15 系列全代號曝光:Dada、Haotian、Xuanyuan 小米 15 系列全代號曝光:Dada、Haotian、Xuanyuan Aug 22, 2024 pm 06:47 PM

小米15系列預計10月正式發布,其全系列代號已在外媒MiCode程式碼庫曝光。其中,旗艦級小米15Ultra代號為"Xuanyuan"(意為"軒轅"),此名源自中國神話中的黃帝,象徵尊貴。小米15的代號為"Dada",而小米15Pro則以"Haotian"(意為"昊天")為名。小米15SPro內部代號為"dijun",暗指《山海經》創世神帝俊。小米15Ultra系列涵蓋

華為 Mate 60 系列最佳入手時機,新增 AI 消除 + 影像升級,更可享秋日禮遇活動 華為 Mate 60 系列最佳入手時機,新增 AI 消除 + 影像升級,更可享秋日禮遇活動 Aug 29, 2024 pm 03:33 PM

自去年华为Mate60系列开售以来,我个人就一直将Mate60Pro作为主力机使用。在将近一年的时间里,华为Mate60Pro经过多次OTA升级,综合体验有了显著提升,给人一种常用常新的感觉。比如近期,华为Mate60系列就再度迎来了影像功能的重磅升级。首先是新增AI消除功能,可以智能消除路人、杂物并对空白部分进行自动补充;其次是主摄色准、长焦清晰度均有明显升级。考虑到现在是开学季,华为Mate60系列还推出了秋日礼遇活动:购机可享至高800元优惠,入手价低至4999元。常用常新的产品力加上超值

Java Spring框架建立專案與Bean的儲存與讀取實例分析 Java Spring框架建立專案與Bean的儲存與讀取實例分析 May 12, 2023 am 08:40 AM

1.Spring專案的創建1.1創建Maven專案第一步,創建Maven項目,Spring也是基於Maven的。 1.2新增spring依賴第二步,在Maven專案中加入Spring的支援(spring-context,spring-beans)在pom.xml檔案中新增依賴項。 org.springframeworkspring-context5.2.3.RELEASEorg.springframeworkspring-beans5.2.3.RELEASE刷新等待載入完成。 1.3創建啟動類第三步,創

SpringBoot怎麼在載入bean時優先選擇我 SpringBoot怎麼在載入bean時優先選擇我 May 15, 2023 pm 09:13 PM

一、適用場景如果我們需要在應用程式的所有層次結構中對特定bean的啟動順序進行管理。例如,需要在應用程式啟動的時候初始化某個bean。如果我們公共庫中的bean被其他開發者服務用到,但是他們需要在部分場景下自訂bean,則我們需要在這些自訂的bean前面先載入公共庫中的bean。二、三種實作方式在SpringBoot應用程式中,我們可以採取以下三種方式實作自己的bean優先載入:1.@Configuration註解+@DependsOn註解@Configuration註解在SpringBoo

在Slim框架中使用會話(Sessions)進行使用者認證的方法 在Slim框架中使用會話(Sessions)進行使用者認證的方法 Jul 28, 2023 pm 05:57 PM

在Slim框架中使用會話(Sessions)進行使用者認證的方法在Web應用程式中,使用者認證是一個重要的功能,它確保只有被授權的使用者可以存取受限資源。會話(Sessions)是一種常用的認證方法,透過儲存使用者身分和狀態訊息,確保使用者在整個會話期間保持認證狀態。 Slim框架提供了方便的工具和中間件來處理會話和使用者認證。下面我們將介紹如何在Slim框架中使用會話進

spring或spring boot怎麼調整bean載入順序 spring或spring boot怎麼調整bean載入順序 May 11, 2023 pm 12:10 PM

spring或springboot調整bean的載入順序接下來講解三種調整類別載入順序的方式:1、使用@Order調整配置類別載入順序@Configuration@Order(1)publicclassConfigA{@BeanpublicServiceAserviceA(){System.out.println( "ConfigA執行");returnnewServiceA();}}@Configuration@Order(2)publicclassConfigB{@Beanp

在Slim框架中使用會話(Sessions)實現使用者登入和登出的方法 在Slim框架中使用會話(Sessions)實現使用者登入和登出的方法 Jul 28, 2023 pm 11:21 PM

在Slim框架中使用會話(Sessions)實現使用者登入和登出的方法簡介:會話(Sessions)是Web應用程式中常用的技術,它可以用來儲存和管理使用者相關的數據,例如使用者的登入狀態等。 Slim框架作為一個輕量的PHP框架,提供了簡潔的API來處理會話。本文將介紹如何在Slim框架中使用會話來實現使用者登入和登出的功能。安裝Slim框架首先,我們需要在P

See all articles