Java/Pingアプリケーション/テーブルのRowにマッピングされるPOJOを作る
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
// 下階層用テンプレート
#topicpath
----
//ここにコンテンツを記述します。
つぎは[[先ほど作った>Java/Pingアプリケーション/すでに打っ...
一応目的としては、Hibernate Annotation を用いて*.hbm.xml...
手順は、ややこしいですが
-hibernate.cfg.xmlの作成
-consoleの作成
-hibernate.reveng.xml の作成
-Hibernate パースペクティブでソース生成(hibernate.reveng....
-hbm.xmlのauto_incrementなどの値を書き換え
-Hibernate パースペクティブでソース生成(hibernate.reveng....
JDK 1.5 Construts
EJB3/JSR-220 annotations
にチェックして作成。
て感じです。生成されたソースは以下の感じ:
package nu.mine.kino.rss.hibernate;
// Generated 2006/02/23 1:10:31 by Hibernate Tools 3.1.0...
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratorType;
import javax.persistence.Id;
import javax.persistence.Table;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.hibernate.annotations.GenericGenerator;
/**
* Rss generated by hbm2java
*/
@Entity
@Table(name = "rss", catalog = "webdb1")
public class Rss implements java.io.Serializable {
// Fields
private Integer id;
private String title;
private String link;
private Date date;
// Constructors
/** default constructor */
public Rss() {
}
/** minimal constructor */
public Rss(Date date) {
this.date = date;
}
/** full constructor */
public Rss(String title, String link, Date date) {
this.title = title;
this.link = link;
this.date = date;
}
// Property accessors
@GenericGenerator(name = "generator", strategy = "incr...
@Id(generate = GeneratorType.NONE, generator = "genera...
@Column(name = "id", unique = false, nullable = false,...
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
@Column(name = "title", unique = false, nullable = tru...
public String getTitle() {
return this.title;
}
public void setTitle(String title) {
this.title = title;
}
@Column(name = "link", unique = false, nullable = true...
public String getLink() {
return this.link;
}
public void setLink(String link) {
this.link = link;
}
@Column(name = "date", unique = false, nullable = fals...
public Date getDate() {
return this.date;
}
public void setDate(Date date) {
this.date = date;
}
// 以下は 追記。
public String toString() {
return new ToStringBuilder(this).append("id", getId(...
getDate()).append("title", getTitle()).toString();
}
// RSSフィードと比較するためにOverride
// 同じ更新時刻のデータは、同じオブジェクトと見なして...
public boolean equals(Object other) {
if (!(other instanceof Rss))
return false;
Rss castOther = (Rss) other;
// 同じ更新時刻は、同じとみなす。
return new EqualsBuilder()
// .append(this.getTitle(), castOther.getTitle())
.append(this.getDate(), castOther.getDate()).isE...
}
public int hashCode() {
return new HashCodeBuilder().append(getId()).toHashC...
}
}
ちなみに中間で作成されたRss.hbm.xmlは以下の通り:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hiberna...
"http://hibernate.sourceforge.net/hibernate-mapping-3.0....
<!-- Generated 2006/02/23 1:00:53 by Hibernate Tools 3.1...
<hibernate-mapping>
<class name="nu.mine.kino.rss.hibernate.Rss" table="rs...
<id name="id" type="integer">
<column name="id" />
<generator class="increment" />
</id>
<property name="title" type="string">
<column name="title" />
</property>
<property name="link" type="string">
<column name="link" length="65535" />
</property>
<property name="date" type="timestamp">
<column name="date" length="19" not-null="true" />
</property>
</class>
</hibernate-mapping>
----
この記事は
#vote(おもしろかった,そうでもない)
-AntのJavaDocタスクでエラーになっちゃうんだけど。。どうす...
-OSのJAVA_HOME見てるんですね。そこをJDK1.5のパスにしたら...
-やっぱりjava2htmlもだめだぁ -- [[きの]] &new{2006-02-26 ...
#comment
#topicpath
SIZE(10){現在のアクセス:&counter;}
終了行:
// 下階層用テンプレート
#topicpath
----
//ここにコンテンツを記述します。
つぎは[[先ほど作った>Java/Pingアプリケーション/すでに打っ...
一応目的としては、Hibernate Annotation を用いて*.hbm.xml...
手順は、ややこしいですが
-hibernate.cfg.xmlの作成
-consoleの作成
-hibernate.reveng.xml の作成
-Hibernate パースペクティブでソース生成(hibernate.reveng....
-hbm.xmlのauto_incrementなどの値を書き換え
-Hibernate パースペクティブでソース生成(hibernate.reveng....
JDK 1.5 Construts
EJB3/JSR-220 annotations
にチェックして作成。
て感じです。生成されたソースは以下の感じ:
package nu.mine.kino.rss.hibernate;
// Generated 2006/02/23 1:10:31 by Hibernate Tools 3.1.0...
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratorType;
import javax.persistence.Id;
import javax.persistence.Table;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.hibernate.annotations.GenericGenerator;
/**
* Rss generated by hbm2java
*/
@Entity
@Table(name = "rss", catalog = "webdb1")
public class Rss implements java.io.Serializable {
// Fields
private Integer id;
private String title;
private String link;
private Date date;
// Constructors
/** default constructor */
public Rss() {
}
/** minimal constructor */
public Rss(Date date) {
this.date = date;
}
/** full constructor */
public Rss(String title, String link, Date date) {
this.title = title;
this.link = link;
this.date = date;
}
// Property accessors
@GenericGenerator(name = "generator", strategy = "incr...
@Id(generate = GeneratorType.NONE, generator = "genera...
@Column(name = "id", unique = false, nullable = false,...
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
@Column(name = "title", unique = false, nullable = tru...
public String getTitle() {
return this.title;
}
public void setTitle(String title) {
this.title = title;
}
@Column(name = "link", unique = false, nullable = true...
public String getLink() {
return this.link;
}
public void setLink(String link) {
this.link = link;
}
@Column(name = "date", unique = false, nullable = fals...
public Date getDate() {
return this.date;
}
public void setDate(Date date) {
this.date = date;
}
// 以下は 追記。
public String toString() {
return new ToStringBuilder(this).append("id", getId(...
getDate()).append("title", getTitle()).toString();
}
// RSSフィードと比較するためにOverride
// 同じ更新時刻のデータは、同じオブジェクトと見なして...
public boolean equals(Object other) {
if (!(other instanceof Rss))
return false;
Rss castOther = (Rss) other;
// 同じ更新時刻は、同じとみなす。
return new EqualsBuilder()
// .append(this.getTitle(), castOther.getTitle())
.append(this.getDate(), castOther.getDate()).isE...
}
public int hashCode() {
return new HashCodeBuilder().append(getId()).toHashC...
}
}
ちなみに中間で作成されたRss.hbm.xmlは以下の通り:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hiberna...
"http://hibernate.sourceforge.net/hibernate-mapping-3.0....
<!-- Generated 2006/02/23 1:00:53 by Hibernate Tools 3.1...
<hibernate-mapping>
<class name="nu.mine.kino.rss.hibernate.Rss" table="rs...
<id name="id" type="integer">
<column name="id" />
<generator class="increment" />
</id>
<property name="title" type="string">
<column name="title" />
</property>
<property name="link" type="string">
<column name="link" length="65535" />
</property>
<property name="date" type="timestamp">
<column name="date" length="19" not-null="true" />
</property>
</class>
</hibernate-mapping>
----
この記事は
#vote(おもしろかった,そうでもない)
-AntのJavaDocタスクでエラーになっちゃうんだけど。。どうす...
-OSのJAVA_HOME見てるんですね。そこをJDK1.5のパスにしたら...
-やっぱりjava2htmlもだめだぁ -- [[きの]] &new{2006-02-26 ...
#comment
#topicpath
SIZE(10){現在のアクセス:&counter;}
ページ名: