Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.Employee.Employee;
- import javax.persistence.Column;
- import javax.persistence.Entity;
- import javax.persistence.GeneratedValue;
- import javax.persistence.Id;
- import javax.persistence.JoinColumn;
- import javax.persistence.ManyToOne;
- import javax.persistence.Table;
- import com.Employee.Department.Department;
- @Entity
- @Table(name = "Employee_1toMany")
- public class Employee {
- @Id
- @GeneratedValue
- @Column(name = "EId")
- private int emp_id;
- @Column(name = "EName")
- private String name;
- private Department dept;
- public int getEmp_id() {
- return emp_id;
- }
- public void setEmp_id(int emp_id) {
- this.emp_id = emp_id;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- @ManyToOne
- @JoinColumn(name = "DepartmentID")
- public Department getDept() {
- return dept;
- }
- public void setDept(Department dept) {
- this.dept = dept;
- }
- }
- package com.Employee.Department;
- import java.util.List;
- import javax.persistence.CascadeType;
- import javax.persistence.Column;
- import javax.persistence.Entity;
- import javax.persistence.FetchType;
- import javax.persistence.GeneratedValue;
- import javax.persistence.Id;
- import javax.persistence.OneToMany;
- import javax.persistence.Table;
- import com.Employee.Employee.Employee;
- @Entity
- @Table(name = "Department_1toMany")
- public class Department {
- @Id
- @GeneratedValue
- @Column(name = "DId")
- private int Dept_id;
- @Column(name = "DName")
- private String Dept_name;
- private List<Employee> emp;
- public int getDept_id() {
- return Dept_id;
- }
- public void setDept_id(int dept_id) {
- Dept_id = dept_id;
- }
- public String getDept_name() {
- return Dept_name;
- }
- public void setDept_name(String dept_name) {
- Dept_name = dept_name;
- }
- @OneToMany(targetEntity = Employee.class, mappedBy = "dept", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
- public List<Employee> getEmp() {
- return emp;
- }
- public void setEmp(List<Employee> emp) {
- this.emp = emp;
- }
- }
- package com.Employee.MainClass;
- import org.hibernate.Session;
- import org.hibernate.SessionFactory;
- import org.hibernate.Transaction;
- import org.hibernate.cfg.Configuration;
- import com.Employee.Department.Department;
- import com.Employee.Employee.Employee;
- public class MainApp {
- public static void main(String[] args) {
- SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
- Session session = sessionFactory.openSession();
- Transaction tx = session.beginTransaction();
- Department dept = new Department();
- dept.setDept_name("Modern College");
- Employee emp1 = new Employee();
- emp1.setName("Rakesh");
- Employee emp2 = new Employee();
- emp2.setName("Sagar");
- emp1.setDept(dept);
- emp2.setDept(dept);
- session.save(dept);
- session.save(emp1);
- session.save(emp2);
- tx.commit();
- }
- }
- <?xml version="1.0" encoding="utf-8"?>
- <!DOCTYPE hibernate-configuration SYSTEM "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
- <hibernate-configuration>
- <session-factory>
- <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
- <property name="hibernate.connection.username">root</property>
- <property name="hibernate.connection.password">root</property>
- <property name="hibernate.connection.url">jdbc:mysql://localhost/EMP_PRACTISE</property>
- <property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property>
- <property name="hibernate.hbm2ddl.auto">create</property>
- <property name="hibernate.show_sql">true</property>
- <mapping class="com.Employee.Department.Department"></mapping>
- <mapping class="com.Employee.Employee.Employee"></mapping>
- </session-factory>
- </hibernate-configuration>
- Exception in thread "main" org.hibernate.MappingException: Could not determine type for: com.Employee.Department.Department, at table: Employee, for columns: [org.hibernate.mapping.Column(dept)]
- at org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:455)
- at org.hibernate.mapping.SimpleValue.isValid(SimpleValue.java:422)
- at org.hibernate.mapping.Property.isValid(Property.java:226)
- at org.hibernate.mapping.PersistentClass.validate(PersistentClass.java:597)
- at org.hibernate.mapping.RootClass.validate(RootClass.java:265)
- at org.hibernate.boot.internal.MetadataImpl.validate(MetadataImpl.java:329)
- at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:451)
- at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:710)
- at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:726)
- at com.Employee.MainClass.MainApp.main(MainApp.java:13)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement