用于登录的Java超类用户
我的超类用户有一些问题,其中包含学生、教师和公司的用户名和密码 一切正常,但当我使用特定用户名/密码组合登录时,数据会丢失。我仍然有来自学生/教师/公司的数据,但不再有用户数据 User.java(荷兰语中的gebruiker,这是超类): Student.java(荷兰语为leerling): 到目前为止,代码工作正常。我可以创建一个用户名和密码如下的学生:用于登录的Java超类用户,java,google-app-engine,session,servlets,superclass,Java,Google App Engine,Session,Servlets,Superclass,我的超类用户有一些问题,其中包含学生、教师和公司的用户名和密码 一切正常,但当我使用特定用户名/密码组合登录时,数据会丢失。我仍然有来自学生/教师/公司的数据,但不再有用户数据 User.java(荷兰语中的gebruiker,这是超类): Student.java(荷兰语为leerling): 到目前为止,代码工作正常。我可以创建一个用户名和密码如下的学生: Gebruiker g1 = (Gebruiker) new Leerling("username", "password", "nam
Gebruiker g1 = (Gebruiker) new Leerling("username", "password", "name", "email", "nr");
当我登录到我的应用程序并设置与我的用户的会话时,会出现问题:
req.getSession().setAttribute("gebruikerObject", g1);
我刷新页面的那一刻。用户对象的用户名和密码为空,“名称”“电子邮件”和“nr”保持正常。当我在JSP页面上打印gebruikerObject时,每次刷新都会得到不同的返回值:
com.appspot.AccentNijkerk.model.Leerling@16ee9e2
com.appspot.AccentNijkerk.model.Leerling@1c6b2e3
com.appspot.AccentNijkerk.model.Leerling@1fa486
我真的希望你们能帮助我,提前谢谢
PS:Im使用Google App Engine,会话已启用类
Gebruiker
也应可序列化
此外,您应该了解this
关键字,并使用它来获得良好、可读、可理解的变量名,同时遵守Java命名约定:
public Gebruiker(String gebruikersNaam, String wachtWoord) {
this.gebruikersNaam = gebruikersNaam;
this.wachtWoord = wachtWoord;
}
谢谢,工作很好!我会在几分钟内接受你的回答,现在还不能。
com.appspot.AccentNijkerk.model.Leerling@16ee9e2
com.appspot.AccentNijkerk.model.Leerling@1c6b2e3
com.appspot.AccentNijkerk.model.Leerling@1fa486
public Gebruiker(String gebruikersNaam, String wachtWoord) {
this.gebruikersNaam = gebruikersNaam;
this.wachtWoord = wachtWoord;
}