广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

惠州分享JPA嵌入式ID实例_北大青鸟IT学校

作者:邓华发布时间:2021-05-06分类:Java技术浏览:818


导读:上一篇文章惠州北大青鸟老师给大家分享了JPA嵌入式ID,那么下面老师给大家分享JPA嵌入式ID的实例,希望对大家学习Java有帮助。

上一篇文章惠州北大青鸟老师给大家分享了JPA嵌入式ID,那么下面老师给大家分享JPA嵌入式ID的实例,希望对大家学习Java有帮助。

实例

以下代码来自Professor.java。

package cn.w3cschool.common;

import javax.persistence.EmbeddedId;
import javax.persistence.Entity;

@Entitypublic class Professor {
 @EmbeddedId  private ProfessorId id;  private String name;  private long salary;  public Professor() {
 }  public Professor(String country, int id) {
   this.id = new ProfessorId(country, id);
 }  public int getId() {
   return id.getId();
 }  public String getCountry() {
   return id.getCountry();
 }  public String getName() {
   return name;
 }  public void setName(String name) {
   this.name = name;
 }  public long getSalary() {
   return salary;
 }  public void setSalary(long salary) {
   this.salary = salary;
 }  public String toString() {
   return "Professor id: " + getId() + " name: " + getName() + " country: " + getCountry();
 }
}

以下代码来自ProfessorId.java。

package cn.w3cschool.common;

import java.io.Serializable;

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

@Embeddablepublic class ProfessorId implements Serializable{  private String country;

 @Column(name = "EMP_ID")  private int id;  public ProfessorId() {
 }  public ProfessorId(String country, int id) {
   this.country = country;
   this.id = id;
 }  public String getCountry() {
   return country;
 }  public int getId() {
   return id;
 }  public boolean equals(Object o) {
   return ((o instanceof ProfessorId) && country.equals(((ProfessorId) o).getCountry()) && id == ((ProfessorId) o)
       .getId());

 }  public int hashCode() {
   return country.hashCode() + id;
 }
}

下面的代码来自PersonDaoImpl.java。

package cn.w3cschool.common;


import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

import org.springframework.transaction.annotation.Transactional;

@Transactionalpublic class PersonDaoImpl {  public void test(){
   
   Professor emp = new Professor("US", 1);
   emp.setName("Tom");
   emp.setSalary(1);
   em.persist(emp);
 }
 @PersistenceContext  private EntityManager em;
}

以下是数据库转储。

Table Name: PROFESSOR
Row:
   Column Name: COUNTRY,
   Column Type: VARCHAR:
   Column Value: US

   Column Name: EMP_ID,
   Column Type: INTEGER:
   Column Value: 1

   Column Name: NAME,
   Column Type: VARCHAR:
   Column Value: Tom

   Column Name: SALARY,
   Column Type: BIGINT:
   Column Value: 1

点击咨询直接了解更多相关资料,我在惠州北大青鸟新方舟等你。

java5.png

Java

标签:惠州计算机JAVA软件开发惠州计算机Java软件开发惠州计算机JAVA培训惠州计算机JAVA软件开发学校惠州计算机Java软件开发培训JAVAJava软件开发北大青鸟IT计算机学校北大青鸟IT软件学校北大青鸟IT学校


Java技术排行
标签列表
网站分类
文章归档
最近发表