- Since hibernate generates lots of SQL statements at runtime so it is slower than pure JDBC.
- Hibernate is not much flexible in case of composite mapping. This is not disadvantage since understanding of composite mapping is complex.
- Hibernate does not support some type of queries which are supported by JDBC
- Boilerplate code issue, actually we need to write same code in several files in the same application, but spring eliminated this.
- Not good for small project. (Small project will have less number of tables , introducing entire Hibernate framework will be overhead than useful)