Title: LIBeLIS
1LIBeLIS
- JDO verleiht Flügel
- Enterprise Information Access
- Scalable, robust JDO solutions
- JDO Just Do Objects !
- Alexander v. Zitzewitz
- alexander.zitzewitz_at_libelis.com
- ? info_at_libelis.com
- ? www.libelis.com
2Business Card
- Enterprise Information Access Vendor
- Founded in 2000
- by experts in DBMS and J2EE technologies
- Worldwide operations
- Direct operations in UK, Germany and France
(Spain) - Distributed in USA Canada
- Investors
- First funding round in November 2002
- Strong commitment to Java standards
- Member of the Java Community Process (JCP)
- Active Member of the JDO Expert Group
- Charter Member of JDOCentral
- Board Member of the ObjectWeb consortium
3LiDO
- LiDO Flagship product
- NAViLIS as a side-product (eBusiness browser)
- FileDB a light fast 100 Java embedded DB
- First JDO 1.0 implementation
- Enterprise level, scalable, robust JDO
implementation - Production ready
- Available since July 2001
- gt25.000 downloads worldwide
- Very active community
4The JDO standard
- Java Data Objects
- The new specification for Java object persistence
from Sun
5JDO
- The Java standard for data access
- Final Approval in March 2002
- Main contributors
- Sun, IBM, BEA, Oracle, SAP ... LIBeLIS
- O/R mapping tools vendors ODBMS vendors
- Does not replace but complement JDBC and EJB
- Goals
- Transparent persistence
- Not intrusive in Business Objects
- Universal Data Access
- RDBMS, ODBMS, binary, XML, text, Legacy,
applications, TP monitors, MOM... - Independant deployment
- Java level embedded J2ME, client-server J2SE,
distributed J2EE - Might be embedded within in a future JDK release
- Books
6JDO programming
- LiDO from the developer point of view
- Transparent data access with full Java support
7LiDO Object model no restriction
No need for any javax.jdo import
- public class Employee extends Person
- public String name
- private java.util.Date birthday
- private int salary
- public Company company
- public IActivity activity
- Vector awards
- public void bonus(int more)
- salary more
-
Inheritance
Interfaces
Collections
No need for accessors / mutators
This is a persistent class ! If you can write it
in Java, any JDO engine should store it.
8LiDO build cycle
any JDO enhancer
source code
byte code
javac compiler
byte code
Mapping (xml file)
LiDO
java JVM
- Enhancement is fully defined by the JDO spec.
- Enhanced byte-code is portable across JDO
implementations - Enhanced byte-code remains the same for any data
source - Allows debugging and profiling (JPDA)
- Allows fully transparent persistence
9Programming with LiDO
LiDO
?
?
Business objects
Application objects
Fully Transparent (no JDO calls)
Some explicit JDO calls
- Navigation between objects
- Data manipulation in Java
- Automatic data mapping
- Client cache, object identity
Java VM
() in a J2EE context, connections and
transactions are managed by the application
server itself !
10JDO within an Enterprise Application design
- LiDO from the architect point of view
- Efficient Enterprise Information Access
11How LiDO complements J2EE
JSP
Any Data Source
Session
Entity
Java
Entity Bean LiDO
Does not scale (even CMP 2) Efficient persistence layer
RDBMS centric Universal, any data source
Limited object support Full Java
High deployment costs Infra-structure independant
High development costs Straight Java classes
JDO is already perceived as one of the most
critical Java extensions as it perfectly
complements J2EE !
12LiDO JSP/Servlet application
JVM
LiDO PersistenceManager pool
Shared Read Cache
PersistenceManager
Any rdbms
JDBC
Applic. objects
Write object
versant
vsnt apis
Read object
PersistenceManager
Other data
JSP Server
Read object
Write object
JSP Servlet
13LiDO EJB application
JVM
LiDO PersistenceManager pool
EJB Server
Any rdbms
JDBC
Entity Bean BMP
Shared Read Cache
PersistenceManager
versant
Write object
vsnt apis
Session Bean
Other data
Read object
PersistenceManager
JSP Server
Read object
Write object
JSP Servlet
14LiDO Distributed caches
JVM
LiDO PersistenceManager pool
EJB Server
Session Bean
Shared Read Cache
PersistenceManager
Vsnt apis
Write object
Versant
JSP Server
JDBC
Read object
JSP Servlet
PersistenceManager
Any rdbms
JVM
Other data
LiDO PersistenceManager pool
EJB Server
Session Bean
Shared Read Cache
PersistenceManager
Vsnt apis
Write object
JSP Server
JDBC
Read object
JSP Servlet
PersistenceManager
15LiDO Design
- Universal Scalable
- JDO Implementation
JDO Just Do Objects !
16LiDO architecture
JDO implementation Transaction, JDO QL, State
Manager
Specification implementation
Caches, Dual Query Engine, JCA Connection pool,
...
Core technology
Storage Managers
Data source dependant layer
RDBMS
ODBMS
Binary files
...
The only JDO solution that is more than just
another O/R mapping tool !
17JDO Demo
- LiDO Live !
- It doesnt only run on
- PowerPoint ?
18LiDO Delivers
- 20 to 50 LESS source code to write
- Typical number of lines within the business
object models used to store and retrieve these
objects 30 and this may increase should your
model be complex. - Significant Performance Improvements
- 5 to 40 times faster than EJB CMP
- Significant Reduction of complexity
- No modelling restrictions
19LiDO Delivers
- Reduced development time
- Fully transparent standard mapping
- Enterprise Information Access
- Allows on the fly change of storage technology
- Transparent switch from ODBMS to RDBMS or
vice-versa - Full usage of Business Object Design
- Without any interference from deploying
technologies - No restrictions
- Enterprise Class Performance
- Allows actual deploying of J2EE critical business
apps
20LiDO Benefits
- Investment Protection
- Mapping of existing schemas from RDBMS. New
applications can be build using existing data and
databases. - Better use of skills
- Isolation of Java code from any DBMS aspects
allows Java developers to focus on their Object
Model and Database specialists to tune the
application without any Java knowledge. - Faster Feedback from Users
- Automatic generation of a GUI from the Business
Object Model so that users can get a feeling of
the future application and give feedback within
minutes.
21Conclusion
- Too Good to be True ?
- Do not trust us
- just Download and Check it out !
- www.libelis.com
- EMail alexander.zitzewitz_at_libelis.com
- Trust our Customers
- Societe Generale, France Telecom, Orange, CARDIF,
SANOFI, Raytheon, FGM, Rothschild Bank, CRIL,
LineData Services