springmvc登录注册
时间: 2023-10-03 10:03:24 浏览: 63
好的,下面是一个简单的SpringMVC登录注册示例:
首先,创建一个Maven项目,添加以下依赖:
```xml
<dependencies>
<!-- Spring MVC -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.3.5</version>
</dependency>
<!-- Spring JDBC -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>5.3.5</version>
</dependency>
<!-- MySQL JDBC driver -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.23</version>
</dependency>
</dependencies>
```
接下来,创建一个数据表,用于存储用户的账号和密码:
```sql
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(50) NOT NULL,
`password` varchar(50) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
```
然后,创建一个User类,用于封装用户信息:
```java
public class User {
private int id;
private String username;
private String password;
// 省略 getter 和 setter 方法
}
```
接下来,创建一个UserService类,用于处理用户登录和注册的业务逻辑:
```java
@Service
public class UserService {
@Autowired
private JdbcTemplate jdbcTemplate;
public boolean login(String username, String password) {
String sql = "SELECT COUNT(*) FROM user WHERE username = ? AND password = ?";
int count = jdbcTemplate.queryForObject(sql, Integer.class, username, password);
return count > 0;
}
public boolean register(String username, String password) {
String sql = "INSERT INTO user(username, password) VALUES (?, ?)";
int result = jdbcTemplate.update(sql, username, password);
return result > 0;
}
}
```
最后,创建一个UserController类,用于处理登录和注册的请求:
```java
@Controller
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/login")
public String login() {
return "login";
}
@PostMapping("/login")
public String login(String username, String password, Model model) {
if (userService.login(username, password)) {
return "redirect:/index";
} else {
model.addAttribute("error", "用户名或密码错误");
return "login";
}
}
@GetMapping("/register")
public String register() {
return "register";
}
@PostMapping("/register")
public String register(String username, String password, Model model) {
if (userService.register(username, password)) {
return "redirect:/login";
} else {
model.addAttribute("error", "注册失败");
return "register";
}
}
}
```
在上面的代码中,`@GetMapping`和`@PostMapping`用于处理GET和POST请求,`@Autowired`用于自动注入`UserService`实例,`Model`用于传递数据给视图。
最后,创建login.jsp和register.jsp页面,用于显示登录和注册界面。
这样,一个简单的SpringMVC登录注册示例就完成了。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)