2. 2015/08/29 Java 女子部
Copyright (C) 2015 Misaki Kajiura All Rights Reserved. 2
①エンティティ(memo-app/src/java/memo/entity/Memo.java)
package memo.entity;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Lob;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import javax.xml.bind.annotation.XmlRootElement;
@Entity
@Table(name = "MEMO")
@XmlRootElement
@NamedQueries({
@NamedQuery(name = "Memo.findAll", query = "SELECT m FROM Memo m order by m.createTime desc"), // 修正
@NamedQuery(name = "Memo.findById", query = "SELECT m FROM Memo m WHERE m.id = :id"),
@NamedQuery(name = "Memo.findByTitle", query = "SELECT m FROM Memo m WHERE m.title = :title"),
@NamedQuery(name = "Memo.findBySearchWord", query = "SELECT m FROM Memo m WHERE m.content like :word order by
m.createTime desc"), // 修正
@NamedQuery(name = "Memo.findByCreateTime", query = "SELECT m FROM Memo m WHERE m.createTime = :createTime")})
public class Memo implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "ID")
private Integer id;
@Basic(optional = false)
@NotNull
3. 2015/08/29 Java 女子部
Copyright (C) 2015 Misaki Kajiura All Rights Reserved. 3
@Size(min = 1, max = 100, message = "タイトルを 1~100 文字で入力してください。") // 修正
@Column(name = "TITLE")
private String title;
@Lob
@Size(max = 32700)
@Column(name = "CONTENT")
private String content;
@Basic(optional = false)
@NotNull
@Column(name = "CREATE_TIME")
@Temporal(TemporalType.TIMESTAMP)
private Date createTime;
public Memo() {
}
public Memo(Integer id) {
this.id = id;
}
public Memo(Integer id, String title, Date createTime) {
this.id = id;
this.title = title;
this.createTime = createTime;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
4. 2015/08/29 Java 女子部
Copyright (C) 2015 Misaki Kajiura All Rights Reserved. 4
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
@Override
public int hashCode() {
int hash = 0;
hash += (id != null ? id.hashCode() : 0);
return hash;
}
@Override
public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof Memo)) {
return false;
}
Memo other = (Memo) object;
if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {
return false;
}
return true;
}
@Override
public String toString() {
5. 2015/08/29 Java 女子部
Copyright (C) 2015 Misaki Kajiura All Rights Reserved. 5
return "memo.model.Memo[ id=" + id + " ]";
}
}