10
NHibernate ORM Pemindahan Teknologi (Teknikal) {{system}} untuk oleh {{client}} {{company}}

Pengenalan Ringkas: NHibernate ORM

Embed Size (px)

DESCRIPTION

Pengenalan Ringkas kepada framework Object-Relational Mapper (ORM) NHibernate

Citation preview

Page 1: Pengenalan Ringkas: NHibernate ORM

NHibernateORM

Pemindahan Teknologi (Teknikal)

{{system}}

untuk oleh

{{client}} {{company}}

Page 2: Pengenalan Ringkas: NHibernate ORM

Pendahuluan• Architecture dan domain design

dalam Object-Oriented Model.

• Database (persistence) dalam

Relational Model.

• Terjadi object-relational impedance

mismatch antara dua paradigma.

TOT 2

Page 3: Pengenalan Ringkas: NHibernate ORM

TOT 3

Page 4: Pengenalan Ringkas: NHibernate ORM

TOT 4

DOMAIN

DATA

Classes, Inheritance, Composition

Tables, Columns, Primary Keys, Foreign Keys

Page 5: Pengenalan Ringkas: NHibernate ORM

Object-Relational Mapper• ORM

• Tool/framework yang digunakan untuk

menukarkan data dari bentuk object-

oriented kepada relational, vice versa.

• Class -> Table

• Property -> Column

• Composition -> Relation

TOT 5

Page 6: Pengenalan Ringkas: NHibernate ORM

TOT 6

DOMAIN

DATA

Classes, Inheritance, Composition

Tables, Columns, Primary Keys, Foreign Keys

ORM

Page 7: Pengenalan Ringkas: NHibernate ORM

TOT 7

Page 8: Pengenalan Ringkas: NHibernate ORM

• http://nhforge.org

• Asal dari Hibernate, untuk Java

• Ported to .NET, menjadi NHibernate

• Jana SQL semasa runtime

• Ada banyak lain, tetapi pilih NHibernateo Mature and stable

o Fleksibel dan berkuasa

o Database agnostic

o Banyak sokongan komuniti

o Open source

TOT 8

Page 9: Pengenalan Ringkas: NHibernate ORM

Kelebihan ORM• Dapat guna teknik-teknik Object-Oriented

Analysis/Design/Programming

• Sistem lebih fleksibel dan resilient to change.

• Produktivitio Mempercepatkan pembangunan

o Bila tukar property, tak perlu mencari semua nama column

dalam SQL.

• Kurang kesilapan

• Keselamatano Parameterized query, kurang risiko SQL injection

TOT 9

Page 10: Pengenalan Ringkas: NHibernate ORM

Penggunaan• Konfigurasi

o Mapping

• XML configuration

• Fluent NHibernate (http://www.fluentnhibernate.org/)

o Start-up

• Semasa application start

• Session management

• Query dan Insert/Update/Deleteo Session.Get(), Save(), Update(), Delete(), Flush()

o Criteria

o HQL/SQL

o LINQ to NHibernate

TOT 10