/* * Hibernate, Relational Persistence for Idiomatic Java * * License: GNU Lesser General Public License (LGPL), version 2.1 or later. * See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>. */ package org.hibernate.test.annotations.manytoonewithformula; import java.io.Serializable; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.ManyToOne; import org.hibernate.annotations.JoinColumnOrFormula; import org.hibernate.annotations.JoinFormula; /** * @author Sharath Reddy */ @Entity public class Message implements Serializable { private static final long serialVersionUID = 1L; private int id; private String languageCode; private String languageName; private Language language; @Id @GeneratedValue public int getId() { return id; } public void setId(int id) { this.id = id; } @Column(name="lang_code") public String getLanguageCode() { return languageCode; } public void setLanguageCode(String val) { this.languageCode = val; } @Column(name="lang_name") public String getLanguageName() { return languageName; } public void setLanguageName(String val) { this.languageName = val; } @ManyToOne @JoinColumnOrFormula(formula=@JoinFormula(value="UPPER(lang_code)")) //@JoinColumnOrFormula(formula=@JoinFormula(value="(select l.code from Language l where l.name = lang_name)")) public Language getLanguage() { return language; } public void setLanguage(Language language) { this.language = language; } }