Archive for May, 2014

When to use DiscriminatorValue annotation in hibernate /solving optimistic lock problem

OptimisticLock problemini cozmek icin OptimisticLockType.NONE annation kullanildi.

When to use DiscriminatorValue annotation in hibernate

To understand discriminator, first you must understand the inheritance strategies: SINGLE_TABLE, JOINED, TABLE_PER_CLASS.

Discriminator is commonly used in SINGLE_TABLE inheritance because you need a column to identify the type of the record.

Example: You have a class Student and 2 sub-classes: GoodStudent and BadStudent. Both Good and BadStudent data will be stored in 1 table, but of course we need to know the type and that’s when DiscriminatorColumn will come in.

@org.hibernate.annotations.Entity(dynamicInsert = true, dynamicUpdate =false,optimisticLock=OptimisticLockType.NONE)
public class ElectronicInfrastructureServiceElementImpl extends ProductInfrastructureServiceElementImpl {
private static final long serialVersionUID = 1L;

public ElectronicInfrastructureServiceElementImpl() {

public ElectronicInfrastructureServiceElementImpl newModelInstance() {
return new ElectronicInfrastructureServiceElementImpl();


, ,

Leave a comment