springboot登陆界面
时间: 2023-09-14 11:12:58 浏览: 139
对于Spring Boot的登录界面,你可以使用Spring Security来实现。下面是一个简单的示例代码:
首先,在pom.xml文件中添加Spring Security的依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
```
然后,创建一个登录页面的HTML模板(例如login.html),并放置在src/main/resources/templates目录下:
```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Login</title>
</head>
<body>
<h1>Login</h1>
<form action="/login" method="post">
<div>
<label for="username">Username:</label>
<input type="text" id="username" name="username">
</div>
<div>
<label for="password">Password:</label>
<input type="password" id="password" name="password">
</div>
<div>
<button type="submit">Login</button>
</div>
</form>
</body>
</html>
```
接下来,在Spring Boot应用程序的配置类(如Application.java)上添加@EnableWebSecurity注解,并实现一个WebSecurityConfigurerAdapter:
```java
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/login")
.permitAll()
.anyRequest()
.authenticated()
.and()
.formLogin()
.loginPage("/login")
.defaultSuccessUrl("/home")
.permitAll()
.and()
.logout()
.permitAll();
}
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
auth
.inMemoryAuthentication()
.withUser("user")
.password("{noop}password") // 添加 {noop} 前缀表示密码不加密,仅用于示例
.roles("USER");
}
}
```
在这个示例中,配置类中的configure方法定义了访问权限和登录页面的路径。configureGlobal方法定义了一个简单的用户认证。
最后,在控制器中添加处理登录请求的方法:
```java
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class LoginController {
@GetMapping("/login")
public String login() {
return "login";
}
}
```
这样就完成了一个简单的Spring Boot登录界面的实现。用户访问"/login"路径时会显示login.html页面,输入用户名和密码后可以登录。
阅读全文