svnno****@sourc*****
svnno****@sourc*****
2008年 11月 7日 (金) 08:38:41 JST
Revision: 2105 http://svn.sourceforge.jp/cgi-bin/viewcvs.cgi?root=jiemamy&view=rev&rev=2105 Author: daisuke_m Date: 2008-11-07 08:38:41 +0900 (Fri, 07 Nov 2008) Log Message: ----------- TopLink + MockDriverの組み合わせを追加。 Modified Paths: -------------- sandbox/openJPAsample/pom.xml sandbox/openJPAsample/src/main/java/META-INF/persistence.xml sandbox/openJPAsample/src/main/java/org/jiemamy/sandbox/openjpa/entity/Employee.java sandbox/openJPAsample/src/test/java/org/jiemamy/sandbox/openjpa/JpaAccessTest.java -------------- next part -------------- Modified: sandbox/openJPAsample/pom.xml =================================================================== --- sandbox/openJPAsample/pom.xml 2008-11-06 18:15:38 UTC (rev 2104) +++ sandbox/openJPAsample/pom.xml 2008-11-06 23:38:41 UTC (rev 2105) @@ -61,6 +61,11 @@ <name>CodeRepos Maven2 Repository</name> <url>http://svn.coderepos.org/share/lang/java/misc/maven2repo</url> </repository> + <repository> + <id>maven.seasar.org</id> + <name>The Seasar Foundation Maven2 Repository</name> + <url>http://maven.seasar.org/maven2</url> + </repository> </repositories> <dependencies> <dependency> @@ -81,11 +86,24 @@ <version>0.94</version> <scope>test</scope> </dependency> + <dependency> <groupId>org.apache.openjpa</groupId> <artifactId>openjpa-persistence-jdbc</artifactId> <version>1.2.0</version> </dependency> + <dependency> + <groupId>toplink.essentials</groupId> + <artifactId>toplink-essentials</artifactId> + <version>2.0-58g</version> + </dependency> + + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + <version>2.4</version> + </dependency> + <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> Modified: sandbox/openJPAsample/src/main/java/META-INF/persistence.xml =================================================================== --- sandbox/openJPAsample/src/main/java/META-INF/persistence.xml 2008-11-06 18:15:38 UTC (rev 2104) +++ sandbox/openJPAsample/src/main/java/META-INF/persistence.xml 2008-11-06 23:38:41 UTC (rev 2105) @@ -21,8 +21,9 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0"> - <persistence-unit name="h2" transaction-type="RESOURCE_LOCAL"> - <!-- We must enumerate each entity in the persistence unit --> + <persistence-unit name="openjpa-h2" transaction-type="RESOURCE_LOCAL"> + <provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider> + <class>org.jiemamy.sandbox.openjpa.entity.Employee</class> <class>org.jiemamy.sandbox.openjpa.entity.Department</class> @@ -35,8 +36,9 @@ </properties> </persistence-unit> - <persistence-unit name="mock" transaction-type="RESOURCE_LOCAL"> - <!-- We must enumerate each entity in the persistence unit --> + <persistence-unit name="openjpa-mock" transaction-type="RESOURCE_LOCAL"> + <provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider> + <class>org.jiemamy.sandbox.openjpa.entity.Employee</class> <class>org.jiemamy.sandbox.openjpa.entity.Department</class> @@ -50,4 +52,36 @@ </properties> </persistence-unit> + <persistence-unit name="toplink-h2" transaction-type="RESOURCE_LOCAL"> + <provider>oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider</provider> + + <class>org.jiemamy.sandbox.openjpa.entity.Employee</class> + <class>org.jiemamy.sandbox.openjpa.entity.Department</class> + + <properties> + <property name="toplink.jdbc.driver" value="org.h2.Driver" /> + <property name="toplink.jdbc.url" value="jdbc:h2:./src/test/resources/database/testdb" /> + <property name="toplink.jdbc.user" value="sa" /> + <property name="toplink.jdbc.password" value="" /> + <property name="toplink.target-database" value="oracle.toplink.essentials.platform.database.HSQLPlatform" /> + <property name="toplink.logging.level" value="FINEST" /> + </properties> + </persistence-unit> + + <persistence-unit name="toplink-mock" transaction-type="RESOURCE_LOCAL"> + <provider>oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider</provider> + + <class>org.jiemamy.sandbox.openjpa.entity.Employee</class> + <class>org.jiemamy.sandbox.openjpa.entity.Department</class> + + <properties> + <property name="toplink.jdbc.driver" value="org.jiemamy.sandbox.openjpa.mockdriver.MockDriver"/> + <property name="toplink.jdbc.url" value="jdbc:h2:./src/test/resources/database/testdb" /> + <property name="toplink.jdbc.user" value="sa" /> + <property name="toplink.jdbc.password" value="" /> + <property name="toplink.target-database" value="oracle.toplink.essentials.platform.database.HSQLPlatform" /> + <property name="toplink.logging.level" value="FINEST" /> + </properties> + </persistence-unit> + </persistence> Modified: sandbox/openJPAsample/src/main/java/org/jiemamy/sandbox/openjpa/entity/Employee.java =================================================================== --- sandbox/openJPAsample/src/main/java/org/jiemamy/sandbox/openjpa/entity/Employee.java 2008-11-06 18:15:38 UTC (rev 2104) +++ sandbox/openJPAsample/src/main/java/org/jiemamy/sandbox/openjpa/entity/Employee.java 2008-11-06 23:38:41 UTC (rev 2105) @@ -18,12 +18,10 @@ */ package org.jiemamy.sandbox.openjpa.entity; -import java.sql.Date; +import java.util.Date; import javax.persistence.Column; import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; @@ -43,7 +41,6 @@ public class Employee { @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) public int id; @Column(name = "EMP_NO") @@ -67,7 +64,7 @@ public int versionNo; @ManyToOne - @JoinColumn(name = "DEPT_ID") + @JoinColumn(name = "DEPT_ID", insertable = false, updatable = false) public Department dept; Modified: sandbox/openJPAsample/src/test/java/org/jiemamy/sandbox/openjpa/JpaAccessTest.java =================================================================== --- sandbox/openJPAsample/src/test/java/org/jiemamy/sandbox/openjpa/JpaAccessTest.java 2008-11-06 18:15:38 UTC (rev 2104) +++ sandbox/openJPAsample/src/test/java/org/jiemamy/sandbox/openjpa/JpaAccessTest.java 2008-11-06 23:38:41 UTC (rev 2105) @@ -1,5 +1,7 @@ package org.jiemamy.sandbox.openjpa; +import java.io.PrintWriter; +import java.sql.DriverManager; import java.util.List; import javax.persistence.EntityManager; @@ -24,6 +26,7 @@ */ @Before public void setUp() throws Exception { + DriverManager.setLogWriter(new PrintWriter(System.out)); } /** @@ -45,7 +48,7 @@ EntityManagerFactory factory = null; try { - factory = Persistence.createEntityManagerFactory("mock"); + factory = Persistence.createEntityManagerFactory(PersistenceUnit.TopLink_MOCK.toString()); em = factory.createEntityManager(); tx = em.getTransaction(); @@ -69,4 +72,31 @@ } } } + + + enum PersistenceUnit { + OpenJPA_H2("openjpa-h2"), + + OpenJPA_MOCK("openjpa-mock"), + + TopLink_H2("toplink-h2"), + + TopLink_MOCK("toplink-mock"); + + private String name; + + + PersistenceUnit(String name) { + this.name = name; + } + + /** + * {@inheritDoc} + */ + @Override + public String toString() { + return name; + } + + } }