🗊Презентация Что такое JPA

Категория: Информатика
Нажмите для полного просмотра!
Что такое JPA, слайд №1Что такое JPA, слайд №2Что такое JPA, слайд №3Что такое JPA, слайд №4Что такое JPA, слайд №5Что такое JPA, слайд №6Что такое JPA, слайд №7Что такое JPA, слайд №8Что такое JPA, слайд №9Что такое JPA, слайд №10Что такое JPA, слайд №11Что такое JPA, слайд №12Что такое JPA, слайд №13Что такое JPA, слайд №14Что такое JPA, слайд №15Что такое JPA, слайд №16Что такое JPA, слайд №17Что такое JPA, слайд №18Что такое JPA, слайд №19Что такое JPA, слайд №20Что такое JPA, слайд №21Что такое JPA, слайд №22Что такое JPA, слайд №23Что такое JPA, слайд №24Что такое JPA, слайд №25Что такое JPA, слайд №26Что такое JPA, слайд №27Что такое JPA, слайд №28Что такое JPA, слайд №29Что такое JPA, слайд №30Что такое JPA, слайд №31Что такое JPA, слайд №32Что такое JPA, слайд №33Что такое JPA, слайд №34Что такое JPA, слайд №35Что такое JPA, слайд №36Что такое JPA, слайд №37Что такое JPA, слайд №38Что такое JPA, слайд №39Что такое JPA, слайд №40

Вы можете ознакомиться и скачать презентацию на тему Что такое JPA. Доклад-сообщение содержит 40 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

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


Слайд 1





JPA
Описание слайда:
JPA

Слайд 2





Что такое JPA?
JPA – Java persistence API.
JPA реализует концепцию ORM(object-relational mapping).
Описание слайда:
Что такое JPA? JPA – Java persistence API. JPA реализует концепцию ORM(object-relational mapping).

Слайд 3





Что такое Entity?
 Entity – POJO класс, связанный с бд с помощью аннотации или xml конфигурации.
Entity класс должен:
Должен иметь пустой конструктор.
Не может быть final, не может использовать final поля.
Должен содержать поле @Id.
Описание слайда:
Что такое Entity? Entity – POJO класс, связанный с бд с помощью аннотации или xml конфигурации. Entity класс должен: Должен иметь пустой конструктор. Не может быть final, не может использовать final поля. Должен содержать поле @Id.

Слайд 4





Что такое JPQL
JPQL – Java persistence query language. Используется для написания sql-подобных запросов, оперирующих сущностями.
Описание слайда:
Что такое JPQL JPQL – Java persistence query language. Используется для написания sql-подобных запросов, оперирующих сущностями.

Слайд 5





Какие есть реализации JPA?
-Hibernate
-Toplink
-Eclipselink
-OpenJpa
-DataNucleus
-ObjectDb
Описание слайда:
Какие есть реализации JPA? -Hibernate -Toplink -Eclipselink -OpenJpa -DataNucleus -ObjectDb

Слайд 6





Сравнение производительности JPA библиотек
Описание слайда:
Сравнение производительности JPA библиотек

Слайд 7





Hibernate
Описание слайда:
Hibernate

Слайд 8





Configuration properties
hibernate.dialect                              
hibernate.show_sql
hibernate.format_sql 
hibernate.default_schema
hibernate.default_catalog
hibernate.session_factory_name
hibernate.max_fetch_depth
hibernate.default_batch_fetch_size
hibernate.default_entity_mode
hibernate.order_updates
hibernate.generate_statistics
hibernate.use_identifier_rollback
hibernate.use_sql_comments
Описание слайда:
Configuration properties hibernate.dialect hibernate.show_sql hibernate.format_sql hibernate.default_schema hibernate.default_catalog hibernate.session_factory_name hibernate.max_fetch_depth hibernate.default_batch_fetch_size hibernate.default_entity_mode hibernate.order_updates hibernate.generate_statistics hibernate.use_identifier_rollback hibernate.use_sql_comments

Слайд 9





