ORMapper: NHibernate 11.12.2010 Henning Eiben

Slides:



Advertisements
Ähnliche Präsentationen
ABCD Data Provider Workshop Berlin - january 2004
Advertisements

OmsCube Objektverwaltung, basierend auf einem relationalen Datenbankmanagementsystem.
Object Relational Mapping
Object Relational Mapping
Object Relational Mapping (ORM). Objektmodell - Datenbankmodell.
Objektrelationales Mapping mit JPA Advanced Topics Jonas Bandi Simon Martinelli.
Transaction Synchronization for XML Data in Client Server Web Applications Stefan Böttcher & Adelhard Türling Universität Paderborn.
PL/SQL - Kurze Einführung -.
JPQL Java Persistence Query Language
Neue Mobilität Frank Prengel Developer Evangelist Developer Platform & Strategy Group Microsoft Deutschland GmbH
Microsoft Academic Program Datenzugriff mit Framework 2.0 Student Technology Conference 2005.
MySQL.
Dipl. Inf. (FH) Paul Mizel Compilerbau.NET Compiler / Codegeneratoren / Skriptsprachen.
Objektrelationales Mapping mit JPA Advanced Mapping Jonas Bandi Simon Martinelli.
Objektrelationales Mapping mit JPA Getting Started Jonas Bandi Simon Martinelli.
Zusammenfassung / Ausblick Persistente Domänenmodelle mit JPA 2.0 und Bean Validation.
Objektrelationales Mapping mit JPA Ausblick Jonas Bandi Simon Martinelli.
CC GIS Fachtagung... connecting worlds Geoservices internet Produkte und Dienstleistungen für das.
PL/SQL - Programmierung von Programmeinheiten. © Prof. T. Kudraß, HTWK Leipzig Gespeicherte Prozeduren – Eine Prozedur ist ein benannter PL/SQL Block,
ansprechendes Design Übersichtlichkeit simple(selbsterklärende) Navigation unsere Credos : design programming Ltd.
Oracle interMedia Audio Vortrag für das Seminar Oracle Zusatzoptionen Chris Haußmann.
Verteilte Transaktionen mit EJBs und JDBC 2.0
Uwe Habermann Venelina Jordanova VFP Code in Silverlight Anwendungen ausführen.
SQL PHP und MySQL Referat von Katharina Stracke und Carina Berning
Marcel Gnoth – Einer für alle – alle für einen! E3 Verteilte Transaktionen mit.NET-Komponenten.
Wir bauen uns eine Webapplikation!
Workflow Foundation Christian Binder
VS one Veranstalter: VSone Feb. 08 Folie 1 Copyright by XML-Serialisierung zur Persistierung von Objekten Thomas Schissler
Martin LöfflerMurat Yilmaz Labor Informationstechnologie.
Vergleich der verschiedenen kommerziellen Datenbanksysteme
FH-Hof Standard Query Language Richard Göbel. FH-Hof Geschichte der Sprache SQL System/R-Projekts von IBM zu Beginn der 70er Jahre: Entwicklung der Sprache.
© All rights reserved. Zend Technologies, Inc. Jan Burkl System Engineer, Zend Technologies Zend Server im Cluster.
Advanced Mapping Persistente Domänenmodelle mit JPA 2.0 und Bean Validation.
René Leupold IS Developer Comgate Solutions AG Entity Framework Ein Überblick.
Dariusz Parys Developer Evangelist Microsoft Deutschland GmbH.
Roger Boesch Developer Technical Specialist Developer and Platform Group.
Dominick Baier Security Consultant thinktecture. 2 Wir unterstützen Software-Entwickler und Architekten bei der Realisierung von.NET- und Web Services-Projekten.
3/28/2017 8:11 PM Visual Studio Tools für Office { Rapid Application Development für Office } Jens Häupel Platform Strategy Manager Microsoft Deutschland.
Dirk Primbs Developer Evangelist Microsoft Deutschland GmbH.
MVVM in Windows 8 und Windows Phone 8
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 5 Folie 2 ADO.NET s.a:
Windows Presentation Foundation, Vorlesung Wintersemester 2013/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 9 Folie 2 ADO.NET (1) Klassen für Zugriffe.
Uwe Habermann Venelina Jordanova Übernahme der Visual FoxPro Geschäftslogik.
Web Services Semistrukturierte Daten 1 – Gruppe 6.
Getting Started Persistente Domänenmodelle mit JPA 2.0 und Bean Validation.
1 Softwareentwicklung mit.NET Teil 5 Datenzugriff mit ADO.NET Dr. Ralph Zeller.
Client Server Architektur
Virtual Earth Visualisierung von Geodaten Daniel Walzenbach, Microsoft Deutschland GmbH
Template v5 October 12, Copyright © Infor. All Rights Reserved.
Erläuterung der wichtigsten Befehle
Jan-Cornelius Molnar Student Partner.
Softwaresponsoren Mediasponsoren. Vorstellung KnowledgeCenter Neue Sprachfeautres in VB 9.0 LINQ to SQL in der Praxis.
Making people work together! Folie 1 NEXPLORE AG Stefan von Niederhäusern Einfache Anwendung der SuisseID durch das Software Development KIT
Umzug ASP.NET-WebForms-Elemente in MVC weiterverwenden
Compiled Queries: LINQ-Abfragen mit Pegasus-Stiefeln © msg systems ag, August Gordon Breuer IT Consultant & Software Engineer Travel & Logistics.
Delivering new, powerful reporting solutions with open source BI
Die nächste Generation von Microsoft Office System 2007 Microsoft Office System Gernot Kühn Technologieberater Office System Mittelstandsbetreuung.
Torque in Turbine Team 3 Alexander Mittermair Michael Wesinger.
Torque in Turbine Team 4 Josef Bohninger Thomas Lindenhofer
Torque robert.resch-wolfgang.schneider. uebersicht Was ist Torque Komponenten von Torque Generator Erzeugte Klassen Methoden Torque in Turbine Demobeispiel.
Hibernate (OR-Mapping)
Thomas Claudius Huber Senior Consultant Trivadis AG WCF RIA Services Datengetriebene Apps.
RZPD Deutsches Ressourcenzentrum für Genomforschung GmbH DESPRAD-Meeting 02/09/2003 Steffen Schulze-Kremer (until 7/2003) Bernd Drescher (since 8/2003)
SQL Server 2005 CLR Integration Sebastian Weber Microsoft Deutschland GmbH
Sprachneuerungen des .NET Frameworks 3.5
O/R - Mapper Hibernate ETIS SS04. Hibernate 2 Gliederung Motivation Architektur Persistente Klassen Mapping-Files Konfiguration und Datenbanken Ablauf.
© 2012 TravelTainment Datenbankzugriffe in Java-Applikationen mit Hilfe des Spring Frameworks Simon Wirtz Seminarvortrag WS 13/14 Oktober 2013.
C# LINQ Funktionen höherer Ordnung. Allgemein ● Language Integrated Query ● Verfahren von Microsoft zum Zugriff auf Daten ● Hauptentwickler Erik Meijer.
Frank Schneede Senior Berater ORACLE Deutschland GmbH.
Datenbankanbindung in ASP
 Präsentation transkript:

ORMapper: NHibernate Henning Eiben

Die meisten Anwendungen drehen sich um Daten Klassischer Datenbankzugriff – ConnectionString – SQL oder Stored Procedures – ADO.Net DataSet, Command-Objekte, … ORMapper: NHibernate2

ORM Anwendungen drehen sich Geschäftsobjekte nicht um Tabellen ORM – Konvertieren von Tabellen zu Objekten – Weniger Code – Abstraktion ORMapper: NHibernate3

Funktionsweise Datenbank – MS-SQL, SQLLite, Oracle, MySQL, … Konfiguration – XML, FluentNHibernate (API) Geschäftsobjekte – Poco ORMapper: NHibernate4

ORMapper: NHibernate5 Demo

Vorteile Einheitliches Paradigma für Datenzugriffe Keine wiederkehrenden Arbeiten Skalierbarkeit, Integrität, Abstraktion ORMapper: NHibernate6

XML-Konfirugation 1/2 NHibernate.Driver.SqlClientDriver Server=(local);initial catalog=NorthWind;Integrated Security=SSPI 10 true NHibernate.Dialect.MsSql2008Dialect true 60 true 1, false 0, yes 'Y', no 'N' NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle ORMapper: NHibernate7

XML-Konfiguration 2/2 <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="NHibernate3" namespace="NHibernate3.Entities" default-lazy="true" default-access="property"> ORMapper: NHibernate8

var configuration = new Configuration(); configuration.Configure(); configuration.AddAssembly(typeof (Customer).Assembly); _sessionFactory = configuration.BuildSessionFactory(); using (var session = _sessionFactory.OpenSession()) using (var tx = session.BeginTransaction()) { var customers = from mycustopmer in session.Query () where mycustopmer.Id == "ALFKI" select mycustopmer; customerList.DataSource = customers; customerList.DataBind(); tx.Commit(); } ORMapper: NHibernate9

Fluent Konfiguration 1/2 var fluentConfiguration = Fluently.Configure().Database(MsSqlConfiguration.MsSql2008.ConnectionString(c => c.Database("Northwind").Server("localhost").TrustedConnection() ).ShowSql() ).Mappings(m => m.FluentMappings.AddFromAssemblyOf ()); ORMapper: NHibernate10

Fluent Konfiguration 2/2 public class CustomerMapping : ClassMap { /// /// Initializes a new instance of the class. /// /// Initializes a new OR-Mapping. public CustomerMapping() { Table("Customers"); Id(customer => customer.Id).Column("CustomerID").GeneratedBy.Assigned(); Map(c=>c.Name).Column("CompanyName"); } ORMapper: NHibernate11

Features Abfragen – HQL – Criteria API – LINQ Transaktionen … ORMapper: NHibernate12

ORMapper: NHibernate13 Demo

Queqies: LINQ var customers = from mycustomer in session.Query () where mycustomer.Id == "ALFKI" select mycustomer; ORMapper: NHibernate14

Queries: HQL var customers = session.CreateQuery("from Customer where Id='ALFKI'").List (); ORMapper: NHibernate15

Queries: Criteria API var customers = session.CreateCriteria ().Add(Expression.Eq("Id", "ALFKI")).List (); ORMapper: NHibernate16

Verweise ORMapper: NHibernate17

Danke Henning Eiben /MSN: ICQ: # ORMapper: NHibernate18