Java Servlet-使用HashMap来存储用户,然后保存到文件并读取

问题描述 投票:-1回答:1

我有一个User类,用于存储登录名,密码和电子邮件(所有这些都是Strings。)>

我还有一个register.jsp网站,人们可以在此注册。填写完表单后,我将所有数据发送到registerServlet,并希望将所有数据存储在HashMap中,但是我不确定这是否是个好主意。

我创建了一个看起来像这样的HashMap:

HashMap <String, User> hash_map = new HashMap<String,User>();

这是个好主意吗?

String login = (String)request.getParameter("login");
String password = (String)request.getParameter("password");
String email= (String)request.getParameter("email");
//upper I get parameters from inputs

User user = new User(login,password,email); // User class constructor
hash_map.put(Integer.toString(id), user); // Trying to put it to hashmap
id++;
request.getRequestDispatcher("login.jsp").forward(request, response);

将用户放入HashMap之后,我得到这样的输出:

[{1=User@6d7a6891}]

我如何获得登录名,密码,电子邮件之类的用户属性?

哪个是最简单的将其保存到文件并读取的方法?

我需要将用户登录名存储在文件中。

我有一个User类,用于存储登录名,密码和电子邮件(所有这些都是Strings)。我还有一个register.jsp网站,人们可以在此注册。填写完表格后,我发送所有数据...

java servlets
1个回答
0
投票

您无法在register.jsp中访问您的哈希映射,因为您没有在任何地方进行设置。变量的作用域是login.jsp本地的。在执行requestDispacher.fowrward()之前,您可以使用一些选项将数据传递到下一页。一种是将其设置为属性会话(这是一个很大的范围,我不建议这样做)。另一种是将其设置为请求对象中的属性(我认为更好)。

© www.soinside.com 2019 - 2024. All rights reserved.