我想用Java和Javascript做什么:
如果用户尝试注册帐户,在他写下登录名并在下一个字段中点击后,如果登录名已经存在,则应立即检查。
我的问题是现在,最佳表现方式是什么。 我知道,我如何检查数据库中的用户名,这没有问题。
但是可以在应用程序范围变量中缓存用户列表吗? 如果是,我应该如何或在哪里创建这样的变量?我使用tomcat作为服务器。 但不知道我怎么能这样做。
或者它很好,检查数据库服务器。
我想要类似于来自hotmail的注册
由于
答案 0 :(得分:0)
两种方法(而不是非常努力)。首先 - 在加载页面之前,在服务器端检索所有用户名,将其放入列表并将列表放入请求中。现在,您拥有页面中的所有用户,并可以检查输入的名称是否存在(必须在javascript中执行)。第二种方法 - 在输入名称后,对服务器进行ajax调用,并检查数据库是否存在。希望这会有所帮助。
答案 1 :(得分:0)
缓存所有登录名并不是一个好主意。首先,因为在每个http会话中,您需要刷新整个缓存。其次,因为它可能有多个http会话(多个用户尝试创建一个帐户),您需要刷新整个缓存以验证新的注册登录名。第三,将整个用户名表临时存储在这样的变量中并不是一个好习惯。想象你有10000000个登录名!
使用缓存,如果两个用户想要同时注册并输入相同的用户登录,则两个用户登录通过验证!
只需使用ajax请求或servlet查询数据库,并确保您的登录名列有索引!