140 likes | 341 Views
JAVE PERSISTENCE API ( jpa ). OBJECT RELATIONAL MAPPING(ORM). Ánh xạ dữ liệu của đối tượng vào trong cơ sở dữ liệu quan hệ . GiỚI THIỆU Java Persistence API().
E N D
OBJECT RELATIONAL MAPPING(ORM) • Ánhxạdữliệucủađốitượngvàotrongcơsởdữliệuquanhệ.
GiỚI THIỆU Java Persistence API() • JPA làmộtđặctả Java choviệctruyxuất, quảnlýdữliệugiữacác object/class vàmộtcơsởdữliệuquanhệsửdụngcôngnghệ ORM (Object to Relational Mapping). • Đượcpháttriểnnhưmộtphầncủa Java Specification Request (JSR) 220 • Mụctiêulàmđơngiảnhóa EJB CMP entity beans. • Đónggóitrongjavax.persistence • JPA cóthểsửdụngcảtrongmôitrường J2SE lẫn J2EE.
MAPPING MỘT ENITTY • Entity làmột POJO (Plain Old Java Object) • Được map bằngmộttronghaicách • Môtảtrong XML descriptor • Sửdụng annotations trongtừng class • Đượcxácđịnhvới @Entity • Khóachínhđượcthông qua @Id • Chứacácpersitent fields hoặccác properties • Cácthuộctínhđượctruyxuấtthông qua getters/setters là “properties” • Cácthuộctínhđượctruyxuấttrựctiếpđượcgọilà “fields”
Persistence context • Đóngvaitrònhưmột connection giữathểhiệncủa entity trongbộnhớvà database. • Xácđịnhtrong file cấuhình persistence.xml • Đượcthaotácthông qua EntityManager. Persistence Context Database Entities
EntityManager • Dùngđểtruyxuấtvàquảnlýtrạngtháicủa entity. • Tạothông qua lớpEntityManagerFactory
Entity Relationships • Cáckiểuliênkếtgiữacác entity • Cácliênkếtđượcthựchiệnthông qua file mapping orm.xml hay sửdụngcác annotations • javax.persistence.OneToOne • javax.persistence.OneToMany • javax.persistence.ManyToOne • javax.persistence.ManyToMany
Queries Queries Dynamic Named Native
Native queries • Native queries chứacâulệnh SQL tựnhiên Query query = em.createNativeQuery("SELECT * FROM t_customer", Customer.class);List<Customer> customers = query.getResultList();
references [1]. Antonio Goncalves, Beginning Java™ EE 6 Platform with GlassFish™ 3, Apress, 2009 [2]. Rima Patel Sriganish, Gerald Brose, Micah silverman, Mastering Enterprise JavaBeans 3.0, Wiley, 2006 [3]. Kent Ka Iok Tong, Beginning JSF™ 2 APIs and JBoss® Seam, Apress, 2009
THE END Thank you very much!!