ssm框架用户登录,就显示登录者的信息的代码
时间: 2023-11-22 13:55:57 浏览: 39
首先,前端页面需要一个登录表单,其中需要输入用户名和密码。用户提交表单后,需要将用户名和密码发送到后端进行验证。
在后端,我们需要定义一个登录的控制器,该控制器接收用户名和密码,然后进行验证。如果验证通过,我们需要将用户信息存储到Session中,以便后续操作使用。
下面是一个简单的示例代码:
前端页面:
```html
<form action="/login" method="post">
<label>用户名:</label>
<input type="text" name="username" />
<br />
<label>密码:</label>
<input type="password" name="password" />
<br />
<input type="submit" value="登录" />
</form>
```
后端控制器:
```java
@Controller
public class LoginController {
@Autowired
private UserService userService;
@RequestMapping(value = "/login", method = RequestMethod.POST)
public String login(HttpServletRequest request, String username, String password) {
User user = userService.login(username, password);
if (user != null) {
// 将用户信息存储到Session中
request.getSession().setAttribute("user", user);
return "redirect:/user/info";
} else {
return "redirect:/login";
}
}
}
```
在上面的代码中,我们通过@Autowired注解来注入UserService对象,然后在login方法中调用UserService的login方法进行验证。如果验证通过,将用户信息存储到Session中,并重定向到用户信息页面;否则重定向到登录页面。
在用户信息页面中,我们可以从Session中获取用户信息,然后显示在页面上。示例代码如下:
```java
@Controller
@RequestMapping("/user")
public class UserController {
@RequestMapping("/info")
public String userInfo(HttpServletRequest request, Model model) {
// 从Session中获取用户信息
User user = (User) request.getSession().getAttribute("user");
if (user != null) {
model.addAttribute("user", user);
return "user_info";
} else {
return "redirect:/login";
}
}
}
```
在上面的代码中,我们通过HttpServletRequest对象获取Session中的用户信息,并将其存储到Model中,然后返回用户信息页面。如果Session中没有用户信息,则重定向到登录页面。
最后,我们需要在用户信息页面中显示用户信息,示例代码如下:
```html
<h1>用户信息</h1>
<p>用户名:${user.username}</p>
<p>姓名:${user.name}</p>
<p>邮箱:${user.email}</p>
```
在上面的代码中,我们使用EL表达式来显示用户信息。通过${user.username}可以获取用户的用户名,${user.name}可以获取用户的姓名,${user.email}可以获取用户的邮箱。