Bài giảng Lập trình mạng nâng cao: EJB: Entity Bean - Nguyễn Xuân Vinh
lượt xem 3
download
This chaper describe the concept of persistence, define entity beans, list the features offered by entity beans, compare entity and session beans, explain Message-Driven Beans.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Lập trình mạng nâng cao: EJB: Entity Bean - Nguyễn Xuân Vinh
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM GV: NGUYỄN XUÂN VINH MÔN: LẬP TRÌNH MẠNG 2 KHOA CÔNG NGHỆ THÔNG TIN EJB: Entity Bean 15/01/16 Presenter: Nguyễn Xuân Vinh Information Technology Faculty /XX Nong Lam University 1
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN Session Objectives GV: NGUYỄN XUÂN VINH Describe the concept of persistence. Define entity beans. List the features offered by entity beans. MÔN: LẬP TRÌNH MẠNG 2 Compare entity and session beans. Explain MessageDriven Beans. 15/01/16 /XX 2 ACCP2005/EJB 2.0/ Session 5 / 2 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN Review of Session 4 GV: NGUYỄN XUÂN VINH In Session 4 we discussed: Definition of a Stateful Session Bean. The characteristics of a Stateful Session Bean. How to program Stateful session beans. MÔN: LẬP TRÌNH MẠNG 2 Difference between Stateless and Stateful Session beans. 15/01/16 /XX 3 ACCP2005/EJB 2.0/ Session 5 / 3 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN Persistence GV: NGUYỄN XUÂN VINH Java Object Storage MÔN: LẬP TRÌNH MẠNG 2 Persistence Serialization Objects Database Obj 1 Object database Storage Persistence Persistence Obj 2 Object Relational Storage Mapping 15/01/16 Three ways to make an object persistent /XX 4 ACCP2005/EJB 2.0/ Session 5 / 4 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN Java Object Serialization GV: NGUYỄN XUÂN VINH Marshall an object graph into a compact representation Object 1 MÔN: LẬP TRÌNH MẠNG 2 Compact State of the representation object Object 2 Serialization of object graph into byte stream Object n Developer pushes data 15/01/16 over the network or saves the stream to a storage Byte Stream /XX 5 ACCP2005/EJB 2.0/ Session 5 / 5 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN Object Relational Mapping GV: NGUYỄN XUÂN VINH Travel Account Manual Mapping MÔN: LẬP TRÌNH MẠNG 2 Database String Name API String TktNo Use an Object- Double Amount Relational Mapping Product Object Relational 15/01/16 Database /XX 6 ACCP2005/EJB 2.0/ Session 5 / 6 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN Object Database Persistence GV: NGUYỄN XUÂN VINH Object database persistence is designed to store Java Objects as whole objects which means that there is no MÔN: LẬP TRÌNH MẠNG 2 need to program a relational database. The Object Query Language (OQL) provides the facility to query the persisted objects. This language adds a layer of abstraction from the relational database queries. The EJB QL eliminates the inconsistencies caused due to the use of the different Query languages used by different 15/01/16 application servers. /XX 7 ACCP2005/EJB 2.0/ Session 5 / 7 of 33
- Components deployed in Multi-tier TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN Deployment- Application logic components GV: NGUYỄN XUÂN VINH Application logic components are components that provide methods which perform common tasks MÔN: LẬP TRÌNH MẠNG 2 15/01/16 Computing the Billing of price of a ticket products /XX 8 ACCP2005/EJB 2.0/ Session 5 / 8 of 33
- Components deployed in Multi-tier TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN Deployment - Persistent Data Components GV: NGUYỄN XUÂN VINH Object Database MÔN: LẬP TRÌNH MẠNG 2 Serialization of data Examples are air ticket Employee data such as salaries information such as ticket and place of work number and amount 15/01/16 /XX 9 ACCP2005/EJB 2.0/ Session 5 / 9 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM GV: NGUYỄN XUÂN VINH KHOA CÔNG NGHỆ THÔNG TIN Files in an Entity bean Entity Bean MÔN: LẬP TRÌNH MẠNG 2 Class Remote Interface Entity Deployment Bean Descriptors Home 15/01/16 Interface Primary Local Key /XX Interfaces Class 10 ACCP2005/EJB 2.0/ Session 5 / 10 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN Entity Bean class GV: NGUYỄN XUÂN VINH Models Maps Persistent Data Java MÔN: LẬP TRÌNH MẠNG 2 Class Database Schema For example, an entity bean class can map to a Entity relational table definition. An entity bean instance 15/01/16 Definition of that class will then map to a row in that table. /XX 11 ACCP2005/EJB 2.0/ Session 5 / 11 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN The Entity Bean’s Remote Interface GV: NGUYỄN XUÂN VINH MÔN: LẬP TRÌNH MẠNG 2 Remote Invokes Interface Business Entity Client Method Bean signatures 15/01/16 /XX 12 ACCP2005/EJB 2.0/ Session 5 / 12 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN The Home Interface GV: NGUYỄN XUÂN VINH create Entity Bean Home Object Interface MÔN: LẬP TRÌNH MẠNG 2 Uses find Entity Bean Client Object Methods destroy Entity Bean Object 15/01/16 The home interface is used by the clients to create, find and destroy entity bean objects. /XX 13 ACCP2005/EJB 2.0/ Session 5 / 13 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN Local Interface GV: NGUYỄN XUÂN VINH Local Clients MÔN: LẬP TRÌNH MẠNG 2 Entity Beans Exposes Entity Beans Methods 15/01/16 Container /XX Local Interface allows the beans to expose its methods to other beans that reside within the same container (local clients). 14 ACCP2005/EJB 2.0/ Session 5 / 14 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN The Primary Key Class GV: NGUYỄN XUÂN VINH Primary keys make each entity bean look different. A primary key is an object itself which contains other MÔN: LẬP TRÌNH MẠNG 2 objects and data that is necessary to identify an entity bean data instance. The primary key class has to be serializable, and has to follow the rules of Java object serialization. The unique identifier, or primary key, enables client to locate the particular entity bean. 15/01/16 /XX 15 ACCP2005/EJB 2.0/ Session 5 / 15 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN The Deployment Descriptors GV: NGUYỄN XUÂN VINH Contacts the deployment descriptor for bean deployment MÔN: LẬP TRÌNH MẠNG 2 Container Deployment descriptors List of properties Informs the container about the 15/01/16 bean and classes /XX 16 ACCP2005/EJB 2.0/ Session 5 / 16 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN Pooling of Entity Bean Instances GV: NGUYỄN XUÂN VINH Instantiates Represents Entity Storage EJB Bean 1 MÔN: LẬP TRÌNH MẠNG 2 Data 1 Entity Container Bean 2 Data 2 Data n Entity Bean n Entity Beans 15/01/16 Pooled When the bean and instance is used ,it is Recycled assigned to handle /XX different client request. 17 ACCP2005/EJB 2.0/ Session 5 / 17 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN Ways to Persist Entity Beans GV: NGUYỄN XUÂN VINH MÔN: LẬP TRÌNH MẠNG 2 Entity Bean-managed Persistence Bean Entity Beans map themselves in the Deployment Descriptor tells the data store container about the persistent fields Data Store and then the container handles the data logic 15/01/16 Container- Managed Persistent Beans Deployment Persistence Descriptor /XX 18 ACCP2005/EJB 2.0/ Session 5 / 18 of 33
- TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN Working with Entity Beans GV: NGUYỄN XUÂN VINH The entity bean instance and the underlying database can be considered as one and the same. When the beanmanaged persistent bean calls the ejbCreate() method, it creates the database data. In case of containermanaged persistence, the container contains MÔN: LẬP TRÌNH MẠNG 2 required data access logic, leaving the bean’s methods empty of data access logic. The finder methods are used to find the existing entity bean in storage. The finder methods do not create any new database data, but they load old entity bean data. 15/01/16 /XX 19 ACCP2005/EJB 2.0/ Session 5 / 19 of 33
- Modifying Entity Beans Directly TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN though the Database GV: NGUYỄN XUÂN VINH EJB Container/ Server MÔN: LẬP TRÌNH MẠNG 2 Entity Existing Beans Application Direct Database O/R Mapping Modifications Bean data 15/01/16 Database /XX 20 ACCP2005/EJB 2.0/ Session 5 / 20 of 33
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Lập trình mạng nâng cao ICMP protocol - Nguyễn Vũ
29 p | 161 | 26
-
Bài giảng Lập trình C nâng cao: Chương 5 - Trần Minh Thái
22 p | 144 | 18
-
Bài giảng Lập trình mạng nâng cao: Giới thiệu - Nguyễn Xuân Vinh
8 p | 130 | 16
-
Bài giảng Lập trình C nâng cao: Chương 1 - Trần Minh Thái
25 p | 122 | 15
-
Bài giảng Lập trình mạng nâng cao - Chương 3: IP Multicasting
21 p | 95 | 11
-
Bài giảng Lập trình mạng nâng cao - Xử lý sự kiện (Event)
47 p | 118 | 10
-
Bài giảng Lập trình mạng nâng cao - Nguyễn Vũ
18 p | 105 | 10
-
Bài giảng Lập trình mạng: Chương 3 - ThS. Trần Bá Nhiệm
96 p | 93 | 9
-
Bài giảng Lập trình mạng: Bài 4 - Bùi Trọng Tùng
20 p | 78 | 7
-
Bài giảng Lập trình mạng: Lập trình socket nâng cao: Tùy biến socket - TS. Nguyễn Hoài Sơn
48 p | 94 | 7
-
Bài giảng Lập trình web nâng cao: Chương 3 - Trường ĐH Văn Hiến
26 p | 19 | 5
-
Bài giảng Lập trình mạng: Lập trình UDP socket nâng cao - TS. Nguyễn Hoài Sơn
28 p | 106 | 5
-
Bài giảng Lập trình nâng cao - Chương 3: Mảng
48 p | 66 | 5
-
Bài giảng Lập trình nâng cao: Bài 4+5+6 - Trương Xuân Nam
25 p | 34 | 4
-
Bài giảng Lập trình nâng cao: Bài 1 - Trương Xuân Nam
18 p | 24 | 3
-
Bài giảng Lập trình mạng Java: Chương 0 - ThS. Nguyễn Minh Thành
8 p | 71 | 3
-
Bài giảng Lập trình mạng: Giới thiệu môn học - TS. Nguyễn Hoài Sơn
13 p | 95 | 2
-
Bài giảng Lập trình nâng cao (Advanced Programming) - Chương 5. Kiểu mảng và xâu ký tự
16 p | 2 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn