MySQLデータベースにデータを挿入しても問題ありません。今私はもう一つの列 "日付"を追加したいと思うし、私はデフォルトとして挿入の日付を挿入したい。どうやってやるの?デフォルトの日付値Hibernate
"FbData.hbm.xml":ゲッターとセッターとの
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.hibernate.FbData" table="dataresponse" catalog="karma">
<id name="idData" type="java.lang.Integer">
<column name="idData" />
<generator class="identity" />
</id>
<property name="likes" type="java.lang.Long">
<column name="likes" not-null="false" unique="false" />
</property>
<property name="shares" type="java.lang.Long">
<column name="shares" not-null="false" unique="false" />
</property>
<property name="time" type="string">
<column name="time" not-null="false" unique="false" />
</property>
<property name="idPage" type="string">
<column name="idPage" not-null="false" unique="false" />
</property>
</class>
</hibernate-mapping>
そして、私のクラス:事前に
public class FbData implements Serializable{
private static final long serialVersionUID = 1L;
private Integer idData;
private Long likes;
private Long shares;
private String time;
private String idPage;
}
感謝!
あなたはdate
の値を設定しているオブジェクトを永続化しようとしていない場合は、データベース
@PrePersist
protected void onCreate() {
if (date == null) {
date = new Date();
}
}
この方法に行を挿入する前に、属性に現在の日付を割り当てること@PrePersist
アノテーションを使用することができます
上の注釈付きJPAコールバックメソッドを追加することで、他の提案の回答を使用することができます私は注釈で「FbData」クラスにそのメソッドを置きます。私は挿入を行いますが、列 "date"のすべてのフィールドは "null"です。 – MathiasMS
どのバージョンのHibernateを使用していますか?セッションやEntityManagerをブートストラップしていますか?私は、Hibernate-centricとJPA-centricの両方のオプションをカバーする答えを加えました。 – Naros