从我的角度来看,这里没有 spring-security 的具体细节:
1)在视图中创建表单
<form:form method="post" action="/password/change" modelAttribute="changePasswordForm">
<form:label path="password">
New password:
</form:label>
<form:password path="password" />
<input type="submit" value="Change password" />
</form:form>
2) 创建类以将用户的值从表单绑定到 java 对象
public class ChangePasswordForm {
private String password;
public void setPassword(String password)
this.password = password;
}
public String getPassword() {
return password;
}
}
3) 创建控制器
@Controller
public ChangePasswordController {
@RequestMapping(value = "/password/change", method = RequestMethod.POST)
public String changePassword(ChangePasswordForm form) {
// change user password
return "return:/user/info";
}
}
我没有测试过这段代码,但它应该以这种方式工作。
如何更新数据库中的密码取决于您的应用程序和使用的库。