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

惠州​Java中JPA字段映射之混合标记_北大青鸟IT学校

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


导读:之前惠州北大青鸟老师给大家分享了​Java中JPA字段映射的标记属性getter方法,下面我们一起来学习​Java中JPA字段映射的混合标记,希望对大家学习Java有帮助。

之前惠州北大青鸟老师给大家分享了Java中JPA字段映射的标记属性getter方法,下面我们一起来学习Java中JPA字段映射的混合标记,希望对大家学习Java有帮助。

使用 JPA,我们可以标记字段和 getter 方法。

以下代码来自 Professor.java。

package cn.w3cschool.common;


 import javax.persistence.Access;

 import javax.persistence.AccessType;

 import javax.persistence.Column;

 import javax.persistence.Entity;

 import javax.persistence.Id;

 import javax.persistence.Transient;


 @Access(AccessType.FIELD)

 @Entity

 public class Professor {

   public static String LOCAL_AREA_CODE = "999";

   @Id

   private int id;

   @Transient

   private String phoneNum;


   public int getId() {

     return id;

   }


   public void setId(int id) {

     this.id = id;

   }


   public String getPhoneNumber() {

     return phoneNum;

   }


   public void setPhoneNumber(String num) {

     this.phoneNum = num;

   }


   @Access(AccessType.PROPERTY)

   @Column(name = "PHONE")

   protected String getPhoneNumberForDb() {

     if (null != phoneNum && phoneNum.length() == 10)

       return phoneNum;

     else

       return LOCAL_AREA_CODE + phoneNum;

   }


   protected void setPhoneNumberForDb(String num) {

     if (num.startsWith(LOCAL_AREA_CODE))

       phoneNum = num.substring(3);

     else

       phoneNum = num;

   }

 } 

下面的代码来自 PersonDaoImpl.java。

package cn.w3cschool.common;


 import javax.persistence.EntityManager;

 import javax.persistence.PersistenceContext;


 import org.springframework.transaction.annotation.


Transactional;

 @Transactional public class PersonDaoImpl {

   public void test() {


     Professor emp = new Professor();

     emp.setId(1);

     emp.setPhoneNumber("123456789");

     em.persist(emp);


   }

   @PersistenceContext

   private EntityManager em;

 }

Table Name:

 PROFESSOR  Row:

     Column Name: ID,

     Column Type: INTEGER:

     Column Value: 1


     Column Name: PHONE,

     Column Type: VARCHAR:

     Column Value: 999123456789

想了解更多关于Java的资讯吗?可以来惠州北大青鸟新方舟校区了解一下。

java4.png

Java

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


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