JPA2でカラムのTime型に登録します。
【手順】
1.『Javaプロジェクトの作成方法』の手順で、Javaプロジェクトを作成。
2.『EclipseLink2.6.4をライブラリに設定する方法(Javaプロジェクト)』の手順で、プロジェクトにライブラリを追加。
3.『PostgreSQLのJDBC Driver(Version 9.1-902 JDBC 4)をライブラリに設定する方法』の手順で、JDBCドライバをライブラリに追加。
※バージョンはデータベースのバージョンに合わせる。
4.『Javaクラスファイルの作成方法』の手順で、『JpaSample003』というクラスを作成。
5.以下の様に入力。
import java.sql.Time; import java.util.Calendar; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; import javax.persistence.Temporal; import javax.persistence.TemporalType; @Entity @Table(name = "JpaSample015") public class JpaSample015 { @Id private int id; @Column private Time time; @Temporal(TemporalType.TIME) private java.util.Date utilDate; @Temporal(TemporalType.TIME) private Calendar calendar; public JpaSample015() { } public JpaSample015(int id, Time time, java.util.Date utilDate, Calendar calendar) { this.id = id; this.time = time; this.utilDate = utilDate; this.calendar = calendar; } public int getId() { return id; } public void setId(int id) { this.id = id; } public Time getTime() { return time; } public void setTime(Time time) { this.time = time; } @Override public String toString() { return "JpaSample015 [id=" + id + ", time=" + time + ", utilDate=" + utilDate + ", calendar=" + calendar + "]"; } }6.『Javaクラスファイルの作成方法』の手順で、『Main』というクラスを作成。
7.以下の様に入力。
import java.sql.Time; import java.util.Calendar; import java.util.Date; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.EntityTransaction; import javax.persistence.Persistence; public class Main { public static void main(String[] args) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("JpaSample015"); insert(emf); select(emf); } private static void insert(EntityManagerFactory emf) { EntityManager em = emf.createEntityManager(); EntityTransaction et = em.getTransaction(); et.begin(); JpaSample015 record = new JpaSample015(1, new Time(System.currentTimeMillis()), new Date(), Calendar.getInstance()); em.persist(record); et.commit(); em.close(); } private static void select(EntityManagerFactory emf) { EntityManager em = emf.createEntityManager(); JpaSample015 record = em.find(JpaSample015.class, 1); System.out.println("SELECT結果:" + record); em.close(); } }8.『任意のファイルの作成方法』の手順で、『persistence.xml』というファイルを作成。
9.以下の様に入力。
<?xml version="1.0" encoding="UTF-8"?> <persistence version="2.0" 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_2_0.xsd"> <persistence-unit name="JpaSample015" transaction-type="RESOURCE_LOCAL"> <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> <class>JpaSample015</class> <properties> <property name="javax.persistence.jdbc.driver" value="org.postgresql.Driver" /> <property name="javax.persistence.jdbc.url" value="jdbc:postgresql://172.16.20.94:5432/jpa2db" /> <property name="javax.persistence.jdbc.user" value="jpa2" /> <property name="javax.persistence.jdbc.password" value="jpa2" /> <property name="eclipselink.logging.level.sql" value="FINE"/> <property name="eclipselink.logging.parameters" value="true"/> <property name="eclipselink.ddl-generation" value="drop-and-create-tables" /> <property name="eclipselink.application-location" value="DDL" /> <property name="eclipselink.create-ddl-jdbc-file-name" value="create.sql" /> <property name="eclipselink.drop-ddl-jdbc-file-name" value="drop.sql" /> <property name="eclipselink.ddl-generation.output-mode" value="both" /> </properties> </persistence-unit> </persistence>10.『Javaプロジェクトの実行方法』の手順で、『Main.java』を実行。
11.以下の様に実行される。
以上です。