Я создал простую систему входа SpringMVC, которая работает нормально, но я хочу ограничить страницы, чтобы они могли видеть только пользователи с действительным именем входа.Если бы я использовал только JSP, я бы проверил ...
if ( login.equals("admin") && password.equals("guess") ) {
// Valid login
session.setAttribute("authorized", "yes");
} else {
// Invalid login
session.setAttribute("authorized", "no");
}
Но как мне глобально установить в моем приложении в SpringMVC, если сеанс может получить доступ к набору сервлетов?Я могу установить сеанс в порядке, но в SpringMVC должна ли моя обработка сеанса выполняться на контроллере или в servlet-context.xml (или даже в web.xml), чтобы я мог проверить просто сказать «если пользователь вошел в систему, показать эту страницув противном случае домашняя страница ".
Мой login.jsp очень прост ...
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page session="true" %>
<html>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<head>
<title>Login</title>
</head>
<body>
<h1>
Hello please login to this application
</h1>
<script>
function login(){
var username = $("#username").val();
var password = $("#password").val();
$.post('login', { username : username , password : password }, function(data) {
$('#results').html(data).hide().slideDown('slow');
} );
}
</script>
Username : <input id="username" type="text" />
Password : <input id="password" type="password" />
<input name="send" type="submit" value="Click me" onclick="login()" />
<form name="next" action="auth/details" method="get">
<input name="send" type="submit" value="Go Through"/>
</form>
<div id="results" />
</body>
</html>
Я только хочу, чтобы контроллер при авторизации / подробностях возвращал детали там, если пользователь вошел в системуКакой лучший подход к этому?Cookies / сеанс и т. Д.?
Спасибо,
Дэвид