扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
一般是知道用户名找回密码,没有连用户名也找回的
10年积累的网站设计、网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有洮南免费网站建设让你可以放心的选择与我们合作。
可以先将要找回的用户名写入session,然后在severlet或一个JSP页面里将session里的用户名取出,然后在数据库里进行查询,将查到的密码显示出来就可以了,或者是发到邮箱里.
也可以设置一个,
,在另外一个页面将接收到的值进行查询,如果这个值在数据中存在,可以将查到的密显示出来.
如果已经对密码已经加密了(md5),一般情况是不能实现的,只有将密码重新设置.
【实例描述】
在登录一些网站时,我们需要输入用户名和密码。也许时间久了你就会忘记所设的密码,这时我们可以请求该网站将密码发到注册时的邮箱。这就需要判断用户输入的用户名是否正确,我们可以通过对比用户输入的用户名字符串是否与数据库中或者已经存在的集合中的字符串相同,来决定用户输入的用户名是否正确。实例的运行效果如图4.1所示。
【实现过程】
在Eclipse中新建项目Username,并在其中创建一个Username.java文件。在该类的主方法中创建标准输入流的扫描器对象,接收用户输入变量值。然后判断输入值,如果不是管理员用户名并且输入的用户名是已经注册的则显示正确提示,否则显示错误提示。核心代码如下所示:
protectedvoiddo_button_actionPerformed(ActionEvente){
Stringname=usernameField.getText();//获取用户输入
if(name.equals("admin")){//判断是否管理员账号
showMessageDialog(null,"对不起,这个用户名是管理员的,不是你的");
}elseif(name.equals("Lester")){//判断是否注册用户
showMessageDialog(null,"该用户名对应的密码已经发送到注册时的邮箱,请查收
");
}else{//给错误用户名的提示对话
框
showMessageDialog(null,"你输入的用户名不存在,留意CapsLock键是否按下。
");
}
}
【代码解析】
本实例采用了String类的equals()方法来判断两个字符串的内容是否相同,这个方法是从Object类中继承的。在Java语言中,默认的所有类都是Object的子类,也就是说只要是对象,都会重写或直接使用Object类的equals()方法,String类就重写了这个方法实现判断字符串内容是否相同的目的。其声明语法如下:
publicbooleanequals(ObjectanObject);
【知识扩展】
在Java虚拟机中有一个保存字符串的池,它会记录所有的字符串。例如:
Stringstr1=”abc”;
Stringstr2=”abc”;
Stringstr3=newString(”abc”);
System.out.println(str1==str2);
System.out.println(str1==str3);
这段代码中str1==str2的判断将返回true,而str1==str3将返回false。因为Java中基本数据类型使用“==”可以判断操作数是否相等,对于对象使用这个符号判断的是两个对象的内存地址是否相同。如果字符串已经存在,就不在创建相同的字符串,直接返回该字符串,所以这两个变量引用的是同一个字符串,那么它们的地址也是相同的,所以str1==str2成立,但是使
用new关键字创建的字符串会开辟内存控件,所以str1==str3不成立。
打开servlets包帮你看看,
另外,把你最下面那张图 代码部分补全点,找到 form标签对应的路径就好找了
当你使用用户名跟密码登录成功的时候,把用户名跟密码放在范围内.可以是request.setAttribute("username",username);也可以是session.setAttribute("username",username);然后在jsp页面可以用EL表达式拿也可以直接用java代码拿.${sessionScope.username},%=session.getAttribute("username")%
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流