This article is continuation of email registration, login articles, So please read the previous articles to know how to setup the project. Once you login to the system, you can change password. Now you have have to enter current password and new password. If current password matches, the system will update user's account password with new one. You have to download project at below link for complete understanding. To execute below demo, you need to register first.
Program Flow
- User Enter Required details ( Old Password, New Password...etc ) and Submit request to Server
- If Old password matches with Users's current password, go to step 3, else go to step 4
- Save New Password as User's current password
- Inform User that current password didn't match
HTML Code
The below highlighted fields represent current password, new password and confirm password
<form class="form-horizontal" id="formChangePassword" data-toggle="validator" role="form"> <input type="password" pattern="[A-Za-z0-9@#$%!^&*]{6,30}" name="inputCurrentPassword" class="form-control" id="inputCurrentPassword" placeholder="Enter Current Password" data-error="Password should not be null. It should be greater than 6 and less than 30 characters . Use only A-Z, a-z, 0-9, @ # $ % ! ^ & * charecters" required> <input type="password" pattern="[A-Za-z0-9@#$%!^&*]{6,30}" name="inputPassword" class="form-control" id="inputPassword" placeholder="Enter New Password" data-error="Password should not be null. It should be greater than 6 and less than 30 characters . Use only A-Z, a-z, 0-9, @ # $ % ! ^ & * charecters" required> <input type="password" name="inputPassword1" class="form-control" id="inputPassword1" data-match="#inputPassword" placeholder="Enter New Password Again" data-error="It should not be null and should match with above password" required> <button style="width:100%" type="submit" class="btn btn-default btn-primary">Login</button> </form>
ChangePassword Servlet Code
Find below code for post method of ChangePassword servlet. This code is responsible for current password verification and updating with new password
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // get current, new password from input and encrypt it String inputCurrentPassword = null; if(request.getParameter("inputCurrentPassword")!=null) { inputCurrentPassword = BCrypt.hashpw(request.getParameter("inputCurrentPassword"), GlobalConstants.SALT); }; String inputPassword = null; if(request.getParameter("inputPassword")!=null) { inputPassword = BCrypt.hashpw(request.getParameter("inputPassword"), GlobalConstants.SALT); }; // get user id from session Integer userId = (Integer) request.getSession().getAttribute(GlobalConstants.USER); StatusPojo sp = new StatusPojo(); try { if(userId!=null && inputCurrentPassword != null) { if(UserDAO.verifyUserIdAndPassword(userId.toString(), inputCurrentPassword)) { // update password if current password matches UserDAO.updatePassword(userId.toString(), inputPassword); sp.setCode(0); sp.setMessage("Password changed successfully"); } else { sp.setCode(-1); sp.setMessage("Current password didn't match"); } } else { sp.setCode(-1); sp.setMessage("Invalid input"); } } catch (DBException e) { LOGGER.debug(e.getMessage()); sp.setCode(-1); sp.setMessage(e.getMessage()); } PrintWriter pw = response.getWriter(); pw.write(Utils.toJson(sp)); pw.flush(); pw.close(); }
Essential MySQL Queries
// to verify current password select 1 from DEMO_USER where USER_ID = ? and PASSWORD = ? // to update password update DEMO_USER set PASSWORD = ? where USER_ID = ?
please provide this code in spring
ReplyDeleteyes.. please upload in spring mvc
DeleteThis comment has been removed by the author.
ReplyDeleteplease send this code inspring
ReplyDeleteExamcollection 70-532 VCE It’s very excellent information and more real facts to provided that post.Thank you for sharing this information.
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteCan you give the full code for change password.
ReplyDeleteI wanted to thank you for this excellent read!! I definitely loved every little bit of it. I have you bookmarked your site to check out the new stuff you post. Folderlock Regarding PC Download - Avoid Spend Time Browsing, Read Exactly About PC Desktops Right here how to make a folder password protected
ReplyDeleteHello, I check your blogs on a regular basis. Your humoristic style is awesome, keep doing what you're doing! Site: How To Lock Files When Nobody Else Will
ReplyDeleteWhen it all works as we have come to expect, we are as happy as can be. However, when all does not continue to go as smoothly as we have become accustomed to, the frustration is enormous. reset windows 10 password
ReplyDelete