Version 1

    The information provided below is an acknowledgement from actual developers that Hibernate was used on the projects/applications listed. This information should not be construed as a formal endorsement or backing by the company mentioned. We provide this information because we believe Hibernate to be a solid product and would like to see it continue to grow and gather momentum within the Java community. Developer email addresses can be optionally provided and those wishing can contact them directly. However, support type questions should be posted to the Hibernate forum and said developers are under no obligation to answer support or any other request.

     

    Click Edit in the Member Menu left-hand side to add your project. We request you to please ensure that you enter only authentic information.

    Thanks for your contribution!


    << Page 1


     

    Phoload, free mobile software download portal, Brighton, UK.

    Hibernate versions used: Hibernate Core 3.2.x

    Overall rating of Hibernate: Very good indeed. I would happily recommend it to others.

    Short description about project or app: Phoload (http://www.phoload.com) is a web portal which offers free-to-download mobile games and apps that have been uploaded to the site by mobile software developers. As well as downloading, users of the site can rate, review and recommend the mobile software.

    Product or App challenges: Create an extremely high performance read mostly community-based website.

    Why Hibernate was selected, what were the other options considered: We had previously worked on a project in which the object mode had become compromised/anemic due to the object/relational mismatch. For this project, we wanted to have a single, fully object orientated version of our domain model. Also, we wished to avoid having to write much of the SQL ourselves. Other ORMs were considered, as was iBATIS SQL Maps. Hibernate was chosen because it fulfilled almost all of our needs from the outset, and it appeared (and has proved to be) very extensible. Hibernate’s popularity and the size of its user base were also positive factors.

    Development & production environment (IDE, App Server, DB): Eclipse & UltraEdit, Tomcat, Mysql

    Length of learning curve to fully understand: From no previous ORM experience, attaining a good working knowledge of Hibernate took about a fortnight with help from the excellent 'Java Persistence with Hibernate' book. A deeper understanding of its workings and the best optimisation strategies emerged over a few months.

    Most significant problem or issue faced: Optimising our app to be as fast as possible for read-only requests. Ideally, we would have liked further options for optimising read only behaviors in Hibernate. Some kind of read only session would be great, as well as a cache of shared instances for reference data. But as Hibernate has many convenient extension points, we were able to build much of this functionality on top of Hibernate pretty easily (e.g. using calls from a Hibernate interceptor to expire elements from an external cache of detacted objects etc.).


     

    Spider Strategies, spiderstrategies.com, Washington, DC, USA

    Hibernate versions used: 2.x, 3.x

    Overall rating of Hibernate: Hibernate has excellent documentation and a very stable, bug-free implementation. We've only found 1 very obscure bug in years of using Hibernate and it was fixed within hours of us reporting it.

    Short description about project or app: Spider Strategies' Corporate Management Suite (CMS) allows large organizations to track key metrics, add corrective actions, and manage overall business strategy. Using proven tools like Dashboards and Balanced Scorecards, CMS provides critical performance data in real-time. The software is used throughout industry and government, including organizations as diverse as Starbucks Canada, the US Army, and the University of California San Francisco. More information is available here.

    Product or App challenges: Our software has to support MySQL, Oracle and SQL Server. We also wanted the ability to add additional databases easily. Hibernate abstracts out the differences between databases so that we usually don't have to worry about writing separate code for separate databases. Another big challenge for us was performance because we store and display large amounts of numeric data. Hibernate's caching and documentation of performance optimization techniques made performance tuning our application much simpler than it would have been with raw SQL queries.

    Why Hibernate was selected, what were the other options considered: Hibernate was selected because of its performance, maturity, database support and excellent documentation. We also considered EJB, OJB, Torque and JDO.

    Development & production environment (IDE, App Server, DB): Eclipse, Apache Tomcat, Oracle, MySQL and SQL Server

    Length of learning curve to fully understand: Hibernate code is very easy to understand and modify with little or no Hibernate training. An intermediate understanding of Hibernate only takes a couple days to achieve. Advanced users will find that Hibernate has so many capabilities that they will continue learning about Hibernate for years.

    Most significant problem or issue faced: We encountered a major performance problem using the Hibernate cache outside a transaction. Unfortunately this issue is still unresolved. Please post a comment to the issue, HHH-1311, if you are having similar problems in your application.


    ++Molecular Microbial and Structural Biology Department, Farmington, CT.

    Hibernate versions used: 3.1

    Overall rating of Hibernate: Excellent - auto generation of code for bioinformatics applications is simply the only option, given the rapidly changing landscape in science.

    Short description about project or app: An integration of several Biological databases

    spanning everything from the human genome to protein structure and functionality annotations.

    Product or App challenges: Rapidly changing data models in the biological sciences make maintaining the dao layer difficult. Also - getting the cache to work in hibernate can be tricky without propert RTFM methodologies.

    Why Hibernate was selected, what were the other options considered: There is simply no other way to generate a solid biological API given the vast amount of

    interconnectivity in biological information systems. Estimates regarding the amount of energy spent on DAO code easily can reach the 50% mark in terms of development effort and lines of code. Hibernate builds a better DAO then is possible by hand.

    Names and emails (optional) of developers who were involved with Hibernate coding:

    Jay Vyas jayunit100@gmail.com

    /*Development & production environment (IDE, App Server, DB):*/Eclipse

    How was Hibernate introduced (prototype written, full bore, limited, etc..): Prototype

    Length of learning curve to fully understand: Long until the JBOSS plugin came out and then the learning curve was short !

    Most significant problem or issue faced: Problems involving session management for large batch loads in a client side, data intensive application.


     

    3ºDigital, Fortaleza/CE/Brasil

    Hibernate versions used: 3.2

    Overall rating of Hibernate: Excellent

    Short description about project or app: Systens for ONGs, First Software is one Parthnership manager, with name SGAP (sgap.dev.java.net), Second Software is one Tecnical Service Manager for Micro Companies.

    Product or App challenges:

    Why Hibernate was selected, what were the other options considered:

    - Castor --> seems too poor for our needs

    - JDO ---> too young ? not mature enough

    - Toplink --> equivalent to Hibernate in terms of functionality but proprietary solution. And we don't knew very well.

    - Self made solution --> too complexe to code

    Names and emails (optional) of developers who were involved with Hibernate coding:

    java@carlosdelfino.eti.br - Carlos Delfino

    Development & production environment (IDE, App Server, DB): Eclipse, JBoss, MySQL or Other!

    How was Hibernate introduced (prototype written, full bore, limited, etc..):

    Length of learning curve to fully understand: 2 weeks

    Most significant problem or issue faced:


     

    Auchan International Technology

    Hibernate versions used: 1.2.5, 2.0, 2.1.2,3.x

    Overall rating of Hibernate: Excellent

    Short description about project or app:

    - Running in production for small and medium size backoffice and commercial apps

    - working on an important project currently on progress (critical app,complex domain model, high availability and short response time required ...)

    Product or App challenges:

    - Integration of an ORM in our framework located on the DAO layer

    - For simplification purpose, possibility to use 1 session per HttpRequest or 1 session per HttpSession depending of the business layer (eg: this business needs a longer transaction...)

    Why Hibernate was selected, what were the other options considered:

    - Castor --> seems too poor for our needs

    - JDO ---> too young ? not mature enough

    - Toplink --> equivalent to Hibernate in terms of functionality but propietary solution.

    - Self made solution --> too complexe to code

    Names and emails (optional) of developers who were involved with Hibernate coding: Anthony Patricio (apatricio@auchan.com), e-development team

    Development & production environment (IDE, App Server, DB): Eclipse, Tomcat

    (might use others...), Oracle 8i

    How was Hibernate introduced (prototype written, full bore, limited, etc..):

    A protype was implemented to study the solution

    - Understanding hibernate session

    - How to use CRUD methods

    - threadlocal strategy

    - long transactions via storing hibernateSession into HttpSession

    - we also have "isolated" the data access (and so hibernate) on a DAO layer, we

    have coded different factories...

    - stress tests of the prototype (with or without cache, with or without intelligent mapping <--> lazy loading..., with 1 2 or 4 tomcats...)

    Length of learning curve to fully understand: 3 weeks to cover the basics, 6

    weeks to learn and apply the advanced features

    Most significant problem or issue faced: HibernateSession management (per httpRequest, ThreadLocalSession)


     

    CodeStreet LLC, www.codestreet.com

    Hibernate versions used: 2.1

    Overall rating of Hibernate: Excellent

    Short description about project or app: Distributed trading system with a classic 3-tier architecture. C# client, Java backend, and Oracle database.

    Product or App challenges: Reduce database-centric development, allow C#/Java objects to be seamlessly distributed between the client and backend.

    Why Hibernate was selected, what were the other options considered: Feature set and cost were primary criteria. References from Hibernate users made it a prime candidate. Alternative strategies considered were JDBC and commercial tools liek TopLink.

    Development & production environment (IDE, App Server, DB): Visual Studio .NET for client (C#), Eclipse, custom Java server, JMS for distribution, Springframework, Oracle.

    How was Hibernate introduced (prototype written, full bore, limited, etc..): Small prototypes to validate basic functionality following by full-scale development.

    Length of learning curve to fully understand: 3-4 weeks.

    Most significant problem or issue faced: Getting a good grasp of collections,HQL, lazy loading, and caching.


     

    ID.on GmbH, http://www.id-on.de (Germany)

    Hibernate versions used: 1.2.x and 2.x

    Satisfaction: We are now using hibernate for more than one year inside our applications and our satisfaction is 100%. In this time we do not had any data losses and our customer integrated our product into his publishing framework. There are also hort range plans to do a release for more companies within the same sector (book publishing).

    Overall rating of Hibernate: Excellent, very intuitive and flexible to learn and to use. We tried also JDO implementations and missed there the flexibility of hibernate. By using beans we also added beans property change listeners, so we could intergrate by this way a swing interface to our database easilly.

    Short description about project or app: Distributed book metadata system with a central server which is accessible by RMI and an XML servlet for german publishing houses. One of our customers has also some bestselling books in his programme, so you could say: Bestselling books are technically powered by Hibernate. Result of our work can be visited presently on over 20 domains, main web domain is: http://www.knaur.de

    Product or App challenges: Reduce direct database development, allow Java objects to be seamlessly distributed between the client and backend, give possibility to choose the underlying database if needed (Oracle and Interbase are on the way)

    Why Hibernate was selected, what were the other options considered: Primery criteria was flexibility. We also tried several JDO implementations and Intesystems Cachee, but hibernate was the winner in the planing process.

    Development & production environment (IDE, App Server, DB): J2EE Servlet Engines (Caacho resin, Tomcat), IDEAJ, MYSQL

    How was Hibernate introduced (prototype written, full bore, limited, etc..): Small object prototypes, excessive tests with millions of transactions, erd model implementation, testing, swing & xml object binding, release

    Length of learning curve to fully understand: five work days

    Most significant problem or issue faced: Undestanding of documentation and relations, choise of caching strategies

    Names and emails of developers who were involved with Hibernate coding:

    Andreas Bednarz: bednarz@id-on.de (http://www.id-on.de)

    Update: After running hibernate for more than one year without any problems we decided to move also to xwork/webwork and have also improved session handling and performance by factor 3. You can visit our company and take a deeper look inside our products at Frankfurt Bookfair (Frankfurter Buchmesse) in October 2004 (stand 4.2 G445), in Frankfurt, Germany. http://www.frankfurt-book-fair.com/en/portal.php

    Screenshots PONDUS (October 2003): http://www.id-on-service.de/mpdbh/

    Screenshots MAIL MODULE (September 2004): http://www.id-on.de/clients/pondus-mailing/pondus-mailing.pdf


     

    Development gateway Foundation,  http://www.developmentgateway.org

    Hibernate versions used: 2.x

    Overall rating of Hibernate: Excellent. Very transparent and powerful.

    Short description about project or app: Multisite portal framework in J2EE. http://www.digijava.org

    Product or App challenges: No support for flexible recaching of cached data, especially - queries. Query recache, usually, runs for a while. Hibernate should use cached version during that time and seamlessly swap over the new value, when cached.

    Why Hibernate was selected, what were the other options considered: We considered lots of different open-source tools for the same but Hibernate is, without any doubt, the most flexible, powerful and transparent (!). Transparency and power was the deciding factor. Great support, documentation and large community, too.

    Names and emails of developers who were involved with Hibernate coding: Mikheil Kapanadze, mikheil at powerdot dot org, Irakli Nadareishvili, inadareishvili at dgfoundation dot org.

    Development & production environment (IDE, App Server, DB): Eclipse, JBoss, Oracle+MySQL+PostgreSQL

    How was Hibernate introduce (prototype written, full bore, limited, etc..): prototype written.

    Length of learning curve to fully understand: 2-4 weeks.

    Most significant problem or issue faced: Not very flexible query cache management.


     

    TeraMedica Healthcare Technologies, Milwaukee, WI.

    Hibernate versions used: Various versions for different product releases. 2.1.8 is currently used for production deployments. 3.0.5 is used in development and will be part of our next product release.

    Overall rating of Hibernate: Excellent - love the documentation and community!

    Short description about project or app: Enterprise digital medical image management system. Manages up to petabytes of image data in an intelligent fashion, with unmatched performance and scalability.

    Product or App challenges: The main challenge with our product (Evercore) has been to maintain the necessary performance and scalability, while dealing with an ever-increasing volume of imaging data. Note that this extends beyond just radiology and cardiology - encompassing the entire healthcare enterprise. Hibernate offers many tools to help us meet this challenge with regards to database transactions.

    Why Hibernate was selected, what were the other options considered: Hibernate was selected because of a) performance, b) transparency (able to use existing domain model), c) ease of use, and d) cost. Other options considered were a homegrown persistence framework, OJB, and TopLink.

    Names and emails (optional) of developers who were involved with Hibernate coding: Damien Evans, Doug Stelpflug, Justin Falk, Matt Kampmeier.

    Development & production environment (IDE, App Server, DB): Eclipse, customized internal application server, database depends on deployment - either Oracle 9i or PostgreSQL 8.x.

    How was Hibernate introduced (prototype written, full bore, limited, etc..): Functionality was prototyped with the frameworks under consideration.

    Length of learning curve to fully understand: The learning curve was relatively small, since we had a fair amount of experience with O-R mapping and similar frameworks. It took about a month to have a very good handle on Hibernate as a team.

    Most significant problem or issue faced: Evercore is a highly concurrent system, so it took some trial and error to handle StaleObjectExceptions and versioning correctly in all possible cases.


     

    Innovation Gate GmbH, Germany.

    Hibernate versions used: 2.1.4.

    Overall rating of Hibernate: Great and easy to use persistence framework. Absolutely enterprise grade.

    Short description about project or app: Content Management System that stores content in relational databases.

    Product or App challenges: While previous versions of our software did only store in proprietary Lotus Domino Databases the biggest challenge for us was maintaining the document oriented view of our software while offering the option to store in a relational database. Therefor, using an object/relational mapper was a must.

    Why Hibernate was selected, what were the other options considered: Mainly because of it's popularity, Hibernate was our first option, since popularity always means that there are many resources to use if we get into problems. HQL played a role since we needed extensive object-oriented query mechanisms.

    Names and emails (optional) of developers who were involved with Hibernate coding: Oliver Weise (ow@innovationgate.de)

    Development & production environment (IDE, App Server, DB): Websphere Studio App Developer 5.1, Tomcat 5, Websphere App Server 5, FirebirdSQL, MySQL, DB2.

    How was Hibernate introduced (prototype written, full bore, limited, etc..): A "proof-of-concept"-Implementation of the (app-internal) database interfaces was written.

    Length of learning curve to fully understand: The most complicated part is the mapping document. Important to note that the complexity here is not from hibernate but from the object/relational subject itself. Definitely pays out to read the mapping documentation at whole and thoroughly to prevent problems later on. The usage of the java API itself is very simple. So, the learning curve is a little steep when beginning to think about O/R-mapping, then quite flat. Length depends on complexity of the individual mapping problem.

    Most significant problem or issue faced: Lockups of database servers on certail HQL queries over manoy-to-one-relations. Could be avoided by a small code modification.


     

    QCouples.com, USA

    Hibernate versions used: 2.1.4.

    Overall rating of Hibernate: Great and easy to use persistence framework. Absolutely enterprise grade.

    Short description about project or app: A gay and lesbian community portal and dating service.

    Product or App challenges: We wanted our webapplication to support most of the databases in the market and yet wanted full ant integration with the object persistance layer we were going to use .

    Why Hibernate was selected, what were the other options considered: Mainly because of it's popularity, Hibernate was our first option, since popularity always means that there are many resources to use if we get into problems. Other known options did not have documentation as much as Hibernate and what good is a software without some basic documentation. Also time to learn Hibernate was resonable .

    Names and emails (optional) of developers who were involved with Hibernate coding: Raj Nukala

    raj_nukala(at)hotmail.com

    Development & production environment (IDE, App Server, DB): Tomcat 4.1.24, Appache , Sapdb, our applicatio is running on a Ensim based shared hosting environment and uses different opensource libraries . application was developed using the following technologies

    Sitemesh ,Webwork, xfig, hibernate, velocity, apache commons.

    Build Environment : Eclipse IDE, xdoclet, ant

    How was Hibernate introduced (prototype written, full bore, limited, etc..): From start to finish.

    Length of learning curve to fully understand: The most complicated part is the mapping document. Important to note that the complexity here is not from hibernate but from the object/relational subject itself. Definitely pays out to read the mapping documentation at whole and thoroughly to prevent problems later on. The usage of the java API itself is very simple. So, the learning curve is a little steep when beginning to think about O/R-mapping, then quite flat. Length depends on complexity of the individual mapping problem.

    Most significant problem or issue faced: Creating hbm files , Need better GUI based round trip tools .. Wish we had ddl2hbm2java tools working .. when app was written we tried the tools but there were hibernate version compatablities .. generated code needed further modification for Hibernate 2.1


     

    Valtira

    Hibernate versions used: Hibernate 1.X/2.X

    Overall rating of Hibernate: Why would you use anything else?!

    Short description about project or app: Rolecall is a cross-platform framework that provides authentication and access control services for web applications. Because it is built upon industry standard web services, Rolecall is able to support single sign-on for applications independent of the platform on which they were built. Rolecall treats both J2EE and .NET applications as equal citizens which enables you to have a single sign-on in mixed environments.

    Why Hibernate was selected, what were the other options considered: Hibernate works much better than EJBs for cross-container compatibility.

    Development & production environment (IDE, App Server, DB): IDEA of course, nearly every application server and DB, we have a cross-container needs for our application.

    How was Hibernate introduced (prototype written, full bore, limited, etc..): Full bore integration, started with version 1.0 and needed something that would work easily between application servers.

    Length of learning curve to fully understand: Week or two. One of the best documented open-source projects.

    Most significant problem or issue faced: Facade management integration between sessions with caching.


     

    NECTIA Stgo Chile, Chile  - La PLata, Argentina

    Hibernate versions used: 2.1.6

    Overall rating of Hibernate: Exelent

    Short description about project or app: Lot of bussines application from diferentes companys like retail, bancking, gov, etc.

    Product or App challenges: There can be a huge number of objects with complex relations and it could be dificult to implement it's persistence in a effecient way .

    Why Hibernate was selected, what were the other options considered: Beacause its easy to use, very powerfull

    Names and emails of developers who were involved with Hibernate coding: info@nectia.cl

    Carlos Yaconi, cyaconi@gmail.com, Santiago Urrizola (surrizola@hotmail.com), Alfonsina Chesini (achesini@hotmail.com)

    Development & production environment (IDE, App Server, DB): Development & Production

    Websphere, Oracle AIS (OC4j) , Tomcat, Eclipse, Oracle, Db2, Mssql server, Sybase.

    How was Hibernate introduce (prototype written, full bore, limited, etc..):

    Full integration, the whole system was migrated when we released a new version of our software and we created some migration process for switching previous versions from JDO to Hibernate automatically.

    Length of learning curve to fully understand: very easy to understand de framewoek (less than 2 weeks).

    Most significant problem or issue faced: Problems with some complex querys, and integration with multiple data base in the same project.


     

    Software engineering community portal, journal - e-Informatyka.pl, Wroclaw University of Technology, Wroclaw, POLAND

    Hibernate versions used: Latest stable (2.1.x)

    Overall rating of Hibernate: Excellent product.

    Short description about project or app: The application is software engineering community portal with full e-journal/review articles functionality based on light J2EE and XML technologies with conversion engines: MS Word conversion to XML (DOC2XML), LaTeX conversion to XML (LaTeX2XML).

    Product or App challenges: Implement the maintainable and scalable application.

    Why Hibernate was selected, what were the other options considered: Beacause its easy to use and powerfull.

    Names and emails (optional) of developers who were involved with Hibernate coding:

    Development & production environment (IDE, App Server, DB): Eclipse, Cocoon, Tomcat/Jetty, MySQL/PostgeSQL.

    How was Hibernate introduced (prototype written, full bore, limited, etc..): Full integration

    Length of learning curve to fully understand: A few weeks.

    Most significant problem or issue faced: Nothing special in this project.


     

    Quad One Technologies Pvt. Ltd., Hyderabad, India

    Hibernate versions used: Latest stable (2.1.x)

    Overall rating of Hibernate: Excellent product.

    Short description about project or app: MediPulse, An Integrated Hospital Information Management system. The application is an Integrated Hospital Information Management System built using HL7, HIPAA and other health care related standards. Takes care of most of any Entprise Hospital Information Management Requirements.

    Product or App challenges: Implement a maintainable, customizable and scalable application. Customizability was one of the prime requirements, because despite standards no two hospitals have the same information structure.

    This system was expected to be deployed at a hospital with more than 500 beds and more than 800 OP patient encounters each day with billing, diagnostics, pharmacy, inventory and stores integrated into the system.

    This kind of scalablity would have been very difficult without Hibernate for our team, maintaining it productively with hand coded SQL would have been close to impossible.

    Why Hibernate was selected, what were the other options considered: Beacause its easy to use, powerful and provided an ability to customize database schema, object model and UI Model at design time to suite customers requirements, taking care of 70 - 80 % of customization effort. Hibernate mapping with some innovative code generation tools for our specfic requirements and an IDE like eclipse to take care of refactoring, reduced the customization time drastically.

    Names and emails (optional) of developers who were involved with Hibernate coding:

    sarath (at) quadone (dot) com

    Development & production environment (IDE, App Server, DB): Eclipse, JBoss, Oracle/MySQL/PostgeSQL.

    How was Hibernate introduced (prototype written, full bore, limited, etc..): Started with a single module prototype and then spread the use of hibernate througout. The interim release used Hibernate mapping created from existing schema. Then developers started modifying the Mapping to suite changed schema requirements.

    We are very happy to note that over the past one year our application has been used to process more than 200000 patient records and associated, appointment, bills, diagnostic tests, pharmacy issues, inventory status reports, etc.

    Length of learning curve to fully understand: A few weeks.

    Most significant problem or issue faced: None.


     

    Integer Software Solutions,Bangalore,India

    Hibernate versions used: Hibernate 2.1.x

    Overall rating of Hibernate: Excellent

    Product or App challenges: complete redesign of a legacy application. The application were to be brought in-house within 6 to 7 months

    Why Hibernate was selected, what were the other options considered: countless flexibilities, simplicity, and popularity. Easy to use . Alternative to EJB. rapid development

    Development & production environment (IDE, App Server, DB): Eclipse , Jboss , PostgreSQL

    How was Hibernate introduced (prototype written, full bore, limited, etc..): I created sample apps to get a feel for this new object model instead of the relational. Once I realize the time-saving values of Hibernate I started to integrate it in our dev efforts.

    Length of learning curve to fully understand: Took about 1 month since it was my first attempt at ORM. The hard part was to trust Hibernate to handle the relational constructs automatically and concentrate only on the object models.

    Most significant problem or issue faced: Understand when to use collections and how to handle lazy initialization. Once I started to think in terms of object modeling, these issues went away. Trusting Hibernate to generate the needed relationships. Once you let go of the relational model, and embrace the Object model, Hibernate works fine.


     

    R.O.S.A. Creation. Technology. Intelligence. AG Zürich, Europe

    Hibernate versions used: 2.1.4

    Overall rating of Hibernate: We started with Hibernate to implement our persistence layer to save time

    Short description about project or app: We are working on a service oriented architecture for our services business.

    Product or App challenges: There is a learning curve...

    Why Hibernate was selected, what were the other options considered: We changed from IBM Data access beans to JDBC and then to Hibernate. We changed to Hibernate because it is well documented and supported through the open source scene.

    Names and emails of developers who were involved with Hibernate coding: Marky Goldstein, ready@rosa.com

    Development & production environment (IDE, App Server, DB): Development & Production (Tomcat, Mysql 4.0.x , RedHat Linux 9.0 )

    How was Hibernate introduce (prototype written, full bore, limited, etc..):

    Struts

    Length of learning curve to fully understand: 2 months including implementation change.

    Most significant problem or issue faced: Well, we would prefer to get even more graphical modelling and mapping tools.


     

    Online Commons, an Open Source Development Project

    hosted at the Tigris incubator: http://online-commons.tigris.org/

    Hibernate versions used: [2.x,..., 3.01]

    Overall rating of Hibernate: Excellent Plus

    Short description about project or app: Powerful tools for the organizing, searching, viewing of information within a collaborative framework.

    Product or App challenges: For those unfamiliar with O/R or OO databases, learning curve can be steep, but worth the effort. For those with familiarity, or a even a solid relational DB + Java experience, its a breeze. Integration into a component based architecture was easy.

    Why Hibernate was selected, what were the other options considered: O/R mapping was chosen to keep SQL out of the code, greatly reduce persistent storage related development, and to maximize use of POJO. A tiny utility set in an abstract service class to encapsulate session, transaction related, and the basic persistence related operations was created, so that code-to-functionality ratio with Hibernate is superb. Hibernate was selected over other options because it is a robust Open Source, O/R Mapping and persistence layer, that is popular (plenty of supporting community and documentation), and extremely powerful and flexible.

    Names and email of developers who were involved with Hibernate coding: See: http://online-commons.tigris.org/ for other contacts

    Development & production environment (IDE, App Server, DB): Development & Production Tomcat, Struts, HSQLDB, Hibernate, Lucene, Eclipse IDE, Java

    How was Hibernate introduced (prototype written, full bore, limited, etc..): Tiny amount of experimental coding followed by full integration from the start of new development, (along with all other system components listed above).

    Length of learning curve to fully understand: Approx. 2 months for those with no familiarity with similar components, 2-3 weeks otherwise, although a deep understanding of the full range of extensive functionality could take longer, one is able to begin to use Hibernate immediately with little effort for typical minimum O/R mapping and persistence, and then add increased utilization of features as development progresses.

    Most significant problem or issue faced: Nice to have Object Oriented runtime tools and more modeling and visualization support so that the underlying RDBMS or relational database could be as invisible as possible.


     

    Authentisoft

    Hibernate versions used: Hibernate 3

    Overall rating of Hibernate: 10 out of 10!

    Short description about project or app:

    Authentisoft  (http://www.authentisoft.com) develops an identity management and Single sign-on (SSO) framework, dubbed Identity Exchange - IDX. With IDX, you will be able to utilize your existing J2EE application server, enterprise database and user repositories such as Active Directory, Sun ONE, Open Directory and OpenLDAP.

    Why Hibernate was selected, what were the other options considered:

    We have used Hibernate for several years, it's the best solution available.

    Development &amp; production environment (IDE, App Server, DB):

    IntelliJ IDEA, Orion/Tomcat, MySQL/HSQL/Postegres.

    How was Hibernate introduced (prototype written, full bore, limited, etc..):

    Several versions have been used in the past. This solution was used full bore from the start.


     

    GTD, Santiago of CHILE (http://www.grupogtd.com)

    Hibernate versions used: Hibernate 3.1

    Overall rating of Hibernate: 10 out of 10!

    Short description about project or app:

    Project:  Facilities of an important company of telecommunications.

    Why Hibernate was selected, what were the other options considered:

    We have used Hibernate later to evaluate diverse framework of persistence.

    Development &amp; production environment (IDE, App Server, DB):

    Techonology: Struts, EJB (Session), Hibernate, Oracle 9i.

    Tools: Eclipse 3.1 + plugin lomboz + plugin Hibernate Tools 3.1 alpha 5, Enterprise Architech, Visual Source Safe (Version Control), middlegen.

    Application Server: JBoss 4.0.2 by Linux.

    Use Pattern: Business Delegate, Facade, Factory, DAO, DTO, VO.

    Methodology: Unified Process.

    Notation Modelling: UML 1.5.

    How was Hibernate introduced (prototype written, full bore, limited, etc..):

    full bore.

    Length of learning curve to fully understand: Approx. 2.5 months for those with no familiarity with similar components, one is able to development to use Hibernate immediately with little effort for typical minimum O/R mapping and persistence, and then add increased utilization of features as development progresses.

    Most significant problem or issue faced: Instability of the tools: Middlegen and the Hibernate Tools 3.1 alpha 5.

    Architect of Software: Cristian Rossel Moraga.

    Programmer: Javier Mandiola Ovalle.


     

    Classifieds.pl, Warsaw, Poland Polska Strefa

    Hibernate versions used: 3

    Overall rating of Hibernate: 11/10

    Short description about project or app:

    Project:  Important polish classified ads portal.

    Why Hibernate was selected, what were the other options considered:

    To simplify parts of Java code

    Development &amp; production environment (IDE, App Server, DB):

    Techonology: Cocoon, Tomcat, PostgreSQL

    Tools: Eclipse 3.1, Subversion

    Application Server: Tomcat5 by Linux.

    How was Hibernate introduced (prototype written, full bore, limited, etc..):

    prototype written.

    Length of learning curve to fully understand: 1 month to learn and make decision.

    Most significant problem or issue faced: Nothing special.

    Programmer: Grzegorz Tańczyk.


     

    OrangePics, Nova Scotia, Canada

    Hibernate versions used: 3.1 with Annotations

    Overall rating of Hibernate: Excellent

    Short description about project or app: Simple, Safe Photo Sharing is our slogan. The OrangePics website allows people to create their own website and share their pictures with information stored about them in a searchable database.

    Product or App challenges: Time and money!

    Why Hibernate was selected, what were the other options considered: Way back when, I had started to use Apache OJB as I was an Apache/Jakarta fan, then I tried Castor JDO and finally I saw the way after seeing hibernate pop up on many forums and web pages. Turns out it was super easy to adopt and allowed me to think in a Java OO way.

    Development & production environment (IDE, App Server, DB): My Eclipse IDE, Tomcat, PostgreSQL, Struts, Lucene, and ROME.

    How was Hibernate introduced (prototype written, full bore, limited, etc..): We used Hibernate from the ground up. We used to create tables then generate objects and DAOs using Hibernate Synchronizer but it's not really around any more. We're slowly switching over to Hibernate Annotations.

    Length of learning curve to fully understand: 1 week for basic stuff, slowly learned more advanced stuff.

    Most significant problem or issue faced: Sharing one hibernate session for an entire request. We have lots of servlet filters and forwards

    Programmer: Chris Brown & Bill Doane


     

    Sensys, Florianópolis, Santa Catarina, Brazil

    Hibernate versions used: 3.1 without Annotations

    Overall rating of Hibernate: Excellent

    Short description about project or app: The ODYSSEA application is a powerful tool for enterprise project management, developed to take care of the necessities of companies that develop software projects.

    Product or App challenges: Time, money and the learning curve...

    Why Hibernate was selected, what were the other options considered: Initially used EntityBeans with CMP, but we found some difficulties in development that made us research about other possibilities. Hibernate facilitated persisting objects. We discovered Hibernate and never stopped using it since then.

    Development & production environment (IDE, App Server, DB): Eclipse IDE, JBossAS, PostgreSQL, XDoclet, JBossIDE, Swixml and OS Linux(Slackware and Unbutu).

    How was Hibernate introduced (prototype written, full bore, limited, etc..): Small object prototypes, model implementation, testing, swing & xml object binding, release

    Length of learning curve to fully understand: 1 Month for basic stuff and integration with XDoclet, slowly learned more advanced stuff. (since 2003 and still learning...)

    Most significant problem or issue faced: Difficulties to find document about the best pratice for use Hibernate in complex architecture and large graph of objects, e.g. using hibernate with DTO pattern.

    Programmer: Wilson Nazareno de Almeida & Oswaldo Cavalcanti Dantas Junior


     

    LIFIA, La PLata, Buenos Aires, Argentina

    Hibernate versions used: 3.1 without Annotations

    Overall rating of Hibernate: Excellent

    Short description about project or app:

    Product or App challenges: Time, money learning curve, flexibility.

    Why Hibernate was selected, what were the other options considered: Flexibility, performance, scalability, extensibility. Try: Castor, Toplink, JDO (e7)

    Architect of Software: Santiago Urrizola - Alfonsina Chesini


     

    GPI Argentina, La PLata, Buenos Aires, Argentina

    Hibernate versions used: 0.7, 1.0, 1.8, 2.1, 3.1 without Annotations

    Overall rating of Hibernate: Excellent, the best orm mapping in the market

    Short description about project or app: Banking, finacnes, government, portals,etc.

    Product or App challenges: Time, money, lic., open source, learning curve, flexibility, performance, integration.

    Development & production environment (IDE, App Server, DB): Eclipse IDE, JBossAS, Oracle Orion, Tomcat, Websphere,  Oracle, MySQL, DB2, DB2-AS400, Sybase, OS Linux, AS-400 Unix, Solaris.

    How was Hibernate introduced (prototype written, full bore, limited, etc..): since release .07

    Length of learning curve to fully understand: 1 week for basic stuff and 2 month for advanced and integration

    Most significant problem or issue faced: Complex object relations, and big ammounts of data.

    Programmer: Santiago Urrizola - Alfonsina Chesini

    Architect of Software: Santiago Urrizola (surrizola [at] gpi[dot]com[dot]ar) - Alfonsina Chesini


     

    masterDIESEL, Austria

    Hibernate versions used: 3.2 without Annotations

    Overall rating of Hibernate: Excellent

    Short description about project or app: outsources in-house fuelling facility management.

    Product or App challenges: Time, money, easy adoption

    Development & production environment (IDE, App Server, DB): Eclipse IDE, Tomcat, Windows, Linux

    How was Hibernate introduced (prototype written, full bore, limited, etc..): since the beginning

    Length of learning curve to fully understand: prior experience

    Most significant problem or issue faced: Complex object relations, lazy-loading with presentation level

    Programmer: Robert Schnabl

    Architect of Software: Robert Schnabl (r.schnabl [at] masterdiesel[dot]com) - Robert Schnabl


     

    Mogul, Sweden

    Hibernate versions used: Hibernate Core 3.2.5.ga, Hibernate Annotations 3.3.0 GA,    Hibernate EntityManager 3.3.1, Hibernate Search 3.0.0 GA

    Overall rating of Hibernate: Excellent

    Short description about project or app: Several web application using Hibernate for managing domain model and Hibernate Search for adding search capabilties. One of the sites is a Swedish search service for services - Gajdo

    Product or App challenges: Combining ORM with the power of a free text search engine like Lucene.

    Why Hibernate was selected, what were the other options considered: Hibernate is the most advanced ORM tool currently and the decision to use it for the domain model was easy. Initially we then tried to write all the bioler plate code for combining Hibnernate with Lucene, for example the mapping glue from managed objects to Lucene documents. This turned to be a lot of work and once we decided to try Hibernate Search the LOC count reduced almost 50%.

    Names and emails (optional) of developers who were involved with Hibernate coding: hardy@ferentschik.de - Hardy Ferentschik

    Development & production environment (IDE, App Server, DB): Eclipse, Tomcat 5.5, Apache OpenMQ, PostgreSQL

    How was Hibernate introduced (prototype written, full bore, limited, etc..): From the beginning.

    Length of learning curve to fully understand: 2 months

    Most significant problem or issue faced: Complex object relations


     

    PowerReviews.com, Creator of the Buzzillions.com product reviews website, San Francisco, California. (http://www.powerreviews.com)

    Hibernate versions used: 3.0

    Overall rating of Hibernate: Excellent!

    Short description about project or app: Online product reviews and recommendations site.

    Using Hibernate with EHCache makes these pages with tons of hits really fast:

    Product or App challenges: Create a high performance, highly flexible website framework for delivering a consumer facing product reviews website

    Why Hibernate was selected, what were the other options considered: We chose it in 2005 as well. It was better than writing all of our SQL by hand. having a book and active forums was a big plus. We use it coupled with ehcache which delivers some great performance.

    Development & production environment (IDE, App Server, DB): Intellij IDEA, Tomcat 5.5, Postgres 8.1.8

    Length of learning curve to fully understand: It was new to some and old hat to others but fully understanding laziness, etc was a couple months as we kept developing more and more complicated apps.

    Most significant problem or issue faced: The Criteria API didn't enough of what we needed.