Problemet er ikke Hibernate! – 1 – 2



Problemet er ikke Hibernate! – 1 – 2

0 0


ProblemetErIkkeHibernate

Presentasjon på BEKK fagdag 30.08.2013

On Github skytteren / ProblemetErIkkeHibernate

Problemet er ikke Hibernate!

Problem er

Stein Kåre Skytteren

@skskytteren

http://isitdown.no

Hvorfor?

Case

Web applikasjoner

Stepping Stones by Rich Jacques, on Flickr

1

Hello World!

HTML

index.html

<h1>Hello world</h1>

2

Makeup by Scripter81, on Flickr

CSS

Twitter Bootstrap

+/-

3

GET

Søk

Lister

Rammeverk

Web

Janelas de Porto Seguro / Porto Seguro's windows by Alex Joukowski, on Flickr

Null tull / Neandertal

  • Socket
  • HTTP
  • Servlet
  • JSP

Tilstandsløs / Dement

  • Struts 1 & 2
  • Ruby on Rails
  • Spring MVC
  • Play

Tilstandfull / Tjukk i hue

  • JSF
  • Wicket
  • Liftweb

Smellfeit med REST / Lobotomert

  • Angular.js
  • Batman.js
  • Backbone.js

3...

GET

Rammeverk +/-

4

CRUD

Sider

  • Utlisting
  • Ny
  • Les
  • Endre
  • Slette?

DB

How to Make a Tin Can Man by www.WorthTheWhisk.com, on Flickr

SQL / NoSQL

TX

A Transaction @ Saidapet Market by nkumarm, on Flickr

Siste vinner

Versionering / Optimistisk lås

Lås/Lange transaksjoner

Operational transformation

DB Rammeverk

None / JDBC

Mapper

  • Spring Framework JDBC
  • Slick

ORM

  • Hibernate
  • JPA

Hibernate

States

Transient Persistent Detached

LazyInitializationException - no Session

  • Open Session in View - Spring
  • hibernate.enable_lazy_load_no_trans=true   - Hibernate 4.1.7 +

Frankenstein

Implicit save

try catch

IKKE STM

DI Rammeverk

  • SpringFramework
  • Guice

4..

CRUD

Rammerverk +/-

Web - DI - DB

5

Rik Interaksjon

Saksbehandling

CV - Registrering

Rammerverk +/-

Web - DI - DB

6

Event-storm

Chat

Push notification

Rammerverk +/-

Web - DI - DB

Lær deg greiene!

Rammerverk +/-

Web - DI - DB

Skriv rammeverk!