Blog

Handling Exceptions in Java

We can handle exceptions using the try-catch-finally construct or explicitly tell as being handled elsewhere through the use of throws clause in that method signature.

The try-catch-finally block will look as below:

try{

//Some code that can throw IOException

}

catch(Exception ex)

{

//do some workaround.

Java 7 New Exception Features - Multicatch Exceptions and Try with Resources

Java 7 introduces few new features to the exception handling mechanism. We will discuss them quickly here.

 

Java 7 Multi-Catch Exceptions

With java 7, you can catch multiple exceptions using a single catch block as:

    try {

      File file = new File("filename.txt");

      Scanner sc = new Scanner(file);

      throw new SQLException();

    }

    catch (FileNotFoundException | SQLException e) {

Querying Using Criteria API in Hibernate 4.3

Hibernate provide Criteria Queries as an object-oriented alternative to HQL. Criteria Query is used to modify the objects and provide restriction for the objects. Many complex queries in HQL or even SQL may become larger over a period of time and spread over many lines; and will be difficult to update and maintain. We have already seen HQL in http://javajee.com/introduction-to-hibernate-query-language-hql-in-hibernate-43.

Named Queries in HQL with hibernate 4.3

We can have queries saved with a name and later we can retrieve them simply using that name. We use @NamedQuery annotation to declare a named query. We can also have a named query for native sql. For native SQL we use the annotation @NamedNativeQuery annotation. This is one of the important advantages of having a named query: you can write native SQL. You can retrieve a Query object from a saved query name (hql and native named query) using session.getNamedQuery method.

Parameter Binding in HQL using hibernate 4.3

Parameter binding is the process of binding a Java variable with an HQL statement. Using Parameter binding and not string concatenation for HQL statement creation will also guard against attacks like SQL injection.

Introduction to Hibernate Query Language (HQL) in hibernate 4.3

Hibernate provides a query language called Hibernate Query Language (HQL). HQL is similar to SQL in syntax, but HQL queries are written against Hibernate's entity objects, not database tables. Hibernate also provide Criteria Queries as an object-oriented alternative to HQL. Criteria Query is used to modify the objects and provide the restriction for the objects. Here we will see the basics of HQL and later in another tutorial we will see criteria queries.

Inheritance Strategies in Hibernate 4.3

Hibernate uses following strategies for saving an inheritance hierarchy of classes created in Java to the databases: SINGLE_TABLE, TABLE_PER_CLASS and JOINED.  

We can use @Inheritance annotation over the entity class to specify the inheritance strategy.

We specify the inheritance strategy by assigning a strategy from the InheritanceType enumeration to the strategy parameter of the @Inheritance annotation.  

[Example-Lab] Joined Inheritance Strategy in Hibernate 4.3

In the JOINED strategy, hibernate will create a separate table for all the classes in an inheritance hierarchy, and the tables are normalized. Columns that you receive as part of inheritance will be part of parent class and referred from subclass tables using a foreign key. 

In this example, we will create and save three entity classes – Shape, Rectangle and Circle; where Rectangle and Circle extends from Shape.

[Example-Lab] Table Per Class Inheritance Strategy in Hibernate 4.3

In the TABLE_PER_CLASS strategy, hibernate will create a separate table for all the classes in an inheritance hierarchy. It is still not normalized completely as inherited columns are repeated in all tables. For instance, Fields inherited from Shape such as id and fillcolor are repeated in all the tables.

In this example, we will create and save three entity classes – Shape, Rectangle and Circle; where Rectangle and Circle extends from Shape.

[Example-Lab] Single Table Inheritance Strategy in Hibernate 4.3

In the SINGLE_TABLE strategy, hibernate will create a single table for all the classes in an inheritance hierarchy. There will be a discriminator column that tells us the class to which that row belongs.

In this example, we will create and save three entity classes – Shape, Rectangle and Circle; where Rectangle and Circle extends from Shape.

Pages

Search the Web

Custom Search

Searches whole web. Use the search in the right sidebar to search only within javajee.com!!!