Total members 9951 | Gratitudes |It is currently Sat Feb 11, 2012 10:58 am Login / Join Codemiles


All times are UTC [ DST ]




Post new topic Reply to topic  Quick reply  [ 1 post ] 
Author Code Snippet
 Code subject: @Embeddable entity and @AttributeOverrides
PostPosted: Mon Apr 26, 2010 1:00 pm 
Offline
Mastermind
User avatar

Joined: Tue Mar 27, 2007 10:55 pm
Posts: 2103
Location: Earth
Has thanked: 39 time
Have thanks: 56 time

Following example show you how to use @AttributeOverrides within your entities when you have @Embeddable entity. In the is example Transformation entity is an @Embeddable.Embeddable class is a part of entity .Fields of embeddable class are mapped to the table of the owning entity.

Follow the example below :
Code:

package com
.codemiles.jpa;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Embedded;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;
import javax.persistence.Table;
 
@Entity
@Table(name="SHAPE")
@
Inheritance(strategy=InheritanceType.TABLE_PER_CLASS)
public class Shape implements Serializable{
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    @Id
    protected int id
;
    @Embedded
    protected Transformation transformation
;
    protected String colour;
    protected String points;
    protected int numOfPoints;
    
    public Shape
(){
    id=(int)System.currentTimeMillis();
    }
    @Column(name="SHAPE_ID")
    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }
 
 
    
@Column(name="POINTS")
    public String getPoints() {
        return points;
    }

    public void setPoints(String points) {
        this.points = points;
    }

    public void setColour(String colour) {
    this.colour = colour;
    }
    @Column(name="COLOUR")
    public String getColour() {
    return colour;
    }
    public void setNumOfPoints(int numOfPoints) {
    this.numOfPoints = numOfPoints;
    }
    @Column(name="NUM_POINTS")
    public int getNumOfPoints() {
    return numOfPoints;
    }
    public Transformation getTransformation() {
        return transformation;
    }
    public void setTransformation(Transformation transformation) {
        this.transformation = transformation;
    }
}

 



Code:

package com
.codemiles.jpa;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Embedded;
import javax.persistence.Entity;
import javax.persistence.Table;

@
Entity
@Table(name="CIRCLE")
public class Circle extends Shape implements Serializable{
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    protected float radius; 
    
@Embedded
    
@AttributeOverrides( {
        @AttributeOverride(name="scale", column=@Column(name="CIR_SACLE")),
        @AttributeOverride(name="rotate", column=@Column(name="ROT_SACLE"))
    })
    protected Transformation transformation;

    
    public Circle
(){
    super();
    numOfPoints =;
    
    
}


    public void setRadius(float radius) {
    this.radius = radius;
    }

    @Column(name="RADIUS")
    public float getRadius() {
    return radius;
    }

  public Transformation getTransformation() {
        return transformation;
    }
    public void setTransformation(Transformation transformation) {
        this.transformation = transformation;
    }

}
 



@Embeddable class :
Code:

package com
.codemiles.jpa;

import javax.persistence.Column;
import javax.persistence.Embeddable;

@
Embeddable
public class Transformation 
{
    protected int scale;
    protected float rotate;

    @Column(name = "SCALE")
    public int getScale() {
    return scale;
    }

    public void setScale(int scale) {
    this.scale = scale;
    }

    @Column(name = "ROTATE")
    public float getRotate() {
    return rotate;
    }

    public void setRotate(float rotate) {
    this.rotate = rotate;
    }
}

 

_________________
Currenlty programming with : java , html , php , and javascript . (OCJP-6 certified )


TOP
 Profile Send private message  
Reply with quote  
Post new topic Reply to topic Quick reply  [ 1 post ] 
Quick reply


  


 Similar topics
 Topic title   Forum   Author   Comments 
 secondary table per entity  JPA  msi_333  0
 Get all objects for an entity  JPA  msi_333  0
 Find entity by id  JPA  msi_333  0
 create a named query within entity class  JPA  msi_333  0
 @EntityListeners in your entity class  JPA  msi_333  0

All times are UTC [ DST ]


Users browsing similar codes

Users browsing this forum: No registered users and 1 guest



Jump to:  
Previous Code Snippet | Next Code Snippet 




Home
General Talks
Finished Projects
Code Library
Games
Tutorials

Java
C/C++
C-sharp
php
Script
JSP/Servlets
Ajax
ASP/ASP.net
Google SEO
Database
Communications
Phpbb3 styles
Photoshop tutorials
Flash tutorials
Find a job






Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
All copyrights reserved to codemiles.com 2007-2011
mileX v1.0 designed by codemiles team