Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Entity
- public class Label implements Comparable<Label> {
- @Id
- @GeneratedValue(strategy = GenerationType.TABLE)
- private Long tid;
- @OneToMany
- @JoinTable
- private Map<Language,SynonymList> synonyms;
- }
- @Entity
- public class SynonymList {
- @Id
- @GeneratedValue(strategy = GenerationType.TABLE)
- private Long tid;
- @OneToMany(cascade = CascadeType.PERSIST)
- private Set<LocalizedLabel> synonyms;
- }
- @Entity
- public abstract class LocalizedLabel {
- @Id
- @GeneratedValue(strategy = GenerationType.TABLE)
- private Long tid;
- @Basic
- private String name;
- @Basic
- private String description;
- @Basic
- private Language language;
- }
- private final static String persistence_unit_name = "main_DB";
- final EntityManagerFactory emf = Persistence.createEntityManagerFactory(persistence_unit_name);
- final EntityManager em = emf.createEntityManager();
- <?xml version="1.0" encoding="UTF-8"?>
- <persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/persistence http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/persistence/persistence_2_1.xsd">
- <persistence-unit name="main_DB" transaction-type="RESOURCE_LOCAL">
- <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
- <exclude-unlisted-classes>false</exclude-unlisted-classes>
- <shared-cache-mode>NONE</shared-cache-mode>
- <properties>
- <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
- <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost/my_DB"/>
- <property name="javax.persistence.jdbc.user" value="my_user"/>
- <property name="javax.persistence.jdbc.password" value="my_pwd"/>
- <property name="eclipselink.ddl-generation.output-mode" value="database"/>
- <property name="eclipselink.logging.level" value="INFO"/>
- <property name="eclipselink.logging.level.sql" value="INFO"/>
- <property name="javax.persistence.schema-generation.database.action" value="create"/>
- <property name="eclipselink.query-results-cache" value="false"/>
- <property name="eclipselink.refresh" value="true"/>
- <property name="eclipselink.cache.shared.default" value="false"/>
- <property name="eclipselink.cache.size.default" value="0"/>
- <property name="eclipselink.cache.type.default" value="None"/>
- </properties>
- </persistence-unit>
- </persistence>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement