- Hibernate Interview Questions
Java Hibernate framework has become the go-to framework across all programming communities. This latest development in the programming industry requires all those who wish to procure jobs in this field to be well versed with these developments. Hibernate is now one of the most widely used tools for developing Java applications. If you are a novice and are looking for a more stable job then you must keep up with the following top Hibernate interview questions.
Hibernate interview questions
These are some of the most commonly asked questions and are a must-know for anyone who has an upcoming interview.
1. What is Hibernate?
Hibernate is one of the most well-known Java frameworks. Its main purpose is to create database-based apps. Hibernate is essentially an OMR or object-relational mapping tool. One of its most-loved features is that it portrays database as objects which save developers a lot of time. It also has inbuilt object mapping which enables apps to function better by reducing the number of lines of codes.
Hibernate is free software and that adds to its popularity. It provides facilities such as data query and retrieval and generates SQL calls.
2. List some advantages of using the Hibernate framework?
- Hibernate provides facilities that create a table automatically.
- It is wholly object-oriented.
- It is distributed for free and is lightweight too.
- Hibernate is not dependent on database thus making it easier for users to work on any database they prefer.
3. What is OMR in java?
OMR stands for object-relational mapping and is a technique used for mapping the object stored in a database. It helps in data creation, manipulating it and accessing it without any difficulty. It designs two concepts namely object-oriented and relational.
4. List a few different technologies supported by hibernate?
- X DOCLET SPRING
5. List a few important interfaces of hibernate?
- Query and criteria
6. What do you understand by the one-to-many association in hibernate?
The one-to-many association is a kind of associate mapping. In it, you can associate one object with several other objects. This kind of mapping is executed with the help of a set java collection which is without any surplus element.
7. Tell us about some fetching strategies supported by hibernating?
- Batch fetching
- No proxy fetching
- Lazy attribute fetching
- Subselect fetching
- Immediate fetching
- Select fetching
- Join fetching
8. State some differences between Hibernate and JPA?
JPA is an interface whereas Hibernate is an implementation of JPA. Hibernate provides JPA. JPA is basically used for the management of relational data.
9. Mention a few annotations used for Hibernate mapping?
10. What do you mean by hibernate Session Factory?
SessionFactory class used for sessions objects.SessionFactory is not lightweight and therefore gets created at the start of the application and kept to be used later. In the case of multiple databases, the same number of SessionsFactory objects will have to be created.
11. State one difference between OpenSession and getCurrentSession?
OpenSession method is used for opening a new session. Once you are done with all database operations you have to close these session objects.
getCurrentSession method needs to be configured in the Hibernate configuration file. Also, it is not required to be explicitly closed; unlike the open session method; getCurrentSession gets closed automatically as you close the session object.
12. List the key components of a Hibernate configuration file?
There are 2 main key components-
- Class mapping setup
- Database connection
13. Name some collection types in Hibernate?
The 5 collection types in Hibernate are as follows-
14. Explain the use of show_sql in Hibernate?
There is a build –in-function which enables all SQL statements to get logged at the console. This function is the most helpful for troubleshooting functions.
15. Name the two types of collections in Hibernate?
The two types of collections in Hibernate are –sorted and order.
16. Could you explain the use of catching in Hibernate?
Catching in Hibernate has the function to enable your application to run without halts. It makes it run at a much quicker pace. It does so by reducing the number of queries required to run the application successfully.
17. List 2 benefits of using Hibernate template?
- The sessions close automatically.
- Provides different methods to data from database.
18. what are POJOs? What is their use in Hibernate?
Plain old Java object is the full form of POJO. POJOs are not form or shape bound. They cannot be bound in any manner. And so the code provided by POJOs is more non-restricted than in any other java class. Ad thus it is more advantageous to use them.
19. What are the design patterns used in hibernate framework?
- Data mapper
- Factory pattern
- Domain model
- Proxy pattern
20. How many object states are there in hibernate?
There are 3 types of object states –
21. Briefly explain the use of dialect in Hibernate
Dialect is used to define the kind of database in hibernate. This helps hibernate in generating the apt kinds of SQL statements.
22. Explain what dirty checking is in hibernate?
The dirty checking feature allows users and programmers to save their time by preventing write actions. All objects get monitored by hibernate and it calls for updates on all those objects that have been updated or modified. This process IS termed as dirty checking.
23. Define light object mapping?
Light object mapping can prove to be helpful in cases with applications with fewer entities or metadata-driven data models.
24. how many stages of persistent entity exist?
- Transient- it is not related to the hibernate session.
- Persistent-when a transient instance is associated with a session it becomes a persistent instance.
- Detached-persistent instance gets converted into a detached instance after the hibernate session gets closed.
25. What do you know about query cache?
Query cache is a separate cache level in hibernate that is solely used to store query results.it is used jointly with the hibernate second-level cache.
26. Explain the difference between lazy and eager loading in hibernate?
Lazy loading object is unable to retrieve data after the session closed statement. It is a design pattern that is used to hold over the initialization of an object for as much time as possible. Eager loading on the other hand offers no such deferring of objects to take place as all initialization occurs on the spot.
27. Is hibernate configure file necessary?
No, it is not mandatory to use Hibernate configure file.
28. What do you mean by annotation in Hibernate?
If you plan on using Hibernate annotations then you won’t be required to use XML file. Therefore annotations can be used as replacements of XML mapping metadata.
29. State one difference between first and second level cache in Hibernate?
The session-level maintains the first level cache while the second level is maintained at the sessionFactory level.
30. What is the difference between save and saveOrUpdate method?
saveOrUdate option also allows you to insert as well as update records whereas the save option allows you to only insert records.
31. Explain the working of proxy?
Hibernate fetches data and populates the object whenever a method gets invoked on the object. This is what proxy mechanism means in hibernate.
32. Is hibernate faster than JDBC?
JDBC (1) always gives better faster and performance than hibernate.
These were some of the most asked hibernate interview questions for beginners as well as experienced developers and programmers. These Hibernate interview questions will present you with an idea of what is generally expected of you and you may also use this knowledge to work upon other questions pertaining to Hibernate.