Презентация 3. Java Persistence API. 4. Entity Relationships онлайн

На нашем сайте вы можете скачать и просмотреть онлайн доклад-презентацию на тему 3. Java Persistence API. 4. Entity Relationships абсолютно бесплатно. Урок-презентация на эту тему содержит всего 43 слайда. Все материалы созданы в программе PowerPoint и имеют формат ppt или же pptx. Материалы и темы для презентаций взяты из открытых источников и загружены их авторами, за качество и достоверность информации в них администрация сайта не отвечает, все права принадлежат их создателям. Если вы нашли то, что искали, отблагодарите авторов - поделитесь ссылкой в социальных сетях, а наш сайт добавьте в закладки.
Презентации » Устройства и комплектующие » 3. Java Persistence API. 4. Entity Relationships



Оцените!
Оцените презентацию от 1 до 5 баллов!
  • Тип файла:
    ppt / pptx (powerpoint)
  • Всего слайдов:
    43 слайда
  • Для класса:
    1,2,3,4,5,6,7,8,9,10,11
  • Размер файла:
    287.00 kB
  • Просмотров:
    50
  • Скачиваний:
    0
  • Автор:
    неизвестен



Слайды и текст к этой презентации:

№1 слайд
. Java Persistence API .
Содержание слайда: 3. Java Persistence API 4. Entity Relationships

№2 слайд
Basics A foreign key can be
Содержание слайда: Basics A foreign key can be one or more columns that reference a unique key, usually the primary key, in another table A foreign key and the primary parent key it references must have the same number and type of fields Foreign keys represents relationships from a column or columns in one table to a column or columns in another table

№3 слайд
Multiplicity in Entity
Содержание слайда: Multiplicity in Entity Relationships Multiplicities are of the following types: Many-to-one: Multiple instances of an entity can be related to a single instance of the other entity One-to-one: Each entity instance is related to a single instance of another entity One-to-many: An entity instance can be related to multiple instances of the other entities Many-to-many: The entity instances can be related to multiple instances of each other.

№4 слайд
CM Database Schema
Содержание слайда: CM Database Schema

№5 слайд
Many-to-One Mappings A
Содержание слайда: Many-to-One Mappings A many-to-one mapping is defined by annotating the attribute in the source entity (the attribute that refers to the target entity) with the @ManyToOne annotation A @JoinColumn(name=Fkname) annotation discribes a foreing key of a relationship

№6 слайд
Exercise Read a Payment
Содержание слайда: Exercise: Read a Payment Create a project for read payment data by payment id with a merchant name instead of merchant id

№7 слайд
CM Database Schema
Содержание слайда: CM Database Schema

