Я использую Spring Security в своем проекте. Фреймворк не имеет API для создания или регистрации пользователей, как вы просили. Чтобы Spring Security был универсальным и пригодным для использования в нескольких средах, вам понадобится лишь так много времени, прежде чем вам придется писать собственный код. Вы не можете получить более конкретный ответ о платформе или инструменте, чтобы использовать, потому что в этот момент вы просто будете использовать каркасы, которые вы уже используете в любом случае.
Если вы настроили его для использования пользователей и ролей в вашей базе данных, из уровня доступа к данным вы создадите запись в таблице пользователей или обновите пароль (желательно, сохраненный в виде хеша) в этой записи. И, как сказал Аравинд, Spring предоставляет поддержку по электронной почте .
Если вы действительно хотите увидеть один способ сделать это: я использую Spring MVC, JSP и Hibernate. Я использую теги формы Spring в JSP, чтобы связать новую пользовательскую форму с объектом Person, и мой метод контроллера передает этот объект Person моему Dao, чтобы сохранить его.
Подпись метода контроллера выглядит следующим образом ...
@RequestMapping(value = "/newUser", method = RequestMethod.POST)
public ModelAndView createNewUser(final @Valid @ModelAttribute Person user,
final BindingResult result,
final SessionStatus status,
final @RequestParam(value = "unencodedPassword", required = true) String password) {
...
user.getRoles().add(new Role(user, Role.APPLICATION_ROLE.ROLE_USER));
userDao.createNewUser(user);
...
}
и мой PersonDao будет использовать Hibernate для сохранения пользователя, как это
@Transactional
public void createNewUser(Person user)
{
Session session = sessionFactory.getCurrentSession();
session.save(user);
session.flush();
}