dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #00735
Re: My branch
>
> We have many threads talking on easy installation, maintenance, porting to
> different environments, etc. What is the rational to move out of hibernate?
> Hibernate provides complete control and maintenance of underlying database.
> Can you imagine if someone in the field installs DHIS2 or upgrades and there
> are database schema changes? I don't think he will succeed if we are not
> using hibernate. iBATIS does not this, JPA does not, moreover they are
> database dependent, especially iBATIs. If we decide to go iBATIS, it is not
> good idea, than it becomes type of javascript, kill bug for mySql, kill bug
> for Postgress, H2, H3, H365. Here is some research done:
> http://seasar.javaeye.com/blog/233951.
>
> Sorry that I am talking to much but to honest we should make decisions that
> give long term solutions. Spring (AOP, DI, Security), Hibernate, MySQL,
> Struts2 or Spring MVC are well integrated, tons of documwentations. I am SQL
> and SP guy, but still feel hibernate is perfect solution for DHIS2 context.
> We have very few experts in the field and maintenance becomes a bottleneck
> if we don't use hibernate. We should learn and improve hibernate, make its
> performance faster.
>
I completely agree with you. I think Hibernate is doing a very good job for
us and I have no intention of moving away from it.
Why I made the comment on moving persistence code into a separate project is
to improve the design and benefit from our layered design; it is good design
to be able to switch it even if we don't want to do it:)
>
>
>
> Other thing I want to point here is use of @nnotations. If we manage to
> implement all this, we have to write POJOs, say @Entity, @Secured, @Audited
> and thats all. We have many blueprint marks, which fall into this category,
> type of general consideration, which IMHO should be discussed and decided in
> combination (Spring Hibernate, Spring Security...).
>
These are exiting features. These annotations are general for Java 5 right?
In that case the code will stay unaware of which persistence framework is
being used. My argument of being dependent of Hibernate is then invalid.
Follow ups
References