№8 слайд
Payment Entity of Entity
Содержание слайда: Payment Entity (1 of 2) @Entity public class Payment { @Id @GeneratedValue(strategy=GenerationType.IDENTITY) private int id; private double charge; private double total; private String goods; private java.sql.Date dt; @ManyToOne @JoinColumn(name="merchantId") private Merchant merchant;

№9 слайд
Payment Entity of public
Содержание слайда: Payment Entity (2 of 2) public Merchant getMerchant(){ return merchant; } public void setMerchant(Merchant value){ merchant = value; } . . . . . . . . . . . . . . . . public String getStringForPrint() { String txt = "id = " + id + "; date = "; SimpleDateFormat dtFrm = new SimpleDateFormat("dd.MM.yyyy"); txt += dtFrm.format(dt) + "; merchant = " + merchant.getName(); txt += "; total = " + total + "; charge = " + charge; return txt; }

№10 слайд
DAO amp Service Interfaces
Содержание слайда: DAO & Service Interfaces public interface PaymentDao { public List<Payment> findByMerchantId(int id); public double getPaymentSum(); public Payment findById(int id); } public interface PaymentService { public List<Payment> findByMerchantId(int id); public double getPaymentSum(); public Payment findById(int id); }

№11 слайд
PaymentDaoImpl Class public
Содержание слайда: PaymentDaoImpl Class public Payment findById(int id){ return em.find(Payment.class, id); }

№12 слайд
Main Class SuppressWarnings
Содержание слайда: Main Class @SuppressWarnings("resource") public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml"); PaymentService paymentService = context.getBean(PaymentService.class); Payment p = paymentService.findById(2); System.out.println(p.toString()); }

№13 слайд
Exercise Read a Payment See P
Содержание слайда: Exercise: Read a Payment See P351ReadPayment project for the full text

№14 слайд
Exercise Group Payments
Содержание слайда: Exercise: Group Payments Modify P237Grouping project using entities from the previous project

№15 слайд
PaymentDaoImp Class public
Содержание слайда: PaymentDaoImp Class public List<Result> getTotalReport(){ String txt = "SELECT new com.bionic.edu.Result (p.merchant.name, count(p), SUM(p.chargePayed))"; txt += "FROM Payment p GROUP BY p.merchant.name"; TypedQuery<Result> query = em.createQuery(txt, Result.class); return query.getResultList(); }

№16 слайд
Main Class SuppressWarnings
Содержание слайда: Main Class @SuppressWarnings("resource") public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml"); PaymentService paymentService = context.getBean(PaymentService.class); List<Result> list = paymentService.getTotalReport(); for(Result r: list) System.out.format("%1$25s %2$3d %3$8.2f \n", r.getName(), r.getCount(), r.getSum()); }

№17 слайд
Exercise Group Payments See P
Содержание слайда: Exercise: Group Payments See P352GroupPayment project for the full text

№18 слайд
One-to-Many Mappings An
Содержание слайда: One-to-Many Mappings An entity instance can be related to multiple instances of the other entities One-to-many relationships use the @OneToMany annotation on the corresponding persistent property or field The mappedBy element is needed to refer to the attribute annotated by ManyToOne in the corresponding entity: @OneToMany(mappedBy=“attribute”) A one-to-many association needs to map the collection of entities

№19 слайд
Exercise Read a Merchant s
Содержание слайда: Exercise: Read a Merchant’s Payments Create a project for read payment data that correspond to a merchant given by its id

№20 слайд
CM Database Schema
Содержание слайда: CM Database Schema

№21 слайд
Merchant Entity Entity public
Содержание слайда: Merchant Entity @Entity public class Merchant { @Id @GeneratedValue(strategy=GenerationType.IDENTITY) private int id; private String name; private double charge; private int period; private double total; @OneToMany(mappedBy="merchant") private Collection<Payment> payments;

№22 слайд
Main Class of
Содержание слайда: Main Class (1 of 2) @SuppressWarnings("resource") public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml"); MerchantService merchantService = context.getBean(MerchantService.class); List<Merchant> list = merchantService.getSortedByNeedToPay(); for(Merchant m: list){ System.out.println("======================="); System.out.println(m.getName());

№23 слайд
Main Class of
Содержание слайда: Main Class (2 of 2) System.out.println(" "); Collection<Payment> payments = m.getPayments(); for (Payment p : payments) { System.out.println(p.toString()); } } }

№24 слайд
Exercise Read a Merchant s
Содержание слайда: Exercise: Read a Merchant’s Payments See P353MerchantPayments project for the full text

№25 слайд
Many-to-Many Mappings The
Содержание слайда: Many-to-Many Mappings The entity instances can be related to multiple instances of each other Many-to-many relationships use the @ManyToMany annotation on the corresponding persistent property or field We must use a third table to associate the two entity types (join table)

№26 слайд
JoinTable Annotation
Содержание слайда: @JoinTable Annotation @JoinTable(name=“table name”, joinColumns=@JoinColumn(name=“c1Id”), inverseJoinColumns= @JoinColumn(name=“c2Id”))

№27 слайд
Exercise Read Customer s
Содержание слайда: Exercise: Read Customer’s Merchants Create a project to read data about merchants whose goods were bought by a given customer

