Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Spring3.0进行用户身份验证_Spring_Spring Mvc - Fatal编程技术网

使用Spring3.0进行用户身份验证

使用Spring3.0进行用户身份验证,spring,spring-mvc,Spring,Spring Mvc,我试着在谷歌上搜索,但是我找不到任何好的例子,其中用户名和密码是通过数据库进行验证的 更简单地说,我如何使用Spring和Hibernate而不是Spring SECURITY创建一个简单的登录表单,其中凭据是通过数据库检查的 请帮助我创建一个只有Spring3.0而没有SpringSecurity3.0的简单登录表单。谢谢。您的解决方案有两部分,一部分涉及Spring,另一部分是您的代码: // DAO returns null if no such username appears in t

我试着在谷歌上搜索,但是我找不到任何好的例子,其中用户名和密码是通过数据库进行验证的

更简单地说,我如何使用Spring和Hibernate而不是Spring SECURITY创建一个简单的登录表单,其中凭据是通过数据库检查的


请帮助我创建一个只有Spring3.0而没有SpringSecurity3.0的简单登录表单。谢谢。

您的解决方案有两部分,一部分涉及Spring,另一部分是您的代码:

// DAO returns null if no such username appears in the table.
String password = userDao.findPassword(username);
boolean isValidUser = (!password.equals(null));
// Write the code to implement behavior for valid and invalid users.
如果可以为密码选择数据库,则可以在不使用Spring安全性的情况下执行Spring身份验证

您可能需要将该逻辑放在方法调用之前编织的方面中


您可能希望在会话中缓存该结果,并在超过超时时使其无效。

向以用户名和密码为参数的Spring控制器发送登录表单的最简单方法

在控制器中,您可以执行任何需要验证用户名和密码的操作。最好是委托给负责它的服务层

如果成功地进行了身份验证,那么您想做什么?可能会重定向到主页

现在,主页呈现应该知道用户已经通过身份验证。这就是spring安全性的帮助所在

但您也可以通过编写一个Servlet过滤器来实现,在该过滤器中,您可以通过检查http会话来检查用户是否已经过身份验证。当然,在成功登录后,您需要将其存储在会话中,然后只有它可用于过滤器


有许多其他方法可以实现同样的效果,这取决于您的需求,比如需要什么样的安全控制。

有人能举一个简单的例子,让我看看流程是如何进行的吗?