@Override public void saveUserInfo(User user, UserAccount account) { log.info("保存的用户信息:"+ JSONObject.toJSONString(user)); if (userInfoMapper.insert(user) > 0) { userAccountMapper.insert(account);//保存用户密码 log.info("保存用户信息成功"); } else { log.error("保存用户信息失败"); } }
时间: 2024-03-29 15:34:30 浏览: 14
这段代码是用 Java 语言编写的,它的功能是保存用户信息和账户信息到数据库中。首先,这个方法接受两个参数,一个是用户信息对象,一个是用户账户信息对象。然后,它使用日志记录保存的用户信息。接着,它通过 userInfoMapper.insert() 方法将用户信息插入到数据库中。如果插入成功,那么就使用 userAccountMapper.insert() 方法将用户密码插入到数据库中,并使用日志记录保存用户信息成功。如果插入失败,那么就使用日志记录保存用户信息失败。
相关问题
@Override public void sureUpPassword(String userAccount, String userPassword) { String sql = update person set userPassword = +userPassword+ where userAccount= +userAccount+ ;
这段代码存在 SQL 注入漏洞,应该使用 PreparedStatement 来避免。正确的代码应该是:
```
@Override
public void sureUpPassword(String userAccount, String userPassword) {
String sql = "UPDATE person SET userPassword = ? WHERE userAccount = ?";
try (Connection conn = DriverManager.getConnection(url, username, password);
PreparedStatement ps = conn.prepareStatement(sql)) {
ps.setString(1, userPassword);
ps.setString(2, userAccount);
ps.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
}
```
这样可以防止用户恶意输入特殊字符导致 SQL 注入攻击。
@Service public class UserServiceImpl implements UserService { @Autowired private UserMapper userMapper; @Override public PageInfo<User> getUserList(int pageNum, int pageSize) { PageHelper.startPage(pageNum, pageSize); List<User> userList = userMapper.getUserList((pageNum - 1) * pageSize, pageSize); return new PageInfo<>(userList); } @Override public User getUserById(int id) { return userMapper.getUserById(id); } @Override public void addUser(User user) { userMapper.addUser(user); } @Override public void updateUser(User user) { userMapper.updateUser(user); } @Override public void deleteUser(int id) { userMapper.deleteUser(id); } }根据这段代码把Contorller层补全
根据上述代码,下面是一个简单的Controller层的补全示例:
```java
@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
// 分页查询用户列表
@GetMapping("/list")
public PageInfo<User> getUserList(@RequestParam("pageNum") int pageNum, @RequestParam("pageSize") int pageSize) {
return userService.getUserList(pageNum, pageSize);
}
// 根据id查询用户
@GetMapping("/{id}")
public User getUserById(@PathVariable("id") int id) {
return userService.getUserById(id);
}
// 添加用户
@PostMapping("/add")
public String addUser(@RequestBody User user) {
userService.addUser(user);
return "User added successfully";
}
// 更新用户
@PutMapping("/update")
public String updateUser(@RequestBody User user) {
userService.updateUser(user);
return "User updated successfully";
}
// 删除用户
@DeleteMapping("/{id}")
public String deleteUser(@PathVariable("id") int id) {
userService.deleteUser(id);
return "User deleted successfully";
}
}
```
在这个示例中,我们使用@RestController注解将UserController类标记为Spring MVC的控制器,并使用@RequestMapping注解指定了基础的URL路径为"/user"。每个方法使用不同的HTTP方法和路径来处理不同的请求。
请注意,这只是一个简单的示例,您可以根据实际需求进行修改和扩展。