№28 слайд
Customer Entity of Entity
Содержание слайда: Customer Entity (1 of 2) @Entity public class Customer { @Id @GeneratedValue(strategy=GenerationType.IDENTITY) private int id; private java.sql.Date maturity; private String ccType; private String ccNo; private String eMail; private String address; private String name;

№29 слайд
Customer Entity of ManyToMany
Содержание слайда: Customer Entity (2 of 2) @ManyToMany @JoinTable(name="Payment", joinColumns=@JoinColumn(name="customerId"), inverseJoinColumns=@JoinColumn(name="merchantId")) private Collection<Merchant> merchants;

№30 слайд
Main Class SuppressWarnings
Содержание слайда: Main Class @SuppressWarnings("resource") public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml"); CustomerService customerService = context.getBean(CustomerService.class); Customer customer = customerService.findById(1); if (customer != null){ System.out.println(customer.toString()); Collection<Merchant> merchants = customer.getMerchants(); for (Merchant m : merchants) { System.out.println(m.getName());}}}

№31 слайд
Exercise Read Customer s
Содержание слайда: Exercise: Read Customer’s Merchants See P354CustAndMerch project for the full text

№32 слайд
Lazy Relationships The fetch
Содержание слайда: Lazy Relationships The fetch mode can be specified on any of the four relationship mapping types: @ManyToOne(fetch=FetchType.LAZY) Lazy loading can essential enhance performance

№33 слайд
One-to-One Mappings Each
Содержание слайда: One-to-One Mappings Each entity instance is related to a single instance of another entity One-to-one relationships use the @OneToOne annotation on the corresponding persistent property or field Example of One-To-One mapping: Employee and ParkingSpace entities

№34 слайд
Embedded Objects of An
Содержание слайда: Embedded Objects (1 of 2) An embedded object is one that is dependent on an entity for its identity It has no identity of its own, but is merely part of the entity state The state of the embedded object is stored with the rest of the entity state in the database row, with no distinction between the state in the Java entity and that in its embedded object

№35 слайд
Embedded Objects of We can
Содержание слайда: Embedded Objects (2 of 2) We can share the same embedded object type with other entities that also have the same internal representation Example: the home address of the employee (contains Street, City, State, ZipCode fields)

№36 слайд
Embedded Type An embedded
Содержание слайда: Embedded Type An embedded type is marked as such by adding the @Embeddable annotation to the class definition Its fields and properties will be persistable as part of an entity We might also want to define the access type of the embeddable object so it is accessed the same way regardless of which entity it is embedded in

№37 слайд
Address Embedded Type
Содержание слайда: Address Embedded Type @Embeddable @Access(AccessType.FIELD) public class Address { private String street; private String city; private String state; private String zipCode; // ... }

№38 слайд
Using an Embedded Object
Содержание слайда: Using an Embedded Object @Entity public class Employee { @Id private int id; private String name; private long salary; @Embedded private Address address; // ... }

№39 слайд
Reuse of Embedded Type An
Содержание слайда: Reuse of Embedded Type An Address class could be reused in both Employee and Company entities

№40 слайд
Database Schema Generation
Содержание слайда: Database Schema Generation Automatically generation the tables and database schema for a persistence unit can be done through the "eclipselink.ddl-generation" persistence unit property The tables and constraints will be generated for all of the classes defined in that persistence unit.

№41 слайд
eclipselink.ddl-generation
Содержание слайда: eclipselink.ddl-generation Values create-tables – if the table already exists then it will not be dropped or replaced, the existing table will be used drop-and-create-tables - will first drop the existing table, and then create the new table. Note that this will lose all of the data in the tables when they are dropped!!

№42 слайд
Schema Generation Practice
Содержание слайда: Schema Generation Practice One of the complaints around schema generation is that you can’t specify everything that you need to be able to finely tune the schema. There are too many differences between databases and too many different settings to try to put in options for every database type.

№43 слайд
Schema Generation Practice If
Содержание слайда: Schema Generation Practice If every database-tuning option were exposed through JPA then we would end up duplicating the features of Data Definition Language (DDL) in an API The final schema will typically be tuned by a database administrator or someone with the appropriate level of database experience.

Скачать все slide презентации 3. Java Persistence API. 4. Entity Relationships одним архивом: