Friday, 28 June 2013

JLab13 : Table Per Class Inheritance Mapping

Steps :
1. Create a Java Application with name : JLab13
2. Add JPA Capabilities
3. Copy & Edit Persistence Classes & Util classes from ALab10, as per need.
4. Copy & Edit the Client code from ALab10, as per need.

Follow the directory structure as the following image :

1. Util.java
Same as JPAUtil.java of JLab3

2. A.java
Same as ALab10

3. B.java
Same as ALab10

4. C.java
Same as ALab10

5. D.java
Same as ALab10

6. E.java
Same as ALab10

7. L13.java
package com.persistence;
import javax.persistence.*;
import com.util.Util;
public class L13 {
public static void main(String[] args) {
EntityTransaction tx = null;
try{
EntityManagerFactory sf = Util.getSF();
EntityManager s = sf.createEntityManager();
tx = s.getTransaction();
tx.begin();
A a = new A("A");
B b = new B("B","B");
C c = new C("C","C");
D d = new D("D","D","D");
E e = new E("E","E","E");
s.persist(a);
s.persist(b);
s.persist(c);
s.persist(d);
s.persist(e);
tx.commit();
}catch(Exception e){
e.printStackTrace();
if(tx!=null)
tx.rollback();
}
}
}


8. Table
Same as ALab10
create table aa(sid int, disc char(2), sname char(15),
bname char(15),cname char(15),dname char(15),ename char(15));

** Run As A Java Application & Choose L13 from list.

** Rows inserted In DB tables as :

No comments:

Post a Comment