ssm实现注册登录代码
时间: 2023-10-22 19:23:42 浏览: 57
以下是一个简单的基于SSM框架的注册登录示例代码:
1. 数据库表设计
```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 AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
```
2. 编写实体类
```java
public class User {
private int id;
private String username;
private String password;
// getter/setter方法省略
}
```
3. 编写DAO层
```java
public interface UserDao {
void addUser(User user);
User getUserByUsername(String username);
}
```
```java
@Repository
public class UserDaoImpl implements UserDao {
@Autowired
private SqlSessionTemplate sqlSessionTemplate;
@Override
public void addUser(User user) {
sqlSessionTemplate.insert("user.addUser", user);
}
@Override
public User getUserByUsername(String username) {
return sqlSessionTemplate.selectOne("user.getUserByUsername", username);
}
}
```
4. 编写Service层
```java
public interface UserService {
void register(User user);
User login(String username, String password);
}
```
```java
@Service
@Transactional
public class UserServiceImpl implements UserService {
@Autowired
private UserDao userDao;
@Override
public void register(User user) {
userDao.addUser(user);
}
@Override
public User login(String username, String password) {
User user = userDao.getUserByUsername(username);
if (user != null && user.getPassword().equals(password)) {
return user;
}
return null;
}
}
```
5. 编写Controller层
```java
@Controller
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("/register")
public String register(User user, Model model) {
userService.register(user);
model.addAttribute("message", "注册成功,请登录!");
return "login";
}
@RequestMapping("/login")
public String login(String username, String password, Model model) {
User user = userService.login(username, password);
if (user != null) {
model.addAttribute("message", "登录成功!");
return "success";
} else {
model.addAttribute("message", "用户名或密码错误,请重新输入!");
return "login";
}
}
}
```
6. 编写前端页面
注册页面(register.jsp):
```html
<form action="${pageContext.request.contextPath}/user/register" method="post">
<p>
用户名:<input type="text" name="username" required>
</p>
<p>
密码:<input type="password" name="password" required>
</p>
<p>
<input type="submit" value="注册">
</p>
</form>
```
登录页面(login.jsp):
```html
<form action="${pageContext.request.contextPath}/user/login" method="post">
<p>
用户名:<input type="text" name="username" required>
</p>
<p>
密码:<input type="password" name="password" required>
</p>
<p>
<input type="submit" value="登录">
</p>
</form>
```
成功页面(success.jsp):
```html
<p>${message}</p>
```
以上代码仅供参考,具体实现还需要根据具体的项目需求进行调整。