当前情景
当用户尝试重设密码时,
输入帐号并提交。(例如:123456789)
(帐号包含数据库中的电子邮件)。
然后显示“重置密码的说明已通过电子邮件发送到帐号:123456789 的存档地址”。
所以我试图向用户显示部分 emailID。
像"Instructions to reset your password have been emailed to "Jo******pa@gmail.com" for account number :123456789".
目前我所做的是。
In Action class: (ResetPasswordAction.java)
String email =**retriving email id**
at end
request.setAttribute("email", email);
before forwarding.
In Jsp (Display after email sent)
<c:out value="${email}"/>
工作得很好。
现在我的问题:
1)这是正确的方法吗?
2) * 如何用星 ** 替换字符串(电子邮件),例如 "Jo* * **pa@gmail.com"。我正在尝试,但有什么简单的方法。*Java 1.4
添加:
String Str = "John.smithpa@gmail.com";
String S=Str.replaceFirst("@(.*)","" );
String mail=Str.replaceFirst("(.*)@","" );
String trim=S.substring(2, S.length()-2);
String star = trim.replaceAll(".", "*");
String name= S.replaceAll(trim,star);
String Disp=name+"@"+mail;
System.out.println(Disp);