Is Hibernate an overkill for an Android application?

JavaAndroidPerformanceHibernate

Java Problem Overview


I'm looking for a good ORM for my android application and at first glance it seems like for a mobile device I would prefer to use something simpler maybe. The thing is I'm just assuming here with no real evidence, so I thought I would ask the community's opinion (maybe there's is someone that has been through the experience). It is a fairly large(for mobile) application and will be run on a dedicated tablet.

What does everyone else think ? Is Hibernate too much for an android application ? Will there be performance problems ?

What would you use instead if you think it is too much ?

I am aware there are other questions asking for alternatives, but I decided to ask since most of those questions simply assumed it was an overkill and asked for other options and I started wondering "Is it really and overkill ? Why ?" Due to my lack of experience I simply think it it, but can't really provide an answer if I'm asked to explain why. Is it performance ? Is it too much configuration (Which I don't mind) ?

Thanks!

Java Solutions


Solution 1 - Java

I'd like to recommend my ORMLite package. It was designed to be much less heavy compared to Hibernate (and iBatis). I think that Hibernate is too much for Android applications -- especially considering the size of the code and the number of dependencies.

The Android port of ORMLite makes direct calls to the Android database API. A number of applications have been delivered using ORMLite successfully.

Hibernate provides a number of features that cannot be supported by the Android database calls so you will be paying for complexity that you cannot even use. I'm also not sure it has a native Android backend. Using SQLite over JDBC is not officially supported by Android and I was unable to get it to work reliably.

Solution 2 - Java

Solution 3 - Java

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionbluediapenteView Question on Stackoverflow
Solution 1 - JavaGrayView Answer on Stackoverflow
Solution 2 - JavaSebastian RothView Answer on Stackoverflow
Solution 3 - JavaMatt BallView Answer on Stackoverflow