1.JavaBean中需要定义内容
import java.io.Serializable;
import java.sql.Timestamp;
/**
* 实体类
* 1.一组private属性
* 2.一组private属性对应的setter和getter
* 3.一组构造函数
* 4.重写equals(),hashCode(),toString()方法
* 5.实现Serializable接口,能够被序列化
*/
public class User implements Serializable {
private static final long serialVersionUID = 1L;
private Integer id;
private String userName;
private String password;
private String email;
private String phone;
private Timestamp created;
private Timestamp updated;
public User() {}
public User(Integer id, String userName, String password, String email, String phone, Timestamp created,
Timestamp updated) {
super();
this.id = id;
this.userName = userName;
this.password = password;
this.email = email;
this.phone = phone;
this.created = created;
this.updated = updated;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public Timestamp getCreated() {
return created;
}
public void setCreated(Timestamp created) {
this.created = created;
}
public Timestamp getUpdated() {
return updated;
}
public void setUpdated(Timestamp updated) {
this.updated = updated;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((id == null) ? 0 : id.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
User other = (User) obj;
if (id == null) {
if (other.id != null)
return false;
} else if (!id.equals(other.id))
return false;
return true;
}
@Override
public String toString() {
return "User [id=" + id + ", userName=" + userName + ", password=" + password + ", email=" + email + ", phone="
+ phone + ", created=" + created + ", updated=" + updated + "]";
}
}
2.为什么JavaBean中需要重写hashCode()和equals()方法?
3.为什么JavaBean中需要重写toString()方法?
Object.java中的toString方法:
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
toString()方法的功能是将调用该方法的对象的内容转换成字符串,并返回其内容,但返回的有时是一些看不懂的字符串,因此经常会重写该方法来覆盖父类(Object.java)中的方法。