Configuration properties
hibernate.jdbc.fetch_size
hibernate.jdbc.batch_size
hibernate.jdbc.batch_versioned_data
hibernate.jdbc.factory_class
hibernate.jdbc.use_scrollable_resultset
hibernate.jdbc.use_streams_for_binary
hibernate.jdbc.use_get_generated_keys
hibernate.connection.provider_class
hibernate.connection.isolation
hibernate.connection.autocommit
hibernate.connection.release_mode
Описание слайда:
Configuration properties hibernate.jdbc.fetch_size hibernate.jdbc.batch_size hibernate.jdbc.batch_versioned_data hibernate.jdbc.factory_class hibernate.jdbc.use_scrollable_resultset hibernate.jdbc.use_streams_for_binary hibernate.jdbc.use_get_generated_keys hibernate.connection.provider_class hibernate.connection.isolation hibernate.connection.autocommit hibernate.connection.release_mode

Слайд 10





Configuration properties
hibernate.cache.provider_class
hibernate.cache.use_minimal_puts
hibernate.cache.use_query_cache
hibernate.cache.use_second_level_cache
hibernate.cache.query_cache_factory
hibernate.cache.region_prefix
hibernate.cache.use_structured_entries
Описание слайда:
Configuration properties hibernate.cache.provider_class hibernate.cache.use_minimal_puts hibernate.cache.use_query_cache hibernate.cache.use_second_level_cache hibernate.cache.query_cache_factory hibernate.cache.region_prefix hibernate.cache.use_structured_entries

Слайд 11





Configuration properties
hibernate.transaction.factory_class
jta.UserTransaction
hibernate.transaction.manager_lookup_class
hibernate.transaction.flush_before_completion
hibernate.transaction.auto_close_session
Описание слайда:
Configuration properties hibernate.transaction.factory_class jta.UserTransaction hibernate.transaction.manager_lookup_class hibernate.transaction.flush_before_completion hibernate.transaction.auto_close_session

Слайд 12





Configuration properties
hibernate.current_session_context_class
hibernate.query.factory_class
hibernate.query.substitutions
hibernate.hbm2ddl.auto
hibernate.cglib.use_reflection_optimizer
Описание слайда:
Configuration properties hibernate.current_session_context_class hibernate.query.factory_class hibernate.query.substitutions hibernate.hbm2ddl.auto hibernate.cglib.use_reflection_optimizer

Слайд 13





Dialects
org.hibernate.dialect.DB2Dialect                     org.hibernate.dialect.DB2400Dialect
org.hibernate.dialect.DB2390Dialect               org.hibernate.dialect.PostgreSQLDialect
org.hibernate.dialect.MySQLDialect                org.hibernate.dialect.MySQLInnoDBDialect
org.hibernate.dialect.MySQLMyISAMDialect   org.hibernate.dialect.OracleDialect
org.hibernate.dialect.Oracle9iDialect               org.hibernate.dialect.Oracle10gDialect
org.hibernate.dialect.SybaseDialect                org.hibernate.dialect.SybaseAnywhereDialect
org.hibernate.dialect.SQLServerDialect          org.hibernate.dialect.SAPDBDialect
org.hibernate.dialect.InformixDialect               org.hibernate.dialect.HSQLDialect
org.hibernate.dialect.IngresDialect                  org.hibernate.dialect.ProgressDialect
org.hibernate.dialect.MckoiDialect                   org.hibernate.dialect.InterbaseDialect
org.hibernate.dialect.PointbaseDialect            org.hibernate.dialect.FrontbaseDialect
org.hibernate.dialect.FirebirdDialect
Описание слайда:
Dialects org.hibernate.dialect.DB2Dialect org.hibernate.dialect.DB2400Dialect org.hibernate.dialect.DB2390Dialect org.hibernate.dialect.PostgreSQLDialect org.hibernate.dialect.MySQLDialect org.hibernate.dialect.MySQLInnoDBDialect org.hibernate.dialect.MySQLMyISAMDialect org.hibernate.dialect.OracleDialect org.hibernate.dialect.Oracle9iDialect org.hibernate.dialect.Oracle10gDialect org.hibernate.dialect.SybaseDialect org.hibernate.dialect.SybaseAnywhereDialect org.hibernate.dialect.SQLServerDialect org.hibernate.dialect.SAPDBDialect org.hibernate.dialect.InformixDialect org.hibernate.dialect.HSQLDialect org.hibernate.dialect.IngresDialect org.hibernate.dialect.ProgressDialect org.hibernate.dialect.MckoiDialect org.hibernate.dialect.InterbaseDialect org.hibernate.dialect.PointbaseDialect org.hibernate.dialect.FrontbaseDialect org.hibernate.dialect.FirebirdDialect

Слайд 14





Application Configuration
Самостоятельная работа
Описание слайда:
Application Configuration Самостоятельная работа

Слайд 15





hibernate.cfg.xml
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">?</property>
<property name="connection.url">?</property>
<property name="connection.username">?</property>
<property name="connection.password">?</property>
<property name="connection.pool_size">?</property>
<property name="dialect">?</property>
<property name="show_sql">?</property>
<property name="hbm2ddl.auto">?</property>
<mapping class="?"/>
</session-factory>
</hibernate-configuration>
Описание слайда:
hibernate.cfg.xml <?xml version='1.0' encoding='utf-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="connection.driver_class">?</property> <property name="connection.url">?</property> <property name="connection.username">?</property> <property name="connection.password">?</property> <property name="connection.pool_size">?</property> <property name="dialect">?</property> <property name="show_sql">?</property> <property name="hbm2ddl.auto">?</property> <mapping class="?"/> </session-factory> </hibernate-configuration>

Слайд 16





JPA
javax.persistence VS org.hibernate.annotations
Описание слайда:
JPA javax.persistence VS org.hibernate.annotations

Слайд 17





Entities
@Entity
@Table
@Id
@GeneratedValue
@Column
@OneToMany
@ManyToOne
@ManyToMany
@OneToOne
Описание слайда:
Entities @Entity @Table @Id @GeneratedValue @Column @OneToMany @ManyToOne @ManyToMany @OneToOne

Слайд 18





Entity states
Описание слайда:
Entity states

Слайд 19





Methods of session
persist, save
update, merge
delete
load, get
evict
Описание слайда:
Methods of session persist, save update, merge delete load, get evict

Слайд 20





@ManyToMany
@ManyToMany
@JoinTable(name=”?”)
@ManyToMany(mappedBy = “?”)
Описание слайда:
@ManyToMany @ManyToMany @JoinTable(name=”?”) @ManyToMany(mappedBy = “?”)

Слайд 21





Cascading
CascadeType:
ALL
DETACH
MERGE
PERSIST
REFRESH
REMOVE
Описание слайда:
Cascading CascadeType: ALL DETACH MERGE PERSIST REFRESH REMOVE

Слайд 22





FetchType
Eager
Lazy
Описание слайда:
FetchType Eager Lazy

Слайд 23





Composite PK
@Embeddable
Serializable
Описание слайда:
Composite PK @Embeddable Serializable

Слайд 24





Additional annotations
@Transient
@OrderColumn
@NamedQuery
@NamedNativeQuery
@Sort
@OrderBy
@Where
Описание слайда:
Additional annotations @Transient @OrderColumn @NamedQuery @NamedNativeQuery @Sort @OrderBy @Where

Слайд 25





Inheritance
Single table
Joined
Table-per-cpass
Описание слайда:
Inheritance Single table Joined Table-per-cpass

Слайд 26





Single table(table per hierarchy)
Parent:
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name = "?",discriminatorType = DiscriminatorType.?)
Child:
@DiscriminatorValue("dog")
Описание слайда:
Single table(table per hierarchy) Parent: @Inheritance(strategy = InheritanceType.SINGLE_TABLE) @DiscriminatorColumn(name = "?",discriminatorType = DiscriminatorType.?) Child: @DiscriminatorValue("dog")

Слайд 27





Table per class(table per concrete class) 
Parent:
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
Child:
@AttributeOverrides({
@AttributeOverride(name="?", column=@Column(name="?"))
})
Описание слайда:
Table per class(table per concrete class) Parent: @Inheritance(strategy = InheritanceType.TABLE_PER_CLASS) Child: @AttributeOverrides({ @AttributeOverride(name="?", column=@Column(name="?")) })

Слайд 28





Table per subclass, Joined
Parent:
@Inheritance(strategy = InheritanceType.JOINED)
Child:
@PrimaryKeyJoinColumn(name = "?", referencedColumnName = "?")
Описание слайда:
Table per subclass, Joined Parent: @Inheritance(strategy = InheritanceType.JOINED) Child: @PrimaryKeyJoinColumn(name = "?", referencedColumnName = "?")

