JavaEE體系架構概述

edagarli發表於2014-03-09

閒的蛋痛,複習下。

1.java web應用的缺陷

2.什麼是企業級應用

3.javaee體系平臺核心思想

4.ejb元件和容器

5.pojo與輕量級框架


javaweb應用的缺陷



分散式應用環境下,客戶元件能訪問訂單元件嗎?

web應用系統缺乏對分散式元件物件的訪問支援。


jdbc能夠跨資料庫實現事務處理嗎?

jdbc無法解決類似的企業問題。


什麼是企業級應用


現代企業級應用應當具有如下需求
併發支援
事物支援
互動支援
叢集支援
安全支援
分散式支援
web支援


這些企業級應用需求如何解決?


sun公司(現被oracle公司收購)的解決方案


javaee(java enterprise edition)


javaee技術平臺的核心思想是“容器”加“元件”

EJB元件

業務邏輯放在系統的什麼地方最合適? 


Java Web應用中我們使用JavaBean來實現業務邏輯 

JavaEE中使用EJB元件實現業務邏輯 


這些EJB元件能夠解決複雜的企業級應用需求嗎?


Java EE規範採用EJB容器來解決複雜的企業級應用,為EJB元件提供服務 

1.目錄服務
2.web服務
3.持久儲存
4.訊息傳遞
5.遠端訪問
6.併發處理
7.資源管理
8.事物管理
9.郵件處理

EJB容器與EJB元件協同工作

EJB容器會介入到客戶和EJB元件之間,插入一些“服務”

Java EE核心技術簡介

JavaEE規範為企業級應用提供了一整套服務、應用程式介面API和協議技術:
JavaMail(郵件服務)
RMI(Remote Method Invoke) 遠端方法呼叫
Java事務API(JTA)和Java事務服務(JTS) 
JPA(Java Persistence API)java永續性api 
IDL(Java Interface Defilation Language)介面定義語言 
JMS(Java Message Service) java訊息服務
STAX (Stream api for xml)
Web Service       web服務
JNDI(Java Name and Directory Interface) java命名和目錄介面


JavaEE標準結構的缺陷 

EJB設計缺陷 

程式導向

EJB開發的問題 
編輯、編譯、除錯周期長 
編碼冗長、繁瑣 
必須編寫資料傳輸物件 

有這麼多的問題,那Java EE真正的強大之處在哪裡?

Java EE真正的強大之處在於服務,如:JNDI、JTA等等 

沒有EJB我們照樣可以使用JavaEE提供的服務 
使用POJO(Plain Old Java Objects)簡單的Java物件替代EJB
POJO如何實現企業級應用需求呢?

替代方案就是採用目前流行的“輕量級”框架。
這些“輕量級”框架與JavaEE的某些部分結合在一起提供
重要的企業服務 。


POJO與物件

POJO可以採用物件導向設計圍繞物件模型編寫而不是去圍繞方法程式設計 


輕量極框架

例如 spring, ibatis等

spring 核心思想是IOC(控制反轉,依賴注入)和AOP(面向切面程式設計)

ibatis相對與hibernate在於ibatis 提供了sql檔案。可以優化sql配置檔案,達到系統優化的功能。

hibernate則固定死了。ibatis一般可以用於不知道資料庫表結構的系統。列如公安局什麼的。保密性強的。




相關文章