go4it

just do it

实体bean(四)多对一

1.由注解自动生成表

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
    http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">
    
	<persistence-unit name="JPAManyToOnePU" transaction-type="JTA">
  		<jta-data-source>java:/jpa</jta-data-source>
  		<properties>
  		<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
  		<property name="hibernate.hbm2ddl.auto" value="update"/>
  		</properties>
	</persistence-unit>
  
</persistence>

上次是<property name="hibernate.hbm2ddl.auto" value="update"/> 把ddl写成了dll,找出没法自动生成。现在可以了。

 

2.多个Employee对应一个Company

Company代码:

package com.persia.jpa;

import javax.persistence.Entity;
import javax.persistence.Id;

@Entity
public class Company {

	@Id
	private int id;
	private String name;
	
}
 
Employee代码:
 
package com.persia.jpa;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;

@Entity
public class Employee {
    @Id
	private int id;
	private String name;
	
	@ManyToOne
	@JoinColumn(name="CID")
	private Company company;

}
3.生成的数据库表
mysql> desc company
    -> ;
+-------+--------------+------+-----+---------+-------+
| Field | Type         | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| id    | int(11)      | NO   | PRI | NULL    |       |
| name  | varchar(255) | YES  |     | NULL    |       |
+-------+--------------+------+-----+---------+-------+
2 rows in set (0.00 sec)

mysql> desc employee;
+-------+--------------+------+-----+---------+-------+
| Field | Type         | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| id    | int(11)      | NO   | PRI | NULL    |       |
| name  | varchar(255) | YES  |     | NULL    |       |
| CID   | int(11)      | YES  | MUL | NULL    |       |
+-------+--------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

posted on 2009-01-18 10:50  cxccbv  阅读(325)  评论(0)    收藏  举报

导航