Слайд 29





Isolation levels
Read uncommited(Dirty read, Non repeatable read, Phantom read)
Read commited(Non repeatable read, Phantom read)
Repeatable Read(Phantom read)
Serializable
Описание слайда:
Isolation levels Read uncommited(Dirty read, Non repeatable read, Phantom read) Read commited(Non repeatable read, Phantom read) Repeatable Read(Phantom read) Serializable

Слайд 30





Isolation levels
session.doWork(connection -> {
	connection.setTransactionIsolation(Connection.?);
});
Описание слайда:
Isolation levels session.doWork(connection -> { connection.setTransactionIsolation(Connection.?); });

Слайд 31





Optimistic vs pessimistic locking
@Version
where version = ?
Описание слайда:
Optimistic vs pessimistic locking @Version where version = ?

Слайд 32





Caching
Level 1 (session)
Level 2 (session factory)
Описание слайда:
Caching Level 1 (session) Level 2 (session factory)

Слайд 33





Level 2 caching
EHCache
Infinispan
OSCache
SwarmCache
Modes:
NORMAL, GET, PUT
Описание слайда:
Level 2 caching EHCache Infinispan OSCache SwarmCache Modes: NORMAL, GET, PUT

Слайд 34





Level 2 caching, EHCache
POM.xml:
<dependency>
	 <groupId>org.hibernate</groupId>
	 <artifactId>hibernate-ehcache</artifactId>
	 <version>?</version>
</dependency>
hibernate.cfg.xml:
<property name="cache.use_second_level_cache">true</property>
<property name="cache.provider_class">org.hibernate.cache.EhCacheProvider</property>
<property name="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory</property>
<property name="net.sf.ehcache.configurationResourceName">cache-config.xml</property>
cache-config.xml:
<?xml version="1.0" encoding="UTF-8"?>
<ehcache>
<defaultCache maxElementsInMemory="100" timeToIdleSeconds="30" timeToLiveSeconds="120" />
</ehcache>
Описание слайда:
Level 2 caching, EHCache POM.xml: <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-ehcache</artifactId> <version>?</version> </dependency> hibernate.cfg.xml: <property name="cache.use_second_level_cache">true</property> <property name="cache.provider_class">org.hibernate.cache.EhCacheProvider</property> <property name="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory</property> <property name="net.sf.ehcache.configurationResourceName">cache-config.xml</property> cache-config.xml: <?xml version="1.0" encoding="UTF-8"?> <ehcache> <defaultCache maxElementsInMemory="100" timeToIdleSeconds="30" timeToLiveSeconds="120" /> </ehcache>

Слайд 35





HQL
from ? alias where ____
select alias.? from ?
from ? alias where param > :paramIdentifier             .setParameter("paramIdentifier", ?)
from ? x inner join fetch x.? as ?
Описание слайда:
HQL from ? alias where ____ select alias.? from ? from ? alias where param > :paramIdentifier .setParameter("paramIdentifier", ?) from ? x inner join fetch x.? as ?

Слайд 36





Named queries
@NamedQuery(name = "?", query="?")
session.getNamedQuery(“?”)
Описание слайда:
Named queries @NamedQuery(name = "?", query="?") session.getNamedQuery(“?”)

Слайд 37





Pagination
query.setFirstResult
query.setMaxResults
Описание слайда:
Pagination query.setFirstResult query.setMaxResults

Слайд 38





Query -> 
list
iterate
uniqueResult
Описание слайда:
Query -> list iterate uniqueResult

Слайд 39





Criteria api
session.createCriteria(Entity.class)
.add(Restrictions.?)
.addOrder(Order.?)
.setProjections(Projections.?)
Описание слайда:
Criteria api session.createCriteria(Entity.class) .add(Restrictions.?) .addOrder(Order.?) .setProjections(Projections.?)

Слайд 40





Interceptors
? extends EmptyInterceptor
Описание слайда:
Interceptors ? extends EmptyInterceptor



Теги Что такое JPA
Похожие презентации
Mypresentation.ru
Загрузить презентацию