Java 使用getter和setter加载对象
我是Java对象新手,我的问题是:Java 使用getter和setter加载对象,java,object,methods,getter-setter,Java,Object,Methods,Getter Setter,我是Java对象新手,我的问题是: 我有班上的人 我正在创建一个新的对象person5 我正在将ID设置为5 现在我想在我的对象person5中,所有的信息都是 ID 5有,都在对象person5中 然后我想知道这个人的年龄 当我调试代码时,只有ID被设置为5,所有其他变量都为空 Person person5 = new Person(); person5.setID(5); person5.getAge(); @Id @Column(name = "ID") private Inte
- 我有班上的人
- 我正在创建一个新的对象person5
- 我正在将ID设置为5
- 现在我想在我的对象person5中,所有的信息都是 ID 5有,都在对象person5中
- 然后我想知道这个人的年龄
Person person5 = new Person();
person5.setID(5);
person5.getAge();
@Id @Column(name = "ID")
private Integer id;
@Column(name = "AGE")
private Integer age;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
我做错了什么?有人能帮我吗
Person-person5=新人();
人5.setID(5);
person5.getAge()代码>
person5.setAge(X)
Person person5 = new Person();
你创造了一个新的人
person5.setID(5);
您决定新创建的人员的ID为5
person5.getAge();
由于您没有明确告诉Java更改构造函数设置的人的年龄,它会告诉您所告诉的内容,即无
现在我想在我的对象person5中包含ID为5的人所拥有的所有信息,都在对象person5中
在这一点上,Java对您所谈论的人一无所知。如果您想让它拥有一个相似的人的所有属性,那么您必须告诉Java将所有这些属性设置到您的对象中,或者使用值创建一个新的属性(可能来自DB)
在深入研究DB连接等更深入的概念之前,最好先消除对OOPS的疑虑。您似乎正在使用JPA。然后,从数据库中检索信息的正确方法不仅仅是新建一个对象并设置id,还必须通过
EntityManager
从数据库中获取该对象:
final Person person5 = em.find(Person.class, 5);
您想从数据库中检索信息吗?是的,信息来自数据库。因此,您需要了解JDBC和/或JPA。这太宽泛了。查找教程并阅读。这样您就可以使用sql:select*从persontable中检索数据,其中id=5Flyweight对象,呃。您需要以从数据库读取所需数据的方式实现
setID
。不过,我并不建议这样做,因为那样的话,该对象可能承担了比严格要求更多的责任。我希望您使用findById
方法创建一些PersonRepository
类,该类将返回一个Person
。